当前位置: 首页 > news >正文

搭建公司网站多少钱品牌网首页

搭建公司网站多少钱,品牌网首页,北京建设工程信息网站,简单干净的网站1、引言 你是否还在因为不懂UI设计而不得不去借用别人的图片#xff0c;甚至使用各种网图作为界面布局的一部分#xff0c;那么今天就教你使用Bitmap对象去绘制自定义图形#xff0c;并保存为png格式的图片#xff0c;须知图片编辑软件本就是程序员开发出来的#xff0c;我…1、引言 你是否还在因为不懂UI设计而不得不去借用别人的图片甚至使用各种网图作为界面布局的一部分那么今天就教你使用Bitmap对象去绘制自定义图形并保存为png格式的图片须知图片编辑软件本就是程序员开发出来的我们又何必舍近求远呢用代码生成岂不是更爽 2、实现步骤 2.1、Bitmap对象创建 使用下面的方法创建Bitmp对象第一个参数代表创建的位图宽度第二个是位图高度宽度和高度的单位都是像素第三个是设置为支持透明背景这里要注意高度和宽度必须大于0后面索引也是从零开始。 Bitmap customBitmap Bitmap//通过控制每一个像素点生成bitmap对象可以用这种方式生成图片.createBitmap(501, 501, Bitmap.Config.ARGB_8888);//按像素设置 2.2、形状绘制 这里我以绘制透明背景圆形图片为例并提供两种方法第一种方法不适合绘制圆形但可以用来绘制多边形。由于是绘制圆形需要使用函数计算位置我这里提供了用于计算圆的坐标的函数。 2.1.1、圆的标准方程函数 这个函数借助圆的标准方程计算圆的坐标。 /*** 已知圆的半径圆心坐标x坐标求圆的y坐标* param r 圆的半径* param rx 圆心x坐标* param ry 圆心y坐标* param x 圆的某个位置的x坐标或y坐标默认是根据x坐标求y坐标如果需要根据y坐标求x坐标* 那么互换rx和ry位置传入y坐标返回的结果就是x坐标*/public static double[] circle(double r,double rx,double ry,double x){double[] result;//因为是标准方程且一定有解所以传入的第一个参数始终为1double b-2*ry;double cry*ryx*x-2*rx*xrx*rx-r*r;resultquadratic_equation_one(1,b,c);return result;} 2.1.2、一元二次方程函数 圆的计算过程中要用到一元二次方程所以这里提供计算一元二次方程的方法。 /*** 一元二次方程求解* param a 二次项系数* param b 一次项系数* param c 常数* return 计算结果返回数组*/public static double[] quadratic_equation_one(double a,double b,double c){double[] resultnull;//3、小于0有两个复根一般不考虑这种情况但为了完整都写好//三种情况double datab*b-4*a*c;if (data0){//1、大于0有两个实根resultnew double[2];result[0](-bMath.sqrt(data))/(2*a);result[1](-b-Math.sqrt(data))/(2*a);}else if (data0){//2、等于0有一个实根resultnew double[1];result[0](-b)/(2*a);}return result;} 3、绘制方法 3.1、方法一直接绘制 //方法一直接绘制圆部分区域会被错过int i,j;for (i 0; i 500; i) {//判断在圆的范围内才绘制for (j 0; j 250; j) {resultUiMath.circle(250-j,250,250,i-j);if (result!null){if (result.length1){//传入的x和y值必须大于0customBitmap.setPixel(i-j, (int) result[0],Color.parseColor(#ff0000));customBitmap.setPixel((int) result[0],i-j,Color.parseColor(#ff0000));}else if (result.length2){customBitmap.setPixel(i-j, (int) result[0],Color.parseColor(#ff0000));customBitmap.setPixel(i-j, (int) result[1],Color.parseColor(#ff0000));customBitmap.setPixel((int) result[0],i-j,Color.parseColor(#ff0000));customBitmap.setPixel((int) result[1],i-j,Color.parseColor(#ff0000));}}}} 3.2、方法二反向绘制 先把需要绘制的区域全部填充颜色然后的圆形以外的区域设置为透明色。 //方法二反向绘制 //1、先绘制背景色 for (i 0; i 500; i) {//判断在圆的范围内才绘制for (j 0; j 500; j) {customBitmap.setPixel(i,j,Color.parseColor(#ff0000));} } //2、去除多余区域 for (i 0; i 500; i) {resultUiMath.circle(250,250,250,i);if (result!null){if (result.length1){//传入的x和y值必须大于0for (j 0; j 500; j) {if (jresult[0] || jresult[0]){customBitmap.setPixel(i, j,Color.parseColor(#00000000));}}}else if (result.length2){for (j 0; j 500; j) {if (jresult[1] || jresult[0]){customBitmap.setPixel(i, j,Color.parseColor(#00000000));}}}} } 4、保存图片 调用下面这个方法保存图片如果保存为jpg格式是没有透明效果的。 /*** 保存bitmap为图片*/private void saveBitmap(Bitmap bitmap) {new Thread(){Overridepublic void run() {File filenew File(getExternalFilesDir(null),now.png);try {FileOutputStream fosnew FileOutputStream(file);bitmap.compress(Bitmap.CompressFormat.PNG,90,fos);fos.flush();fos.close();runOnUiThread(new Runnable() {Overridepublic void run() {Toast.makeText(CreateBitmapActivity.this,保存完成,Toast.LENGTH_SHORT).show();}});} catch (Exception e) {throw new RuntimeException(e);}}}.start();} 5、效果演示 5.1、方法一效果演示 5.2、方法二效果演示
http://www.dnsts.com.cn/news/17527.html

相关文章:

  • 嘉兴备案网站建设东莞手机网站制作
  • 网站建设营销型网站概念网站页面设计好了后台如何添加
  • 杂谈发现一只网站是你们谁做的赣州网站建设平台
  • 做网站的框架有在线crm系统是啥
  • 怎么做自己的网站主页创建了网站
  • 昆明网站设计都需要设计什么石家庄网站制作招聘
  • 金华app网站开发动画设计专业就业前景怎么样
  • 外贸网站运营工作内容html做网页
  • 广元网站建设如何新建一个网站
  • 建立网站的要素移动端网站如何做导出功能吗
  • 网站建设合同管辖地百度竞价包年推广公司
  • 做平面设计在什么网站能挣钱邵武网站建设wzjseo
  • 单位网站建设的报告海淀教育互动平台网站建设
  • 国产做性直播视频网站ug wordpress
  • 网站制作公司前景软件最全的网站
  • 深圳网站 商城制作网页设计与制作考试试题及答案06386
  • 汕头网站建设托管wordpress主题 表白
  • 公园网站建设深圳宝安建设工程交易中心
  • 企业网站源码asp济宁网站建设 田振
  • 有没有做网站兼职淄博手机网站
  • 网站备案 接入商sem和seo的关系
  • 网站关键词设定江门加盟网站建设
  • 做网站公司郑州郑州的网站建设公司排名单页网站seo如何优化
  • 软件开发工具包英文seo评测论坛
  • 成都网站建设公司创新互联开阳县城乡建设局网站
  • 做公众号app网站app吗阿里云建站的优缺点
  • 网站运营这么做小程序链接网站自己做
  • 无法解析您网站的域名frp可以做网站吗
  • 莆田网站建设优化网页制作试题及答案
  • php做网站导购模板重庆网领网站建设公司