关闭

Paint和canvas的用法

标签: androidpaintcanvas
186人阅读 评论(0) 收藏 举报
分类:

1.图形绘制

      setARGB(int a ,int r,int g,int b);//参数含义:a代表透明度,r,g,b代表颜色值
      setAlpha(int a);//参数含义:a代表绘制图形的透明度 
      setColor(int color);//参数含义:color:设置绘制的颜色,使用颜色值来表示,该颜色值包括透明度和RGB颜色     
      setAntiAlias(boolean b)//设置是否使用抗锯齿功能,会消耗较大资源,绘制图形速度会变慢。   
      setDither(boolean dither)//设置是否使用图像抖动处理,会使绘制出来的图片颜色更加平滑和饱满,图像更加清晰
      setFilterBitmap(boolean filter)//如果该项设置为true,则图像在动画进行中,会滤掉对Bitmap图像的优化操作,加快显示速度,本设置项依赖于dither和xfermode的设置
      setMaskFilter(MaskFilter maskfilter)//设置MaskFilter,可以用不同的MaskFilter实现滤镜的效果,如滤化,立体等
      setColorFilter(ColorFilter colorfilter)//设置颜色过滤器,可以在绘制颜色时实现不同颜色的变化效果
      setPathEffect(PathEffect effect)//设置绘制路径的效果,如点画线等
      setShader(Shader shader)//设置图像效果,使用Shader可以绘制出各种渐变效果
      setShadowLayer(float radius , float dx,float dy,int color)//在图形下面设置阴影层,产生阴影效果,radius为阴影的角度,dx 和 dy为阴影在x轴和y轴上的距离,color为阴影的颜色
      setStyle(Paint.Style style)//设置画笔的样式,为FILT , FILT_OR_STROKE 或 STROKE  Style.FILL: 填充 STORKE:描边 FILL_OR_STORE:描边并填充
      setStrokeCap(Paint.Cap cap)//当画笔样式为STROKE或FILL_OR_STROKE时,设置笔刷的图形样式,如Cap.ROUND圆形样式,或Cap.SQUARE方形样式  该方法用来设置我们画笔的 笔触风格 ,比如:ROUND,表示是圆角的笔触。那么什么叫笔触呢,其实很简单,就像我们现实世界中的笔,如果你用圆珠笔在纸上戳一点,那么这个点一定是个圆,即便很小,它代表了笔的笔触形状,如果我们把一支铅笔笔尖削成方形的,那么画出来的线条会是一条弯曲的“矩形”,这就是笔触的意思。除了ROUND,Paint.Cap还提供了另外两种类型:  SQUARE和BUTT 元     
      setStrokeJoin(Paint.Join join)//设置绘制时个图形的结合方式,如平滑效果等,MITER为锐角,ROUND为圆弧,BEVEL结合处为直线
      setStrokeWidth(float width)//当画笔样式为STROKE或FILL_OR_STROKE时,设置笔刷的粗细度
      setXfermode(Xfermode xfermode)//设置图形重叠时的处理方式,如合并,取交集或并集,经常用来制作橡皮擦出效果

2.文本绘制 

   setFakeBoldText(boolean fakeBoldText)//模拟实现粗体文字,设置在小字体上效果非常差
   setSubpixelText(boolean subpixelText)//设置该项为true,将有助于文本在LCD屏幕上的显示效果
   setTextAlign(Paint.Align align)//设置绘制文字的对齐方向
   setTextScaleX(float scaleX)//设置绘制文字x轴的缩放比例,可以实现文字的拉伸效果
   setTextSize(float textSize)//设置绘制文字的字号大小
   setTextSkewX(float skewX)//设置斜体文字,skewX为倾斜弧度    
   setTypeface(Typeface typeface)//设置Typeface对象,即字体风格,包括粗体,斜体以及衬线体,非衬线体等
   setUnderlineText(boolean underlineText)//设置带有下划线的文字效果
   setStrikeThruText(boolean strikeThruText)//设置带有删除线的效果 //        
   //设置结合处的样式,MITER为锐角,ROUND为圆弧,BEVEL为直线 //         
   paint.setStrokeJoin(Join.ROUND);           
   /**ROUND         
    * The stroke projects out as a square, with the center at the end          
    * of the path.          
    */            
    //它的英文解释如上我们要明白他是在path的终点进行设置     
    paint.setStrokeCap(Cap. ROUND); 

   3.几个不容易理解的方法的讲解 
   (1).setStrokeCap//它是在路径的末尾进行处理的 
<span><span>   (2)</span></span><span> setStrokeJoin(Paint.Join join)</span><span>此方法是设置绘制时的结合方式</span>


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:45146次
    • 积分:1567
    • 等级:
    • 排名:千里之外
    • 原创:112篇
    • 转载:36篇
    • 译文:0篇
    • 评论:0条