0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Pythonコードを使って画像をPDFに変換する

Posted at

画像を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()

生成されたPDFファイル
Pythonで単一の画像をPDF文書に変換

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()

生成されたPDFファイル
Pythonでフォルダ内の複数画像をPDFに変換


無料ライセンスの申請

このAPIは、すべてのユーザーに無料のライセンスを提供する。制限を解除する必要がある場合は、無料ライセンスを申請してください。


この記事では、Pythonプログラムを通してSpire.PDF for Pythonを使用し、単一または複数の画像をPDF文書に変換し、画像の内容のより良い整理、共有、表示を実現する方法について説明します。 このAPIを使用する過程で何らかの問題が発生した場合は、Spire.PDFフォーラムを通じて技術サポートを受けることができます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?