gpt4 book ai didi

python - 为什么我不能使用 PyPNG 往返图像?

转载 作者:太空宇宙 更新时间:2023-11-03 15:03:14 25 4
gpt4 key购买 nike

这看起来相当简单:

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字节。

最佳答案

以二进制模式打开输出文件:

open('help-new.png', 'wb') as outfile:
^
|
that's it,
right there

否则,I/O 层可能会进行换行符转换,而这对于二进制文件来说是您永远不需要的。

关于python - 为什么我不能使用 PyPNG 往返图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35607995/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com