android paint 边框,android – 使用边框(Paint)在画布上的当前剪辑上绘制位图_weixin_39966740的博客-程序员秘密

技术标签: android paint 边框  

我正在通过编写游戏来学习

Android,并且对图形API有疑问.

我想将图像绘制为路径的形状,然后在路径上添加边框.我能够使用Path剪切图像,但无法找到在其上添加边框的方法.我虽然很简单,因为API支持Canvas.draw *方法上的Paint对象.

更新

在原始问题中,我的路径包含两个矩形,@ christopher-souvey正确回答.但是,在处理添加一个clipPath()方法时,我遇到了另一个问题.

我通过在Path中添加一个圆来更新以前的代码.这是我的新代码:

Bitmap srcImage = BitmapFactory.decodeStream(getAssets().open("panda.jpg"));

Bitmap bitmapResult = Bitmap.createBitmap(srcImage.getWidth(), srcImage.getHeight(), Bitmap.Config.ARGB_8888);

Path path = new Path();

// This is my border

Paint paint = new Paint();

paint.setStyle(Style.STROKE);

paint.setColor(Color.RED);

paint.setStrokeWidth(2);

paint.setAntiAlias(true);

Canvas canvas = new Canvas(bitmapResult);

// Overlay two rectangles

path.addRect(10, 10, 70, 70, Path.Direction.CCW);

path.addRect(40, 40, 120, 120, Path.Direction.CCW);

canvas.drawPath(path , paint);

canvas.clipPath(path, Region.Op.INTERSECT);

path.reset();

path.addCircle(40, 80, 20, Path.Direction.CCW);

canvas.drawPath(path , paint);

canvas.clipPath(path, Region.Op.DIFFERENCE);

// The image is drawn within the area of two rectangles and a circle

// Although I suppose that puting Paint object into drawBitmap() method will add a red border on result image but it doesn't work

canvas.drawBitmap(srcImage, 0, 0, paint);

((ImageView)this.findViewById(R.id.imageView1)).setImageBitmap(bitmapResult);

我能错过什么让它起作用吗?

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39966740/article/details/117577252

智能推荐

【Python自然语言处理】中文分词技术——统计分词_python3.9 分词技术_XD1998的博客-程序员秘密

中文分词方法本文参考自书籍《Python自然语言处理实战:核心技术与算法》用做个人的学习笔记和分享1. 规则分词规则分词的详细笔记2. 统计分词3. 混合分词...

戴尔笔记本和台式机专业GhostXP_SP3装机系统至尊版 V2011.07_心语家园的博客-程序员秘密

戴尔笔记本和台式机专业GhostXP_SP3装机系统至尊版 V2011.07   软件介绍 戴尔笔记本和台式机专业GhostXP_SP3装机系统至尊版 V2011.07 . . . . ===================================================戴尔笔记本和台式机专业GhostXP_S...

UVA - 712 S-Tree_Ziiyan的博客-程序员秘密

题目大意:满二叉树,节点值为 0 或 1。给出一个 n 表示该二叉树的深度,第二行 x3,x1,x2 表示从根节点开始每一层的值,第三行表示最后一层即叶子的值。接着给出要查找的次数 m,以下 m 行每行分别表示 x1,x2,x3 的值。有一颗小球从根节点出发,遇到 0 左走 1 右走,输出最后到达的叶子节点的值。解题思路:根据满二叉树做孩子为 2k,右孩子 2K+1 的特点解决。创建一个数组 lea

转载——卷积神经网络(CNN)基础入门介绍_c# cnn_Chrls_Wang的博客-程序员秘密

该篇写得很详细并且很清楚,转自:http://www.jeyzhang.com/cnn-learning-notes-1.html概述卷积神经网络(Convolutional Neural Network, CNN)是深度学习技术中极具代表的网络结构之一,在图像处理领域取得了很大的成功,在国际标准的ImageNet数据集上,许多成功的模型都是基于CNN的。CNN相较于传统的图像处理

随便推点

Java使用Springboot集成Es官方推荐(RestHighLevelClient)_java resthighlevelclient_番茄好困的博客-程序员秘密

SpringBoot集成ElasticSearch的四种方式(主要讲解ES官方推荐方式)TransportClient:这种方式即将弃用 官方将在8.0版本彻底去除Data-Es:Spring提供的封装的方式,由于是Spring提供的,所以每个SpringBoot版本对应的ElasticSearch,具体这么个对应的版本,自己去官网看ElasticSearch SQL:将Elasticsearch的Query DSL用SQL转换查询,早期有一个第三方的插件Elasticsearch-SQL,后来随

专题13:一文让你彻底明白python中的进程、线程、协程、GIL_liuwangleoooO的博客-程序员秘密

文章内容可能会比较长,针对每一部分的内容,建议深入了解,我之所以把这些知识点放在一起解析,\color{red}{文章内容可能会比较长,针对每一部分的内容,建议深入了解,我之所以把这些知识点放在一起解析,}文章内容可能会比较长,针对每一部分的内容,建议深入了解,我之所以把这些知识点放在一起解析,一是想比较清晰的整理出来,遇到问题不用到处找,二是坚持学完python中的这一部分知识,不要只是一知半解。\color{purple}{ 一是想比较清晰的整理出来,遇到问题不用到处找,二是坚持学完python中的这

戴尔3040计算机没有VGA接口,电脑没有vga接口怎么办_赤坂凌太郎的博客-程序员秘密

电脑没有vga接口怎么办VGA接口就是显卡上输出模拟信号的接口,VGA(Video Graphics Array)接口,也叫D-Sub接口。虽然液晶显示器可以直接接收数字信号,但很多低端产品为了与VGA接口显卡相匹配,因而采用VGA接口。电脑没有vga接口怎么办?1、上网买一个一种设备叫USB转VGA转换器。2、首先一个一般的显示器只能接一台电脑。假如显示器同时有VGA+DVI也不能同时用。解决方...

sql server 2016 Always on 无域部署教程_石头-豆豆的博客-程序员秘密

sql server 2016 Always on 无域部署教程一、环境描述二、准备工作①、设置集群节点主机名,三个节点都需要设置这里操作sql3服务器,另外两个节点修改为响应的计算机名,DNS后缀相同即可。修改hosts文件,文件路径:C:\Windows\System32\drivers\etc192.168.6.53 sql3.yishoe.com192.168.6.54 sql4.yishoe.com192.168.6.55 sql5.yishoe.com192.168.

parseInt与parseFloat_懒懒同学的博客-程序员秘密

parseInt基本操作进制转换parseFloatparseInt基本操作可以把字符串转化成整数。如果参数不是字符串,则会先转为字符串再转换。console.log(parseInt('12px')); //12console.log(parseInt('px')); //NaNconsole.log(parseInt(true));

SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #2 of ORDER BY clause is not in_我是高手高手高高手的博客-程序员秘密

一、原理层面 这个错误发生在mysql 5.7 版本及以上版本会出现的问题: mysql 5.7版本默认的sql配置是:sql_mode="ONLY_FULL_GROUP_BY",这个配置严格执行了"SQL92标准"。 很多从5.6升级到5.7时,为了语法兼容,大部分都会选择调整sql_mode,使其保持跟5.6一致,为了尽量兼容程序。二、sql...

推荐文章

热门文章

相关标签