Canvas 和和 Paint 实例实例

有关细致的完成我们今天主要说下Android的Canvas和Paint对象的运用实例。

Canvas类主要完成了屏幕的绘制过程,其中包含了很多适用的办法,比方绘制一条途径、区域、贴图、画点、画线、渲染文本,下面是Canvas类常用的办法,当然Android开发网提示大家很多办法有不同的重载版本,参数更灵敏。
voiddrawRect(RectFrect,Paintpaint)//绘制区域,参数一为RectF一个区域voiddrawPath(Pathpath,Paintpaint)//绘制一个途径,参数一为Path途径对象voiddrawBitmap(Bitmapbitmap,Rectsrc,Rectdst,Paintpaint)//贴图,参数一就是我们常规的Bitmap对象,参数二是源区域(Android123提示这里是bitmap),参数三是目的区域(应该在canvas的位置和大小),参数四是Paint画刷对象,由于用到了缩放和拉伸的可能,当原始Rect不等于目的Rect时性能将会有大幅损失voiddrawLine(floatstartX,floatstartY,floatstopX,floatstopY,Paintpaint)//画线,参数一同始点的x轴位置,参数二起始点的y轴位置,参数三终点的x轴程度位置,参数四y轴垂直位置,最后一个参数为Paint画刷对象。
voiddrawPoint(floatx,floaty,Paintpaint)//画点,参数一程度x轴,参数二垂直y轴,第三个参数为Paint对象。
voiddrawText(Stringtext,floatx,floaty,Paintpaint)//渲染文本,Canvas类除了上面的还能够描画文字,参数一是String类型的文本,参数二x轴,参数三y轴,参数四是Paint对象。
voiddrawTextOnPath(Stringtext,Pathpath,floathOffset,floatvOffset,Paintpaint)//在途径上绘制文本,相关于上面第二个参数是Path途径对象从上面来看我们能够看出Canvas绘制类比拟简单同时很灵敏,完成普通的

Canvas 和和 Paint 实例实例


办法通常没有问题,同时能够叠加的处置设计出一些效果,不过仔细的网友可能发现最后一个参数均为Paint对象。假如我们把Canvas当做绘画师来看,那么Paint就是我们绘画的工具,比方画笔、画刷、颜料等等。Paint类常用办法:
voidsetARGB(inta,intr,intg,intb)设置Paint对象颜色,参数一为alpha透明通道
voidsetAlpha(inta)设置alpha不透明度,范围为0~255
voidsetAntiAlias(booleanaa)//能否抗锯齿
voidsetColor(intcolor)//设置颜色,
这里Android内部定义的有Color类包含了一些常见颜色定义
voidsetFakeBoldText(booleanfakeBoldText)//设置伪粗体文本
voidsetLinearText(booleanlinearText)//设置线性文本
PathEffectsetPathEffect(PathEffecteffect)//设置途径效果
RasterizersetRasterizer(Rasterizerrasterizer)//设置光栅化
ShadersetShader(Shadershader)//设置阴影
voidsetTextAlign(Paint.Alignalign)//设置文本对齐
voidsetTextScaleX(floatscaleX)//设置文本缩放倍数,1.0f为原始
voidsetTextSize(floattextSize)//设置字体大小
TypefacesetTypeface(Typefacetypeface)//设置字体,Typeface包含了字体的类型,粗细,还有倾斜、颜色等。
voidsetUnderlineText(booleanunderlineText)//设置下划线
最终Canvas和Paint在onDraw中直接运用
@Override
protectedvoidonDraw(Canvascanvas){
PaintpaintRed=newPaint();
paintRed.setColor(Color.Red);
canvas.drawPoint(11,3,paintRed);//在坐标11,3上画一个红点
}
下一次Android123将会详细讲到强大的Path途径,和字体Typeface相关的运用。

© 版权声明
好牛新坐标
版权声明:
1、IT大王遵守相关法律法规,由于本站资源全部来源于网络程序/投稿,故资源量太大无法一一准确核实资源侵权的真实性;
2、出于传递信息之目的,故IT大王可能会误刊发损害或影响您的合法权益,请您积极与我们联系处理(所有内容不代表本站观点与立场);
3、因时间、精力有限,我们无法一一核实每一条消息的真实性,但我们会在发布之前尽最大努力来核实这些信息;
4、无论出于何种目的要求本站删除内容,您均需要提供根据国家版权局发布的示范格式
《要求删除或断开链接侵权网络内容的通知》:https://itdw.cn/ziliao/sfgs.pdf,
国家知识产权局《要求删除或断开链接侵权网络内容的通知》填写说明: http://www.ncac.gov.cn/chinacopyright/contents/12227/342400.shtml
未按照国家知识产权局格式通知一律不予处理;请按照此通知格式填写发至本站的邮箱 wl6@163.com

相关文章