Pythonで利用可能な「pdf2image」を使ってPDFファイルの(サムネイル)画像を出力する手順を備忘録的に投稿しておきます。
pdf2imageのインストール
PDFファイルの画像化を行う外部モジュールとして「pdf2image」が必要になります。Python 3がインストールされている場合、pipコマンドでインストールすることができます。
pdf2imageについての詳細は公式ページをご覧ください。
PDFファイルを画像化する手順
VSCodeを使って、PythonでPDFファイルを画像化するには次の手順で行います。
1. VSCodeを起動し[ターミナル]画面から次のコマンドを入力してpdf2imageをインストールします。
pip install pdf2image
2. [ターミナル]画面から次のコマンドを入力してpdf2imageのバージョンを確認します。
pip show pdfimage
3. アプリ用に次のようなフォルダーを作成します。
4. [source_files]フォルダーに適当なファイルをコピーします。※この記事ではPDFのリファレンスファイル(pdf_reference_1-7.pdf)を使用しています。
5. VSCodeでフォルダーを開き、新しく[pdfimage.py]ファイルを追加して次のコードを追加します。
from pathlib import Path
from pdf2image import convert_from_path
source_pdf = 'C:\\Datas\\Python\\pdf2image\\source_files\\pdf_reference_1-7.pdf'
pdfpages = convert_from_path(source_pdf, 72)
image_path = 'C:\\Datas\\Python\\pdf2image\\images\\'
image_name = 'pdf-page1.jpg'
pdfpages[0].save(image_path + image_name, 'JPEG')
6. VSCodeの[ターミナル]画面で次のコマンドを実行します。
python pdfimage.py
7. [Unable to get page count. Is poppler installed and in PATH?]エラーが表示されます。
8.[Poppler for Windows]から最新版をダウンロードします。
9. 新しく[poppler]フォルダーを作成して、ダウンロードしたファイルを展開した内容をコピーします。
10.[Poppler]を利用するために、次のコードを追加します。
import os
from pathlib import Path
from pdf2image import convert_from_path
os.environ["PATH"] = 'C:\\Datas\\Python\\pdf2image\\poppler\\bin'
source_pdf = 'C:\\Datas\\Python\\pdf2image\\source_files\\pdf_reference_1-7.pdf'
pdfpages = convert_from_path(source_pdf, 72)
image_path = 'C:\\Datas\\Python\\pdf2image\\images\\'
image_name = 'pdf-page1.jpg'
pdfpages[0].save(image_path + image_name, 'JPEG')
11. VSCodeの[ターミナル]画面で次のコマンドを実行します。
python pdfimage.py
12.[images]フォルダーに画像ファイルが追加されます。
まとめ
[pdf2image]を利用すること簡単にPDFファイルのページ内容を画像ファイルとして出力する機能を追加することができます。
スポンサーリンク
最後までご覧いただき、ありがとうございます。