Python以字符形式打印双色图片中的文字

2017-02-02 董付国 Python小屋 Python小屋

本文代码功能:假设有一白色背景的图片内含非白色姓名,代码读取图片像素信息,用很多星号来打印该姓名。


from PIL import Image


def printImage(img):
    im = Image.open(img)
    width, height = im.size
    for h in range(height):
        for w in range(width):

           #读取像素值,不是白色就打印星号
            c = im.getpixel((w,h))[:3]
            if c not in (255, (255, 255, 255)):
                print('*', end='')
            else:
                print(' ', end='')
        print()

printImage('dfg.png')


例如,原始图片为


打印出来的效果为