PythonでPDFから画像を抽出する

画像は PDF 文書でテキストと共に一般的に使用され、コンテンツをより魅力的で精巧なものにします。 PDF ドキュメントを処理および分析する際に、画像の抽出も必要になる場合があります。したがって、この記事では、PDF ファイルを処理し、Python でプログラムによって画像を抽出する方法を示します。ステップ バイ ステップ ガイドとコード サンプルは、画像抽出プロセス全体を示します。

PDF から画像を抽出する Python ライブラリ

PDF ファイルから画像を抽出するには、Aspose.Words for Python を使用します。 PDF や DOCX などのテキスト ドキュメントを作成および操作するための強力で機能豊富なライブラリです。次の pip コマンドを使用して、PyPI からライブラリをインストールできます。

> pip install aspose-words

PDF から画像を抽出する手順

Aspose.Words for Python を使用すると、いくつかの簡単な手順で PDF ファイルから画像を抽出できます。以下は、Aspose.Words for Python を使用して PDF から画像を抽出するワークフローです。

  • 目的の場所から PDF ファイルを読み込みます。
  • PDF を DOCX 形式に変換します。
  • PDF の DOCX バージョンを処理して画像を抽出する
  • 各画像をファイルとして目的の場所に保存します。

次のセクションでは、上記の手順を Python コードに変換し、PDF から画像を抽出する方法を示します。

Python で PDF から画像を抽出する

画像抽出のプロセスでは、まず PDF ファイルを DOCX 形式に変換します。 DOCX ファイルでは、イメージはシェイプ ノードで表されます。そのため、それぞれの形状を処理し、そこから画像を抽出します。

以下は、Python で PDF から画像を抽出する手順です。

  • まず、Document クラスを使用して PDF ファイルを読み込みます。
  • 次に、PDF を DOCX 形式で保存し、PDF ファイルの DOCX バージョンを読み込みます。
  • Document.getchildnodes(NodeType.SHAPE, True) メソッドを使用して、すべての形状をオブジェクトに取得します。
  • シェイプをループし、各シェイプ ノードに対して次の操作を実行します。
    • asshape() メソッドを使用して、形状を Shape 型にキャストします。
    • Shape.hasimage() メソッドを使用して、形状に画像があるかどうかを確認します。
    • シェイプから画像を抽出し、Shape.imagedata.save(string) メソッドを使用して保存します。

次のコード サンプルは、Python で PDF ドキュメントから画像を抽出する方法を示しています。

# Aspose.Words for Python モジュールのインポート
import aspose.words as aw

# PDFファイルを読み込んでWord DOCX形式に変換
pdf = aw.Document("document.pdf")
pdf.save("pdf.docx")

# PDF の DOCX バージョンをロードする
doc = aw.Document("pdf.docx")

# すべての形状を取得する
shapes = doc.get_child_nodes(aw.NodeType.SHAPE, True)
imageIndex = 0

# シェイプをループする
for shape in shapes :
    shape = shape.as_shape()
    if (shape.has_image) :

        # 画像ファイルの名前を設定する
        imageFileName = f"Image.ExportImages.{imageIndex}_{aw.FileFormatUtil.image_type_to_extension(shape.image_data.image_type)}"

        # 画像を保存
        shape.image_data.save(imageFileName)
        imageIndex += 1

Python PDF 画像抽出ライブラリ - 無料ライセンスを取得

無料の一時ライセンス を取得して、評価制限なしで PDF から画像を抽出できます。

結論

PDFドキュメントを分析する際、テキストとともに画像も抽出する必要があります。この記事では、Python で PDF から画像を抽出する方法を学びました。 Aspose.Words for Python をインストールするだけで、画像抽出をアプリケーションに統合できます。

Aspose の PDF 画像抽出ライブラリを調べる

Aspose.Words for Python は、テキスト ドキュメントを操作するためのさまざまな機能を提供します。ライブラリの詳細については、ドキュメント を参照してください。ご不明な点がございましたら、フォーラム からお気軽にお問い合わせください。

関連項目