11

我有一个大图像,我在 PIL 中调整它的大小,使其宽 250 像素。这是它将在我的网站上显示的宽度。

但是,分辨率真的很差。我看到它已将 dpi 从 180 更改为 96。如果我在 Windows Paint 之类的程序中调整图像大小,那么它会保持 180 dpi。在我的网站上,这个经过 Paint 调整大小的图像看起来好多了。(paint-resized image is 40kb,而PIL resized image is 16kb)

如何维护 dpi(或将其设置为在网站上看起来不错的最大值)

我使用 PIL 调整大小:

image = image.resize((new_width, new_height), Image.ANTIALIAS)
image.save(filepath)

我努力了:

dpi = image.info['dpi']  # (180, 180)
image.save(filepath, dpi = dpi) 

但这没有什么区别。dpi 为 180,但分辨率仍然很差。我猜在调整大小时需要设置dpi?

编辑:

问题似乎是节省,而不是调整大小。即使我从 Paint-resized 图像开始(因此不在 PIL 中调整图像大小),它仍然将其保存为糟糕的质量 96 dpi (16kb) 而不是保持原样。

4

1 回答 1

13

感谢与 abarnert 的讨论,我(他)意识到问题在于保存,而不是调整大小。

然后我找到了这个,解决了这个问题:

image_fullsize.save(filepath+name_fullsize, quality=95)

从这里: 如何调整 Python 图像库中调整大小图像的质量?

于 2013-10-15T18:58:18.590 回答