这看起来相当简单:
import png
rdr = png.Reader(filename='help.png')
width, height, pixels, metadata = rdr.read()
with open('help-new.png', 'w') as outfile:
png.Writer(**metadata).write(outfile, pixels)
但是,我无法打开我的新图像,因为文件“似乎已损坏、损坏或太大”。如果我尝试将结果加载回 PyPNG,我会得到:
FormatError: FormatError: PNG file has invalid signature.
附加信息:元数据如下所示:
'bitdepth': 8, 'interlace': 0, 'planes': 1,
'greyscale': False, 'alpha': False, 'size': (18, 18)
第一个调色板条目是 (0, 0, 0, 0),而其他都是 (255, 255, 255, A) 形式,其中 A 介于 0 和 255 之间。源文件为 718 字节,结果文件为748 字节。