Path path = new Path();

path.addArc(200, 200, 400, 400, -225, 225);

path.arcTo(400, 200, 600, 400, -180, 225, false);

path.lineTo(400, 542);

//路径剪裁

canvas.clipPath(path);

canvas.drawRect(0, 0, 800, 800, paint);

}

Paint类常用方法

Paint类代表画笔,用来描述图形的颜色和风格,如线宽、颜色、透明度和填充效果等信息。使用Paint类时,首先要创建它的实例对象,然后通过该类提供的方法来更改Paint对象的默认设置。Paint类提供的常用方法如下:

| 方法 | 描述 |

| — | — |

| setAlpha(int a) | 设置透明度 |

| setARGB(int a, int r, int g, int b) | 绘制颜色 |

| setColor(int color) | 设置颜色 |

| setShader(Shader shader) | 设置渲染效果 |

| setShadowLayer(float radius, float dx, float dy, int color) | 设置阴影 |

| setStrokeWidth(float width) | 设置画笔粗细 |

protected void onDraw(Canvas canvas) {

super.onDraw(canvas);

// 把整张画布绘制成白色

canvas.drawColor(Color.WHITE);

Paint paint = new Paint();

/**

  • 设置画笔的锯齿效果,去锯齿

  • 设置画笔颜色,蓝色

  • 设置画笔风格,空心

  • 设置空心画笔的宽度,3

*/

paint.setAntiAlias(true);

paint.setColor(Color.BLUE);

paint.setStyle(Paint.Style.STROKE);

paint.setStrokeWidth(3);

/**

  • 绘制圆形

  • 绘制正方形

  • 绘制矩形

*/

canvas.drawCircle(40, 40, 30, paint);

canvas.drawRect(10, 80, 70, 140, paint);

canvas.drawRect(10, 150, 70, 190, paint);

RectF re1 = new RectF(10, 200, 70, 230);

// 绘制圆角矩形

canvas.drawRoundRect(re1, 15, 15, paint);

RectF re11 = new RectF(10, 240, 70, 270);

// 绘制椭圆

canvas.drawOval(re11, paint);

// 定义一个Path对象,封闭成一个三角形。

Path path1 = new Path();

path1.moveTo(10, 340);

path1.lineTo(70, 340);

path1.lineTo(40, 290);

path1.close();

// 根据Path进行绘制,绘制三角形

canvas.drawPath(path1, paint);

// 定义一个Path对象,封闭成一个五角形。

Path path2 = new Path();

path2.moveTo(26, 360);

path2.lineTo(54, 360);

path2.lineTo(70, 392);

path2.lineTo(40, 420);

path2.lineTo(10, 392);

path2.close();

// 根据Path进行绘制,绘制五角形

canvas.drawPath(path2, paint);

// ----------设置填充风格后绘制----------

paint.setStyle(Paint.Style.FILL);

paint.setColor(Color.RED);

canvas.drawCircle(120, 40, 30, paint);

canvas.drawRect(90, 80, 150, 140, paint);

canvas.drawRect(90, 150, 150, 190, paint);

RectF re2 = new RectF(90, 200, 150, 230);

//绘制圆角矩形

canvas.drawRoundRect(re2, 15, 15, paint);

RectF re21 = new RectF(90, 240, 150, 270);

// 绘制椭圆

canvas.drawOval(re21, paint);

Path path3 = new Path();

path3.moveTo(90, 340);

path3.lineTo(150, 340);

path3.lineTo(120, 290);

path3.close();

//绘制三角形

canvas.drawPath(path3, paint);

Path path4 = new Path();

path4.moveTo(106, 360);

path4.lineTo(134, 360);

path4.lineTo(150, 392);

path4.lineTo(120, 420);

最后

本文在开源项目GitHub中已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

目前已经更新的部分资料,需要的自己取:



96%AA%EF%BC%81.md)已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…**

目前已经更新的部分资料,需要的自己取:

[外链图片转存中…(img-qsZ26V1K-1646386684848)]
[外链图片转存中…(img-GtdyPWoo-1646386684849)]
[外链图片转存中…(img-2BYkWymJ-1646386684849)]

