我正在使用python中的PIL进行项目。 只需打开并保存图像,输出图像就会比原始图像更大(以字节为单位),保持相同的分辨率,我不知道为什么......
from PIL import Image
img = Image.open("photo.png")
img.save("photo2.png", "PNG")
有人知道为什么会这样吗?我需要它们完全一样。
答案 0 :(得分:1)
PNG是一种压缩无损格式。原始图像可能使用不同的压缩设置保存。
查看您可以尝试的documentation:
img.save("photo2.png", "PNG", optimize=True)
或
img.save("photo2.png", "PNG", compress_level=9)
默认使用compress_level=6
。
请注意,optimize
选项包括将压缩级别设置为9.但它也会尝试查找最佳编码器设置。
答案 1 :(得分:0)
我想您不会更改图像,否则大小会有所不同。如果您不更改图像,为什么不复制呢?
shutil.copyfile(source, destination)