Android绘图机制(一)
2016-06-29 22:38
381 查看
1.系统提供了Canvas对象来提供绘图方法,里面有各种绘制图像的API,如drawPoint(点)、drawLine(线)、drawRect(矩形)、drawArc(弧)、drawCircle(圆)。Paint作为画笔,提供了多样的方法设置画笔的属性。
Paint paint = new Paint(); paint.setAntiAlias(true); //是否设置画笔的锯齿效果 paint.setColor(Color.GREEN); // 设置画笔的颜色 paint.setARGB(Color.BLACK, Color.RED, Color.GREEN, Color.BLUE); //设置画笔的ARGB值 paint.setAlpha(Color.CYAN); // 设置画笔的alpha值 paint.setTextSize(12); // 设置字体的大小 paint.setStyle(Paint.Style.FILL);// 设置画笔的风格(空心或者是实心) paint.setStrokeWidth(2);// 设置空心边框的宽度
paint.style.fill与paint.style.stroke的区别:
绘制点:
canvas.draw(x,y,paint) // 圆心坐标,以及paint
绘制线:
canvas.drawLine(startX,startY,endX,endY,paint); // 起点坐标,终点坐标,paint
绘制连续的线段:
float[]pts={startX1,startY1,endX1,endY1, startX2,startY2,endX2,endY2, .... startXn,startYn,endXn,endYn,} float[] pts={1,2,3,4, 4,5,6,7, 8,9,10,11}; canvas.drawLines(pts,paint);
绘制矩形:
canvas.drawRect(left,top,right,bottom,paint);//距离父布局的左上右下的距离,paint
绘制圆角矩形:
canvas.drawRoundRect(left,top,right,bottom,radiusX,radiusY,paint)
// 距离父布局的左上右下的距离,椭圆的坐标,paint
绘制圆:
canvas.drawCircle(circleX,circleY,radius,paint)//圆心坐标,半径,paint
绘制弧形:
canvas.drawArc(left, top, right, bottom, startAngle,
sweepAngle, useCenter, paint)//圆弧的左上右下,圆弧的起始角度,圆弧的角度,paint。其中useCenter的意思:useCenter If true, include the center of the oval in the arc, and close it if it is being stroked. This will draw a wedge(是否将圆弧进行封闭)
Paint.Style.STROKE+useCenter(true);//空心封闭的圆弧
Paint.Style.STROKE+useCenter(false);//空心不封闭的圆弧
Paint.Style.FILL+useCenter(true);//实心封闭的圆弧
Paint.Style.FILL+useCenter(false);//实心不封闭的圆弧
绘制文本:
canvas.drawText(text,startX,startY,paint)// 文本,文字的起点坐标,paint
在指定的位置绘制文本
canvas.drawPosText(text,new float[] {x1,y1,x2,y2…xn,yn},paint)//文本,文字的坐标,paint
绘制路径:
Path path = new Path(); path.moveTo(20,20);//坐标 path.lineTo(200, 200);//坐标 path.lineTo(300, 20);//坐标 canvas.drawPath(path, paint); canvas.drawPath(path,paint)
相关文章推荐
- HTML5调用摄像头实例
- Canvas 在高清屏下绘制图片变模糊的解决方法
- VB实现鼠标绘图实例代码
- Windows窗体的.Net框架绘图技术实现方法
- 使用canvas实现仿新浪微博头像截取上传功能
- js+HTML5实现canvas多种颜色渐变效果的方法
- javascript+HTML5的Canvas实现Lab单车动画效果
- js+canvas绘制矩形的方法
- JavaScript+html5 canvas制作的百花齐放效果完整实例
- jQuery+canvas实现的球体平抛及颜色动态变换效果
- php绘图中显示不出图片的原因及解决
- html5 canvas js(数字时钟)实例代码
- JavaScript+canvas实现七色板效果实例
- javascript+canvas制作九宫格小程序
- 通过javascript把图片转化为字符画
- php绘图之生成饼状图的方法
- php绘图之加载外部图片的方法
- php绘图之在图片上写中文和英文的方法
- js+html5通过canvas指定开始和结束点绘制线条的方法