博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python PIL相关操作
阅读量:6705 次
发布时间:2019-06-25

本文共 863 字,大约阅读时间需要 2 分钟。

项目中需要用python生成二维码,这里记录一下相关PIL相关操作。

RGBA问题:

  需要将图片A粘贴到图片B上,之前没有注意透明度问题,A的背景是透明的,粘贴到B上后,A的周围是黑的。后来才发现是PIL的Image模块,调用open打开文件以后,需要convert转换为‘RGBA’模式,R:red G:green B:blue A:Alpha 色彩空间 透明度,设置一下图片的透明度即可。

 

图片的粘贴,文字的添加需要调用ImageDraw模块,首先打开背景图

img = Image.open('./test.png').convert('RGBA')drawImg = ImageDraw.Draw(img) 

图片A粘贴到图片B上

Image.resize()函数来调整图片A的大小,然后用paste将A粘贴到B上,qr_bos为A在B上的坐标,(右上,左上,右下,左下)

drawImg.paste(img.resize((self.qr_box[2] - self.qr_box[0], self.qr_box[3] - self.qr_box[1])), self.qr_box)

在图片B上添加文字

# 获取图片宽度,字体的高度t_p_w_3, t_p_h_3 = (self.width, 23)# 加载字体t_3_font = ImageFont.truetype('msyh.ttf', 23)# 获取这段文字在图片上的长宽t_p_w_3_t, t_p_h_3_t = drawBack.textsize(self.content_3, t_3_font)#居中drawBack.text(((t_p_w_3 - t_p_w_3_t) / 2, (t_p_h_3 - t_p_h_3_t) / 2), self.content_3,fill='#535256', font=t_3_font)

 

转载于:https://www.cnblogs.com/yuanhuikai/p/9029930.html

你可能感兴趣的文章
c语言中的位移位操作
查看>>
atitit.为什么 java开发要比php开发速度慢??
查看>>
Visual Studio 2010 将网站直接发布到远程站点
查看>>
BZOJ 1396&&2865 识别子串[后缀自动机 线段树]
查看>>
Android Framework 记录之一
查看>>
java集合框架05——ArrayList和LinkedList的区别
查看>>
Kubernetes如何支持有状态服务的部署?
查看>>
vue学习笔记1-基本知识
查看>>
C#开发step步骤条控件
查看>>
text-align 属性,输入框数字向右靠
查看>>
算法笔记_069:Floyd算法简单介绍(Java)
查看>>
dubbo常见错误
查看>>
java-信息安全(十四)-初探SSL
查看>>
1497 取余运算
查看>>
ElasticSearch 应用场景
查看>>
关于haproxy负载均衡的算法整理
查看>>
CentOS 6.x安装配置MongoDB 3.4.x
查看>>
微信小程序,创业新选择
查看>>
Android -- 从源码带你从EventBus2.0飚到EventBus3.0
查看>>
洛谷4月月赛R2
查看>>