原图:

变化后:

import os
from PIL import Image
#圆形头像
def circle(img_path):path_name = os.path.dirname(img_path)cir_file_name = 'cir_img.png'cir_path = path_name + '/' + cir_file_nameima = Image.open(img_path).convert("RGBA")size = ima.sizeprint(size)# 因为是要圆形,所以需要正方形的图片r2 = min(size[0], size[1])if size[0] != size[1]:ima = ima.resize((r2, r2), Image.ANTIALIAS)# 最后生成圆的半径r3 = int(r2/2)imb = Image.new('RGBA', (r3*2, r3*2),(255,255,255,0))pima = ima.load() # 像素的访问对象pimb = imb.load()r = float(r2/2) #圆心横坐标for i in range(r2):for j in range(r2):lx = abs(i-r) #到圆心距离的横坐标ly = abs(j-r)#到圆心距离的纵坐标l = (pow(lx,2) + pow(ly,2))** 0.5 # 三角函数 半径if l < r3:pimb[i-(r-r3),j-(r-r3)] = pima[i,j]imb.save(cir_path)return cir_path

python3切割圆形图片相关推荐

  1. 将矩形图片绘制成圆形图片

    这周的安卓作业要做一个音乐播放器, 而图片那块需要添加音乐的封面, 获取到的封面为矩形图片, 如果要像网易云一样做一个唱片风格的封面需要将矩形图片绘制成圆形图片, 在StackOverflow上查找得 ...

  2. Android中使用自定义的view实现圆形图片的效果

    今天给大家讲的是怎么在xml文件找中通过引用自定义的view实现ImageView的圆形图片效果.首先在你的项目中新建一个类,我给它命名为:CircleImageView:然后在res目录下的valu ...

  3. Andorid显示圆形图片的4种方式

    这篇博客主要讲解了Android实现圆形图片的4种方式. Android中并没有一个原生的控件,可以显示圆形或圆角图片,因此需要我们自己去定义这样一个控件. 实现圆形/圆角图片的核心思想,就是按照一定 ...

  4. Android 自定义圆形图片 CircleImageView

    1.效果预览 1.1.布局中写自定义圆形图片的路径即可 1.2.然后看一看图片效果 1.3.原图是这样的 @mipmap/ic_launcher 2.使用过程 2.1.CircleImageView源 ...

  5. Android 自定义圆形图片

    代码注释很多,简单说下思路,然后直接贴代码 1.截取选定图片中间区域(宽等于高的正方形) 2.按照控件大小进行缩放 3.画圆,设置paint.setXfermode(new PorterDuffXfe ...

  6. html5圆形图片轮播,jQuery超酷响应式圆形图片轮播图特效

    mislider是一款效果非常酷的jQuery响应式圆形图片轮播图特效插件.该轮播图特效可以将图片以圆形图片显示,然后使图片无限循环形成轮播图或旋转木马特效.该轮播图插件的特点有: 使用简单 在同一个 ...

  7. 7:MD5、圆形图片、动态换肤

    1.获取一个文件的MD5值(可处理大文件) public static String getSkinMD5(File file) {FileInputStream fis = null;BigInte ...

  8. 使用RoundedBitmapDrawable快速生成圆角和圆形图片

    原文出处:http://www.tuicool.com/articles/eIBbArA 上一篇 <[Material Design]使用Palette类提取图片的颜色信息> 主要介绍了如 ...

  9. android画一个圆形图片组件

    imageview 显示圆形图片如下图. 圆形头像原理. 1.根据图片创建一个大小相同的画布. 2.在画布上画一个圆形. 3.画一个绘制交集,显示上层. // 将圆形图片,返回Bitmappublic ...

最新文章

  1. AWS - Couldformation 初探
  2. 带进度条的ASP无组件断点续传下载代码
  3. 2018热点总结:BERT最热,GANs最活跃,每20分钟就有一篇论文...
  4. PHP中对象的深拷贝与浅拷贝
  5. 解决vue版本不匹配的问题 Vue packages version mismatch:
  6. codeforces B. Fox and Cross 解题报告
  7. BZOJ3570 : DZY Loves Physics I
  8. 在使用win 7 无线承载网络时,启动该服务时,有时会提示:组或资源的状态不是执行请求操作的正确状态。 网上有文章指出,解决这个问题的方法是在设备管理器中启动“Microsoft托管网络虚拟适配
  9. 28个Java常用的工具类
  10. mysql 时间小于_删库不必跑路,自己动手MySQL数据恢复,真香~~
  11. 开课吧:Java软件开发的优点有哪些?​
  12. 敏捷开发之产品级经验分享
  13. Anndroid 使用相机或相册打开图片
  14. Python requests抓取有道翻译 最新版破解js加密
  15. c语言实现作业调度先来先服务和短进程优先,先来先服务和高响应比优先调度算法C语言实现...
  16. 多Excel合并成一个Excel的多sheet
  17. Log4j.properties配置详解
  18. table表格内容互换
  19. 练习3-2,编写一个函数escape(s,t),将字符串t复制到字符串s中,并在复制过程中将换行符、制表符等不可见字符转换为\n、\t等相应的可见的转义字符序列。要求使用switch语句。
  20. stat() /root/xxx/index.html failed (13: Permission denied)

热门文章

  1. 计算机图形学:二维图形的几何变换(算法原理及代码实现)
  2. oracle中英文文献,库存管理外文文献及中英文翻译.doc
  3. NC 工具的使用教程
  4. MATLAB矩阵变换
  5. speedoffice(Word)文字内容怎么添加删除线
  6. ubuntu 为可执行程序创建启动图标
  7. 原生JS实现贪吃蛇——项目总结
  8. 查看java安装路径[linux]
  9. 什么样的人当不好程序员?
  10. 研究生规划及论文写作