我们就用这个可爱的小龙猫来做模板
这里,先导入我们要用到的Pillow库中的Image模块
from PIL import Image
创建Image实例,路径的话请自行修改
img = Image.open(r'.\Demo.png' )
创建一个文档以便于接收字符
fp = open('字符画.txt' , 'w' )
获取图片的大小
width, height = img.size
若是图片太大的话先缩小下图片
img = img.resize((width, height))
遍历图片的像素点 把对应的映射字符算出来
for i in range(1 , height):
for j in range(1 , width):
R, G, B= img.getpixel((j, i))
sum = R + G + B
index = int(sum / 30 )
fp.write(chars[index])
fp.write('\n' )
fp.close()
值得注意的是这里所用的图片通道为RGB 若是不一样的话先转换为RGB
print(img.mode)
img = img.convert("RGB" )
OK 跑起来!
if __name__ == '__main__' :
chars = '@#MBHA&XG893S5n1sri;:-,. '
main()
貌似有些大 哈哈不过没事
全部代码
"""
@author: Yi_Zhou
"""
from PIL import Image
def main () :
img = Image.open(r'.\Demo.png' )
img = img.resize((200 ,120 ))
print(img.mode)
fp = open('字符画.txt' , 'w' )
width, height = img.size
for i in range(1 , height):
for j in range(1 , width):
R, G, B= img.getpixel((j, i))
sum = R + G + B
index = int(sum / 30 )
fp.write(char[index])
fp.write('\n' )
fp.close()
if __name__ == '__main__' :
char = '@#MBHA&XG893S5n1sri;:-,. '
main()
转载请注明:Yi_Zhou_Python:利用Pillow库创建字符画