1. /**    
  2. * Paint类介绍

  3. *

  4. * Paint即画笔,在绘图过程中起到了极其重要的作用,画笔主要保存了颜色,

  5. * 样式等绘制信息,指定了如何绘制文本和图形,画笔对象有很多设置方法,

  6. * 大体上可以分为两类,一类与图形绘制相关,一类与文本绘制相关。

  7. *

  8. * 1.图形绘制

  9. * setARGB(int a,int r,int g,int b);

  10. * 设置绘制的颜色,a代表透明度,r,g,b代表颜色值。

  11. *

  12. * setAlpha(int a);

  13. * 设置绘制图形的透明度。

  14. *

  15. * setColor(int color);

  16. * 设置绘制的颜色,使用颜色值来表示,该颜色值包括透明度和RGB颜色。

  17. *

  18. * setAntiAlias(boolean aa);

  19. * 设置是否使用抗锯齿功能,会消耗较大资源,绘制图形速度会变慢。

  20. *

  21. * setDither(boolean dither);

  22. * 设定是否使用图像抖动处理,会使绘制出来的图片颜色更加平滑和饱满,图像更加清晰

  23. *

  24. * setFilterBitmap(boolean filter);

  25. * 如果该项设置为true,则图像在动画进行中会滤掉对Bitmap图像的优化操作,加快显示

  26. * 速度,本设置项依赖于dither和xfermode的设置

  27. *

  28. * setMaskFilter(MaskFilter maskfilter);

  29. * 设置MaskFilter,可以用不同的MaskFilter实现滤镜的效果,如滤化,立体等       *

  30. * setColorFilter(ColorFilter colorfilter);

  31. * 设置颜色过滤器,可以在绘制颜色时实现不用颜色的变换效果

  32. *

  33. * setPathEffect(PathEffect effect);

  34. * 设置绘制路径的效果,如点画线等

  35. *

  36. * setShader(Shader shader);

  37. * 设置图像效果,使用Shader可以绘制出各种渐变效果

  38. *

  39. * setShadowLayer(float radius ,float dx,float dy,int color);

  40. * 在图形下面设置阴影层,产生阴影效果,radius为阴影的角度,dx和dy为阴影在x轴和y轴上的距离,color为阴影的颜色

  41. *

  42. * setStyle(Paint.Style style);

  43. * 设置画笔的样式,为FILL,FILL_OR_STROKE,或STROKE

  44. *

  45. * setStrokeCap(Paint.Cap cap);

  46. * 当画笔样式为STROKE或FILL_OR_STROKE时,设置笔刷的图形样式,如圆形样式

  47. * Cap.ROUND,或方形样式Cap.SQUARE

  48. *

  49. * setSrokeJoin(Paint.Join join);

  50. * 设置绘制时各图形的结合方式,如平滑效果等

  51. *

  52. * setStrokeWidth(float width);

  53. * 当画笔样式为STROKE或FILL_OR_STROKE时,设置笔刷的粗细度

  54. *

  55. * setXfermode(Xfermode xfermode);

  56. * 设置图形重叠时的处理方式,如合并,取交集或并集,经常用来制作橡皮的擦除效果

  57.   AvoidXfermode avoid = new AvoidXfermode(Color.BLUE, 10, AvoidXfermode.Mode. AVOID);

  58. 1.PorterDuff.Mode.CLEAR

       所绘制不会提交到画布上。
    2.PorterDuff.Mode.SRC

       显示上层绘制图片
    3.PorterDuff.Mode.DST

      显示下层绘制图片
    4.PorterDuff.Mode.SRC_OVER

      正常绘制显示,上下层绘制叠盖。
    5.PorterDuff.Mode.DST_OVER

      上下层都显示。下层居上显示。
    6.PorterDuff.Mode.SRC_IN

       取两层绘制交集。显示上层。
    7.PorterDuff.Mode.DST_IN

      取两层绘制交集。显示下层。
    8.PorterDuff.Mode.SRC_OUT

    取上层绘制非交集部分。
    9.PorterDuff.Mode.DST_OUT

    取下层绘制非交集部分。
    10.PorterDuff.Mode.SRC_ATOP

    取下层非交集部分与上层交集部分
    11.PorterDuff.Mode.DST_ATOP

      取上层非交集部分与下层交集部分
    12.PorterDuff.Mode.XOR

      
    13.PorterDuff.Mode.DARKEN

    14.PorterDuff.Mode.LIGHTEN

    15.PorterDuff.Mode.MULTIPLY

    16.PorterDuff.Mode.SCREEN

  59. * 2.文本绘制

  60. * setFakeBoldText(boolean fakeBoldText);

  61. * 模拟实现粗体文字,设置在小字体上效果会非常差

  62. *

  63. * setSubpixelText(boolean subpixelText);

  64. * 设置该项为true,将有助于文本在LCD屏幕上的显示效果

  65. *

  66. * setTextAlign(Paint.Align align);

  67. * 设置绘制文字的对齐方向

  68. *

  69. * setTextScaleX(float scaleX);

  70. * 设置绘制文字x轴的缩放比例,可以实现文字的拉伸的效果

  71. *

  72. * setTextSize(float textSize);

  73. * 设置绘制文字的字号大小

  74. *

  75. * setTextSkewX(float skewX);

  76. * 设置斜体文字,skewX为倾斜弧度

  77. *

  78. * setTypeface(Typeface typeface);

  79. * 设置Typeface对象,即字体风格,包括粗体,斜体以及衬线体,非衬线体等

  80. *

  81. * setUnderlineText(boolean underlineText);

  82. * 设置带有下划线的文字效果

  83. *

  84. * setStrikeThruText(boolean strikeThruText);

  85. * 设置带有删除线的效果

  86. *

  87. */

