5

Python イメージ ライブラリを使用して、いくつかの jpeg イメージを 24X36 インチから 11X16.5 インチに縮小しようとしています。PIL はピクセル単位で処理するため、解像度を 200 ピクセル/インチに設定して、7200X 4800 ピクセルから 3300 X2200 ピクセルにスケーリングする必要がありますが、スクリプトを実行すると、PIL によって解像度が 72 ピクセル/インチに変更され、最終的にはより大きなサイズになります。以前よりイメージ。

import Image

im = Image.open("image.jpg")

if im.size == (7200, 4800):
    out = im.resize((3300,2200), Image.ANTIALIAS)
elif im.size == (4800,7200):
    out = im.resize((2200,3300), Image.ANTIALIAS)

out.show()

画像のサイズを変更するときに画像の解像度を維持する方法はありますか?

助けてくれてありがとう!

4

1 に答える 1

7

DPIを保持するには、保存時にDPIを指定する必要があります。info属性は、画像操作間で常に保持されるとは限りません。

dpi = im.info['dpi']  # Warning, throws KeyError if no DPI was set to begin with

# resize, etc.

out.save("out.jpg", dpi=dpi)
于 2012-09-26T19:51:06.210 に答える