0

PIL import Image、ImageChops、ImageOps から Python でこのスクリプトをデバッグしようとしています。

問題をすべて検索したところ、「image.thumbnail(size, Image.ANTIALIAS)」がここにあるようです。誰にもアイデアはありますか?ありがとう

image = Image.open(f_in)
print "got here"
image.thumbnail(size, Image.ANTIALIAS)
print "cannot get here"
image_size = image.size
if pad:
    thumb = image.crop( (0, 0, size[0], size[1]) )

    offset_x = max( (size[0] - image_size[0]) / 2, 0 )
    offset_y = max( (size[1] - image_size[1]) / 2, 0 )

    thumb = ImageChops.offset(thumb, offset_x, offset_y)

else:
    thumb = ImageOps.fit(image, size, Image.ANTIALIAS, (0.5, 0.5))

thumb.save(f_out)

編集 迅速な回答ありがとうございます マーク。私はそれを考え出した。

そうしなければならなかった:

pip uninstall PIL
sudo apt-get install libjpeg8-dev 
pip install PIL

libjpeg がインストールされていませんでした。エラーが発生しなかった理由がわかりません。

4

1 に答える 1

1

プログラムが「cannot get here」という行に到達しない場合、問題はthumbnail例外をスローしていることです。ただし、質問では言及していませんが、エラーが発生するはずです。

PIL は遅延イメージ読み込みを使用します -open呼び出しでファイルを開くかもしれませんが、実際にはすべてを読み込もうとはしません。画像、thumbnailやっているように。

于 2013-03-11T23:05:39.583 に答える