画像をPDFファイルに変換することは、画像コンテンツを保存、表示、共有する効率的な方法です。 スキャンした文書でも、撮影した写真でも、デジタル画像のコレクションでも、画像をPDFファイルに変換することで、整理や転送のプロセスが簡素化されます。 同時に、PDF文書は画質を保持し、ファイルサイズを縮小し、画像を表示する順序を最大化します。 この記事では、Pythonコードを使って画像をPDFに変換する方法を紹介します。
この記事で使用する方法には、Spire.PDF for Pythonが必要です。これは公式ウェブサイトからダウンロードするか、PyPIを使用してインストールできます: pip install Spire.PDF。
Pythonで単一の画像をPDF文書に変換
PdfImage.LoadFromFile()メソッドを使用して画像を読み込み、画像と同じサイズのPDFページを作成し、そのページに画像を追加して、画像からPDF文書への変換を実現することができます。 以下に詳細な手順を示します:
- PdfDocument クラスのオブジェクトを作成します。
- PdfDocument.PageSettings.SetMargins() メソッドを使用して、ページの余白をゼロに設定します。
- PdfImage.FromFile() メソッドを使用して画像を読み込みます。
- PdfImage.PhysicalDimension.Width プロパティと PdfImage.PhysicalDimension.Height プロパティを使用して、画像の高さと幅を取得します。
- PdfDocument.Pages.Add() メソッドを使用して、PDF文書内に画像と同じサイズのページを作成します。
- PdfPageBase.Canvas.DrawImage() メソッドを使用して、ページに画像を描画します。
- PdfDocument.SaveToFile() メソッドを使用してPDF文書を保存します。
コードの例
from spire.pdf.common import *
from spire.pdf import *
# PdfDocumentクラスのオブジェクトを作成する
pdf = PdfDocument()
# ドキュメントの余白をクリアする
pdf.PageSettings.SetMargins(0.0)
# 画像を読み込む
image = PdfImage.FromFile("Sample.jpg")
# 画像の高さと幅を取得する
width = image.PhysicalDimension.Width
height = image.PhysicalDimension.Height
# 画像と同じサイズのページを作成する
page = pdf.Pages.Add(SizeF(width, height))
# ページに画像を描画する
page.Canvas.DrawImage(image, 0.0, 0.0, width, height)
# PDFドキュメントを保存する
pdf.SaveToFile("output/画像をPDFに変換.pdf")
pdf.Close()
Pythonでフォルダ内の複数画像をPDFに変換
フォルダ内のすべての画像をPDF文書に変換するには、フォルダ内の各画像を繰り返し処理し、各画像をそれぞれ同じサイズのPDFページに追加する必要があります。 具体的な手順は以下の通りです:
- PdfDocument クラスのオブジェクトを作成します。
- PdfDocument.PageSettings.SetMargins() メソッドを使用して、ページの余白をゼロに設定します。
- 画像が保存されているフォルダを取得します。
- フォルダ内の各画像ファイルを繰り返し処理し、特定の画像の幅と高さを取得します。
- PdfDocument.Pages.Add() メソッドを使用して、画像と同じ幅と高さの新しいページをPDF文書に追加します。
- PdfPageBase.Canvas.DrawImage() メソッドを使用して、ページに画像を描画します。
- PdfDocument.SaveToFile() メソッドを使用して文書を保存します。
コードの例
from spire.pdf.common import *
from spire.pdf import *
import os
# PdfDocumentクラスのオブジェクトを作成する
doc = PdfDocument()
# ページの余白を0に設定する
doc.PageSettings.SetMargins(0.0)
# 画像が保存されているフォルダのパスを取得する
path = '画像/'
files = os.listdir(path)
# フォルダ内のファイルを走査する
for root, dirs, files in os.walk(path):
for file in files:
# 特定の画像を読み込む
image = PdfImage.FromFile(os.path.join(root, file))
# 画像の幅と高さを取得する
width = image.PhysicalDimension.Width
height = image.PhysicalDimension.Height
# 画像と同じサイズのページを追加する
page = doc.Pages.Add(SizeF(width, height))
# ページの (0, 0) の位置に画像を描画する
page.Canvas.DrawImage(image, 0.0, 0.0, width, height)
# ファイルに保存する
doc.SaveToFile('output/複数の画像をPDFに変換.pdf')
doc.Dispose()
無料ライセンスの申請
このAPIは、すべてのユーザーに無料のライセンスを提供する。制限を解除する必要がある場合は、無料ライセンスを申請してください。
この記事では、Pythonプログラムを通してSpire.PDF for Pythonを使用し、単一または複数の画像をPDF文書に変換し、画像の内容のより良い整理、共有、表示を実現する方法について説明します。 このAPIを使用する過程で何らかの問題が発生した場合は、Spire.PDFフォーラムを通じて技術サポートを受けることができます。