Pillow 基础入门学习& ASCII码
程序员文章站
2024-03-17 15:09:16
...
在学习【廖雪峰的官方网站】的Python教程中,简单学习了利用pillow包绘制图片,这里就直接贴代码了,当作学习记录
# -*- coding:utf-8 -*
from PIL import Image, ImageDraw, ImageFont, ImageFilter
import random
def rand_char():
"""利用ASCII值创建随机字母"""
return chr(random.randint(65, 90))
def rand_color():
"""创建随机颜色"""
return (random.randint(64, 255),
random.randint(64, 255), random.randint(64, 255))
def rand_color2():
"""创建随机颜色2"""
return (random.randint(32, 127),
random.randint(32, 127), random.randint(32, 127),)
# 图片尺寸
width = 60 * 4
height = 60
# 创建新的图片Image.new((mode, size, color=0)
image = Image.new('RGB', (width, height), (255, 255, 255))
# 加载字体
font = ImageFont.truetype('arial.ttf', 36)
# 创建绘图对象
draw = ImageDraw.Draw(image)
# 填充每个像素
for x in range(width):
for y in range(height):
draw.point((x, y), fill=rand_color())
# 指定位置绘制字符, draw.text(position,string, options)
for t in range(4):
char1 = rand_char()
draw.text((60 * t + 10, 10), char1, font=font, fill=rand_color2())
image.save('code_source.jpg', 'jpeg')
# 模糊
image = image.filter(ImageFilter.BLUR)
image.save('code.jpg', 'jpeg')
这里顺带贴一下常用的ASCII值。
chr() 用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。返回值是当前整数对应的 ASCII 字符
ASCII值 | 控制字符 |
---|---|
48 ~ 57 | 数字0 - 9 |
65 ~ 90 | 大写字母“A” - “Z” |
97 ~ 122 | 小写字母“a” - “z” |
参考链接
[Pillow–廖雪峰官方网站] :https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014320027235877860c87af5544f25a8deeb55141d60c5000
Ascii完整码表(256个):https://blog.csdn.net/ttmice/article/details/50978054
推荐阅读
-
Pillow 基础入门学习& ASCII码
-
Java基础学习菜鸟入门第十二天——Java面向对象(六)方法的重写
-
Mysql基础入门 轻松学习Mysql命令
-
零基础入门学习——Spring Boot注解(一)
-
Mysql基础入门 轻松学习Mysql命令
-
零基础入门学习——Spring Boot注解(一)
-
新手学习PHP的一些基础知识分享_php入门_脚本之家
-
C语言-基础入门-学习笔记(8):函数中的变量(auto、static、register、extern)
-
2019前端「HTML+CSS」零基础入门之 HTML学习笔记
-
Python学习入门基础教程(learning Python)--4.2 Python的计数循环体for语句