Python中pillow知识点学习

yipeiwu_com7年前Python基础

此系列意在记录于一些有趣的程序及对其的总结。

问题来源:

https://github.com/Yixiaohan/show-me-the-code

https://github.com/HT524/500LineorLess_CN

今天这个程序于一张图片中添加数字,类似于qq头像上的小红点,只不过这个是静态的。

首先使用的是pillow这个图像库。

总体思路是通过Image.open()打开图像,设置要绘制的信息的格式,ImageDraw.Draw()生成被修改的实例,再通过text()方法进行修改。

程序如下:

from PIL import Image, ImageDraw, ImageFont


def pic_add_num(image):
  my_font = ImageFont.truetype(r"C:\windows\Fonts\simsun.ttc", size=40)
  color = "red"
  width, height = image.size
  position = (width-40, 0)
  draw = ImageDraw.Draw(image)
  
  draw.text(position, "99", font=my_font, fill=color) 
  image.save("add_num.jpg")

if __name__ == "__main__":
  img = Image.open("universe.jpg")
  pic_add_num(img)

相关文章

将Django使用的数据库从MySQL迁移到PostgreSQL的教程

我们已对 Django1.6 app完成了数据库从mysql到PostgreSQL的迁移,如果你的环境很干净,这个过程就会很简单,只要允许syncdb 或者 migrate创建表,tru...

Python数据类型之列表和元组的方法实例详解

Python数据类型之列表和元组的方法实例详解

引言 我们前面的文章介绍了数字和字符串,比如我计算今天一天的开销花了多少钱我可以用数字来表示,如果是整形用 int ,如果是小数用 float ,如果你想记录某件东西花了多少钱,应该使用...

python中正则表达式 re.findall 用法

Python 正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。 Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正...

使用Python中的线程进行网络编程的入门教程

引言 对于 Python 来说,并不缺少并发选项,其标准库中包括了对线程、进程和异步 I/O 的支持。在许多情况下,通过创建诸如异步、线程和子进程之类的高层模块,Python 简化了各种...

Python的Tornado框架实现图片上传及图片大小修改功能

图片的上传 上传图片使用了表单提交, 下面是html部分, enctype="multipart/form-data"表示不对字节进行编码,上传文件类型时需指定. input标签的 ty...