Android图形图像处理,主流app开发工具相关推荐

  1. 安卓app开发工具_怎么开发app软件需要多少钱?主流app开发工具盘点

    现在智能手机的快速普及让手机app在生活中越来越重要,很多企业及创业者也意识到了app的重要性,但是怎么开发app软件?有哪些主流app开发工具呢?这里就为大家分享一下如何快速开发app软件. 一.编 ...

  2. Android 架构演进及未来,主流app开发工具

    要想成为一名优秀的Android开发,一份 知识体系 是必不可少的~ 以前安卓开发找工作有多容易?只要了解四大组件.视图.网络请求,你就能拿到一份薪资丰厚的offer:当时,如果你要是精通java基础 ...

  3. H5 App开发工具 WeX5

    WeX5是H5 App开发工具,Apache开源,免费开放所有代码,所开发的应用均能"一秒打开"!对跨平台多前端应用开发的支持极好,一次开发,多平台运行 . WeX5采用混合应用( ...

  4. 主流html5桌面应用开发,主流HTML5开发工具推荐

    HTML5开发工具推荐 HTML5被看做是web开发者创建流行web应用的利器,增加了对视频和Canvas 2D的支持.HTML5的诞生还让人们重新审视浏览器专用多媒体插件的未来,如Adobe的Fla ...

  5. 5个在线制作APP开发工具介绍和APP公司酷站欣赏

    不会编程,自己也能制作出高质量的受欢迎的App.如果你也想免费给自己公司或者产品开发App客户端的,也一样可以参考下面5个在线制作高质量的APP开发工具. 或者我们也可以欣赏下 这5个App公司的运营 ...

  6. 9大跨平台移动 App 开发工具推荐

    如今,移动应用开发已经变得越来越重要,开发人员面临最大的挑战之一就是在多个平台上运行应用程序.最新的应用程序代码支持"一次编写,到处运行"(WORA)的概念,即只要在一个平台上编写 ...

  7. 安卓app开发工具_四川智慧社区安卓手机app开发多少钱

    四川智慧社区安卓手机app开发多少钱 注册登录应用公园后,有两种APP制作模式: 1.主题模式: 应用公园平台提供了上百个配置好的APP模板,可以直接使用,把图片文字替换就可以直接使用.如下图所示: ...

  8. 5 款傻瓜式手机 APP 开发工具

    Google推出的App Inventor Android App开发工具可以让你仅通过拖拉式的简单操作就可以创建自己的Android App.对于那些为了特定目的想要动手尝试开发一个简单应用的用户, ...

  9. 5款开发手机应用的傻瓜式APP开发工具

    Google推出的App Inventor Android App开发工具可以让你仅通过拖拉式的简单操作就可以创建自己的Android App.对于那些为了特定目的想要动手尝试开发一个简单应用的用户, ...

  10. 傻瓜式APP开发工具

    随着智能手机及APP应用程序的普及,越来越多的企业和个人意识到APP的营销价值,出于对技术的敬畏,很多企业下意识认为开发APP是一个有难度的技术活,所以就算有心想开发一个企业自己的APP来对企业或者产 ...

最新文章

  1. JDBC高级特性3--JNDI,连接池,分布式事务
  2. 如何读取抓取的wifi包内容
  3. Access常用类型及查询语法 [Access]
  4. 极限与连续知识点总结_高数上知识点期末复习 极限、连续、间断点(一)
  5. IOC容器特性注入第五篇:查找(Attribute)特性注入
  6. react ajax组件,javascript – 我可以将ajax放在React组件构造函数中吗?
  7. linux 内核之美,Linux内核 | 系统调用
  8. Generic Netlink内核实现分析(二):通信
  9. 还在低头采石油? BP、壳牌、道达尔、中石化早已涌入可再生能源
  10. 逐步揭示makop.mkp勒索病毒中毒防范恢复解密
  11. 药企如何应对计算机系统验证?浪潮GMP管理保驾护航
  12. 老人步履蹒跚,警惕骨关节炎
  13. 网站一直不被收录怎么办,让网站收录更好的五个方法
  14. android平台支付宝快捷支付
  15. Apache优化相关
  16. day08---(05)课程大纲-章节和小节列表功能(接口)
  17. 使用Tab键控制切换网页光标位置
  18. [python ][opencv][图片卡通化]
  19. 几个炫酷的3D旋转动态效果(附代码)
  20. Linux如何安装rpm文件

热门文章

  1. Android P 禁用OTG U盘使用
  2. 被拖欠2个月工资,最后我拿到了6个月《打工人的那些事》
  3. 2020ICPC昆明热身赛 C.Statues(前缀优化dp+滚动数组优化空间)
  4. 微信小程序开发测试appId如何改为真正的appid
  5. 计算机flash听课记录范文,听课记录范文.doc
  6. 经济学计算机会成本和贸易区直的题,管理经济学2017年4月真题(02628)
  7. python应用之socket编程
  8. 桌面计算机地址栏在哪,win10系统工具栏怎样添加桌面和地址栏选项【图文教程】...
  9. 需要使用新应用以打开此mswindowsstore解决办法
  10. 远方的人 -- 龙瑜