Help us understand the problem. What is going on with this article?

PillowでマルチページTIFFを分割する

More than 1 year has passed since last update.

前置き

マルチページのTIFF画像の各ページにアクセス、分割して保存する方法のメモ。

コード

各ページを保存する例。

from PIL import Image, ImageSequence

img = Image.open('sample.tiff')

for i, page in enumerate(ImageSequence.Iterator(img)):
    page.save("image_file_{}.jpg".format(i), format='jpeg', quality=95)

image_file_0.jpgという形式で連番のファイルが作成される。

ImageSequenceを使わない場合はtry-except構文でseek(i)を実行してEOFErrorという例外をトラップする。

まあ素直にImageSequence使うべし。

そのほか

ファイルに書き出したくないときはio.BytesIO()と組み合わせればいけるはず。

ネタ元

Python PIL For Loop to work with Multi-image TIFF - Stack Overflow

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away