Python の Fitz ライブラリを使用して PDF から画像を抽出する

序文

みなさん、こんにちは。私はコンコンスターです。この記事を皆さんにシェアします《通过Python的fitz库提取pdf中的图片》

1. フィッツライブラリとは何ですか?

Fitz ライブラリは、主に PDF、TIFF、JPEG 形式で画像を開いたり、編集したり、保存したりするために使用される Python 画像処理ライブラリです。ユーザーが PDF ファイルの読み書き、PDF ページの抽出、ページのマーク付けや注釈付けを行うのに役立ちます。さらに、Fitz ライブラリは、回転、トリミング、スケーリング、明るさ、コントラスト、カラー バランスの調整など、いくつかの画像処理機能も提供します。これらの機能により、Fitz ライブラリは画像処理に非常に便利なツールになります。

2.fitzライブラリをインストールする

pip install fitz

3. Fitz ライブラリのバージョンを確認する

pip show fitz

名前: fitz
バージョン: 0.0.1.dev2
概要: Fitz: 神経画像データのワークフロー管理。
ホームページ: http://github.com/kastman/fitz
著者: Erik Kastman
著者の電子メール: [email protected]
ライセンス: BSD (3 条項)
要件: configobj、configparser、httplib2、nibabel、nipype、 numpy、pandas、pyxnat、scipy
必須:

4. pymupdf ライブラリとは何ですか?

Fitz を使用するには、pymupdf ライブラリをインストールする必要があります。

PyMuPDF は、読み取り、編集、作成、変換などの一連の PDF ドキュメント処理機能を提供する Python ベースのオープンソース PDF 処理ライブラリです。これは、複数のプラットフォームと複数のファイル形式をサポートする軽量のオープンソース PDF ドキュメント レンダリング エンジンである MuPDF の Python バインディングです。
PyMuPDF は高速かつ効率的で使いやすく、テキストの抽出、画像の抽出、ブックマークの追加または変更、コメントの追加または変更、PDF ファイルの結合、PDF ファイルの切り取りなど、PDF ドキュメントの自動処理およびバッチ処理に使用できます。 、PDF ページの抽出など。同時に、PDF を画像にレンダリングする機能もサポートしているため、素早いプレビューやサムネイルの生成に便利です。
つまり、PyMuPDF は非常に実用的な Python PDF 処理ライブラリであり、データ処理、文書処理、自動オフィスなどのさまざまなシナリオに適しています。

5.pymupdfライブラリをインストールする

pip install pymupdf

6. pymupdf ライブラリのバージョンを表示する

pip show pymupdf

名前: PyMuPDF
バージョン: 1.22.3
概要: PDF ツールキットおよびレンダラーの Python バインディング MuPDF
ホームページ: https://github.com/pymupdf/PyMuPDF
著者: Artifex
著者の電子メール: [email protected]
ライセンス: GNU AFFERO GPL 3.0
の要件:
必須者:

7. fitz と pymupdf の関係は何ですか?

fitz は Pymupdf ライブラリのモジュールであり、Pymupdf の主要なモジュールの 1 つであり、最も一般的に使用されるモジュールです。Fitz モジュールは、PDF ドキュメントを開く、読み取る、編集、保存などの基本的な操作を提供します。

8. PDF 内の写真を抽出します

1.ライブラリをインポートする

import fitz

2. PDF パスを定義します

local = '/Users/kkstar/Downloads/'

3. PDF ファイルを開きます

pdf_doc = fitz.open(local+'demo_pic.pdf')

4. すべてのページを閲覧する

for pg in range(pdf_doc.page_count):
    page = pdf_doc[pg]

5. ページ上のすべての画像を取得します

    image_list = page.get_images()

6. すべての画像を反復処理します。

    for img in image_list:

7. 画像のXREF番号と画像データを取得する

        xref = img[0]
        pix = fitz.Pixmap(pdf_doc, xref)

8. 画像が RGB カラースペースの場合は、PNG ファイルとして保存します

        if str(fitz.csRGB) == str(pix.colorspace):
            img_path = local + f'image{
      
      pg+1}_{
      
      xref}.png'
            pix.save(img_path)

要約する

pdf

画像効果の抽出

おすすめ

転載: blog.csdn.net/weixin_38093452/article/details/130950144