python实现图片转字符小工具

蔚蓝色的天,深蓝色的海,金黄色的沙,灰白色的鸥,穿着米白格子衬衫的你,站在金灿灿的阳光下,很耀眼。

本文实例为大家分享了python图片转字符小工具的具体实现代码,供大家参考,具体内容如下

from PIL import Image

#灰度与字符的映射
ascii_char = list("$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,\"^`'. ")

WIDTH=int(input("请输入你想输出的宽度:"))
HEIGHT=int(input("请输入你想输出的高度:"))
INPUT=r'D:\Download\ascii_dora.png'
OUTPUT=r'D:\Download\output.txt'

def get_char(r,g,b,alpha=256):
  if alpha==0:
    return ' '
  gray = 0.2126 * r + 0.7152 * g + 0.0722 * b
  length=len(ascii_char)
  unit=(256+1)/length
  return ascii_char[int(gray/unit)]

im=Image.open(INPUT)
im=im.resize((WIDTH,HEIGHT),Image.NEAREST)

txt=''

for i in range(HEIGHT):
  for j in range(WIDTH):
    txt += get_char(*im.getpixel((j,i)))
  txt += '\n'

with open(OUTPUT,'w') as f:
  f.write(txt)

效果图:

到此这篇关于python实现图片转字符小工具就介绍到这了。你不能决定生命的长短,但你可以控制它的质量;你不能左右天气,但你可以改变心情;你不能改变容貌,但你可以展现笑容;你不能控制他人,但你可以掌握自己;你不能预知明天,但你可以掌握今天;你不能样样胜利,但你可以事事尽心。更多相关python实现图片转字符小工具内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

标签: 小工具 python