android Paint 详解的更多相关文章

  1. Android Notification 详解(一)——基本操作

    Android Notification 详解(一)--基本操作 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Notification 文中如有纰 ...

  2. Android Notification 详解——基本操作

    Android Notification 详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 前几天项目中有用到 Android 通知相关的内容,索性把 Android Notificatio ...

  3. Android ActionBar详解

    Android ActionBar详解 分类: Android2014-04-30 15:23 1094人阅读 评论(0) 收藏 举报 androidActionBar   目录(?)[+]   第4 ...

  4. Android 签名详解

    Android 签名详解 AndroidOPhoneAnt设计模式Eclipse  在Android 系统中,所有安装 到 系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程 ...

  5. Android编译系统详解(一)

    ++++++++++++++++++++++++++++++++++++++++++ 本文系本站原创,欢迎转载! 转载请注明出处: http://blog.csdn.net/mr_raptor/art ...

  6. Android布局详解之一:FrameLayout

      原创文章,如有转载,请注明出处:http://blog.csdn.net/yihui823/article/details/6702273 FrameLayout是最简单的布局了.所有放在布局里的 ...

  7. 【整理修订】Android.mk详解

    Android.mk详解 1. Android.mk 的应用范围 Android.mk文件是GNU Makefile的一小部分,它用来对Android程序进行编译. 一个Android.mk文件可以编 ...

  8. Android菜单详解(四)——使用上下文菜单ContextMenu

    之前在<Android菜单详解(二)——创建并响应选项菜单>和<Android菜单详解(三)——SubMenu和IconMenu>中详细讲解了选项菜单,子菜单和图标菜单.今天接 ...

  9. Android签名详解(debug和release)

    Android签名详解(debug和release)   1. 为什么要签名 1) 发送者的身份认证 由于开发商可能通过使用相同的Package Name来混淆替换已经安装的程序,以此保证签名不同的包 ...

随机推荐

  1. sudo user1账号获得管理员root的权限

    user1虽然有sudo权限,但不是真正的root权限,修改内核参数之类的就做不了 但是有sudo权限就可以添加账号,以下添加了admin账号与root账号一样的权限 useradd -u 0   - ...

  2. 基于 OSPF 路由的邻居邻接关系发现实践

    1.实验目的 理解 OSPF 邻居关系和 OSPF 邻接关系的含义及差别 观察 OSPF 邻居邻接关系的建立过程 观察 OSPF 链路状态数据库的同步过程 2.实验原理 OSPF 网络中,路由器在发送 ...

  3. PTA 7-7 六度空间 (30分)

    PTA 7-7 六度空间 (30分) "六度空间"理论又称作"六度分隔(Six Degrees of Separation)"理论.这个理论可以通俗地阐述为:& ...

  4. geoserver控制服务访问权限-类似百度地图的key

    目录 缘起 可行性分析 如何实现key验证访问 如何控制key能访问哪些地图服务? 如何实现服务器ip白名单 流程梳理 申请key 访问地图 实施步骤 拦截器设置 配置key验证规则 配置服务拦截规则 ...

  5. SpringCloud升级之路2020.0.x版-34.验证重试配置正确性(2)

    本系列代码地址:https://github.com/JoJoTec/spring-cloud-parent 我们继续上一节针对我们的重试进行测试 验证针对限流器异常的重试正确 通过系列前面的源码分析 ...

  6. Part 27 Remove # from URL AngularJS

    There are 4 simple steps to remove # from URLs in Angular. Step 1 : Enable html5mode routing. To do ...

  7. IDEA maven Run Maven 启动方式

    首先想要使用 Run Maven 启动需要在IDEA设置里找到plugins  在plugins窗口下面找到Browse Repositories   打开Browse Repositories 下载 ...

  8. 美团饿了么领取外卖优惠券微信小程序的开发及上线_怎样点外卖省钱_外卖小程序的开发及上线

    都1202年了,估计没人不知道外卖了,那么就有两种人在思考两种问题: 普通人:怎么点外卖划算? 程序员:怎么通过外卖赚钱? 话不多说,为了让你们相信我有能力来讲这块内容,先给你们看一个很简单的小程序: ...

  9. [atAGC052D]Equal LIS

    令$f_{i}$表示以$i$为结尾的最长上升子序列,显然可以快速预处理 令$L=\max_{i=1}^{n}f_{i}$,当$L$为偶数,考虑如下构造-- 将所有$f_{i}\le \frac{L}{ ...

  10. 和安卓对接老是ping不通?试试内网映射

    https://ngrok.cc/download.html