3

画像を保存する前に、拡張機能が PIL に適しているかどうかを確認する方法はありますか?

以下の例では、ext = "jpg" の場合は正常に動作しますが、"xxx" の場合は keyError が発生します。

my_image.save(filepath + ext)
4

1 に答える 1

5

try/except を使用して、画像を好みの形式で保存しようとすることができます。失敗した場合は、別のことを行います (たとえば、フォールバック形式で保存します)。

try:
    my_image.save(filepath + ".png")
except KeyError: # cannot save as PNG, save as JPEG then
    my_image.save(filepath + ".jpg")

または、拡張機能を使用できることを確認します。

>>> import Image
>>> Image.init()
>>> Image.SAVE.keys() # output from my system
['PCX', 'HDF5', 'TIFF', 'BUFR', 'SPIDER', 'JPEG', 'MSP', 'XBM', 'GIF', 'BMP', 'TGA', 'IM', 'GRIB', 'PPM', 'FITS', 'PDF', 'PALM', 'EPS', 'WMF', 'PNG']
于 2013-06-16T11:12:30.387 に答える