将矩形图片绘制成圆形图片
这周的安卓作业要做一个音乐播放器, 而图片那块需要添加音乐的封面, 获取到的封面为矩形图片, 如果要像网易云一样做一个唱片风格的封面需要将矩形图片绘制成圆形图片, 在StackOverflow上查找得到相关的方法,如下:
public Bitmap getRoundedShape(Bitmap scaleBitmapImage) {int targetWidth = 50;int targetHeight = 50;Bitmap targetBitmap = Bitmap.createBitmap(targetWidth, targetHeight,Bitmap.Config.ARGB_8888); // 创建目标图片Canvas canvas = new Canvas(targetBitmap); // 新建一块画布,即将绘制目标图片Path path = new Path(); // 新建路径path.addCircle(((float) targetWidth - 1) / 2,((float) targetHeight - 1) / 2,(Math.min(((float) targetWidth), ((float) targetHeight)) / 2),Path.Direction.CCW); // 绘制圆形路径canvas.clipPath(path); // 根据路径切割画布Bitmap sourceBitmap = scaleBitmapImage;canvas.drawBitmap(sourceBitmap, new Rect(0, 0, sourceBitmap.getWidth(),sourceBitmap.getHeight()), new Rect(0, 0, targetWidth, targetHeight), null); // 将原图绘制到目标图中return targetBitmap;
}
通过该方式能快捷的将正方形的图片绘制成圆形图片, 在测试中发现目标图片中存在比较严重的锯齿现象, 一个解决方案为将目标图片的宽和高设置的足够大, 完成绘制后将图片缩放至所需要的大小即可.
将矩形图片绘制成圆形图片相关推荐
- uniapp中canvas将矩形图片绘制成圆形图片以及保存canvas到手机
废话不多说直接上代码 本次是在uniapp中操作的 但是canvas都一样 前提是你已经赋予了canvas宽高了 //先获取你的canvas let ctx = uni.createCanvasCon ...
- 微信小程序在一张canvas上把正方形图片绘制成圆形
因为最近在做分享功能,需要用户的头像在微信小程序中,然后写下其他文字,如何在把正方形图片放到canvas,导成圆角.找了两个参考资料,分别是用.clip()和.clearRect()两种方法 微信小程 ...
- 中如何将方形图片转换成圆形图片_【PS】PS中不可不知的实用技巧!你都掌握了吗?...
今天给大家分享一些在PS中经常用到的实用小技巧,操作简单易上手. 01 拉伸图片人物不变形 在我们在PS里想要拉伸一些图片时,里面的人物往往会跟着一起变形,那么如何改变图片比例的同时,又不影响人物的形 ...
- 如何将方形图片磨成圆形图片
如何将方形图片磨成圆形图片 在开发中经常会有一些需求,比如显示头像,显示一些特殊的需求,将图片显示成圆角或者圆形或者其他的一些形状.但是往往我们手上的图片或者从服务器 获取到的图片都是方形的.这时候就 ...
- 如何用photoshop将方形图片处理成圆形图片
有很多朋友在使用PPT的时候都会想要将PPT中的图片素材处理成圆形,这样看起来更美观,更大方.可是,却迟迟找不到将图片处理成圆形的方法.今天小编为大家分享如何用photoshop将方形图片处理成圆形图 ...
- ios 将矩形图片裁剪成圆形图片
在ios中将一个正方形的图片裁剪成圆形的图片是一件非常容易的事情, 直接设置 imageView.layer.cornerRadius 这个属性, 再设置 imageView.clipsToBound ...
- 微信小程序canvas把正方形图片绘制成圆形
在微信小程序里效果图: 直接代码: <canvas style="width: 400px; height: 400px;border:1px solid red" canv ...
- iOS-方形图片设置成圆形图片
创建一个方形的button,添加方形的背景图片,设置显示为圆形 self.view.backg ...
- php 将图片裁剪成圆形图片,裁剪图片为圆形
``` /** * 处理圆角图片 * @param srting $imgpath 源图片的路径 * @return [type] [description] */ public function r ...
最新文章
- 【cisco下针对冗余链路故障备份的处理措施】
- 趣学python3(10)-函数注释方法
- 仿as3的displaylist
- grid系列--删除
- 1028: [JSOI2007]麻将
- 【平面设计】扁平化设计(Ⅲ)——原则
- 如何在工作中更好的学习
- (step4.3.1) hdu 1010(Tempter of the Bone——DFS)
- 里面的自带的字典在哪里_自带话放的声卡“秘密”
- Spring Boot入口类
- 精益思想,从哪里开始?
- 急聘:IDC机房建设相关职位
- 哈佛幸福课之改变的感想
- android导出微信朋友圈怎么发文字,微信朋友圈气泡字怎么弄 微信朋友圈气泡文字生成教程...
- 什么是响应式网页设计?
- C++中的system(pause);
- ACM信息学竞赛算法总结
- ClickHouse vs Elasticsearch谁更胜一筹?
- 达梦数据库disql工具使用
- 老人桌面===花花绿绿的桌面
热门文章
- 【渝粤教育】 国家开放大学2020年春季 1332中文学科论文写作 参考试题
- Codeforces Round #521 (Div. 3) B. Disturbed People 思维
- 什么原因导致芯片短路_PCB电路板短路的原因及解决方法-EDA/PCB-与非网
- 医疗险十大常见误区,你中了几个?
- Linux下rsh服务配置
- 【CF480D】Parcels DP
- 西门子PLC——CANopen系统通信解决方案
- 在手机端访问pc服务器的方法
- LeetCode刷题|36有效的数独
- 盘点市场营销工作中的5个办公神器