製品比較

Python向けIronPDFとPyPDFの比較

公開済み 2023年8月7日
共有:

イントロダクション

PDF (ポータブルドキュメントフォーマット) は、異なるプラットフォーム間でドキュメント情報のレイアウトとフォーマットを保持するために広く使用されているファイル形式です。 それらは、開くために使用されるデバイスやオペレーティングシステムに関係なく、一貫した外観を維持する能力があるため、さまざまな業界で非常に人気があります。 PDFは、レポート、請求書、フォーム、電子書籍、カスタムデータ、およびその他の重要なドキュメントを共有するために一般的に使用されています。

PythonでPDFファイルを扱うことは、多くのプロジェクトにおいて重要な側面となっています。 Pythonには、PDFファイルの操作を簡素化するいくつかのライブラリがあり、情報の抽出、新しいドキュメントの作成、既存のものの結合や分割、その他のPDF関連のタスクを実行することが容易になります。

この記事では、PDFファイルを操作するために設計された二つの有名なPythonライブラリ、PyPDFIronPDFの徹底比較を行います。 どちらのライブラリの機能と能力を評価することによって、開発者がそれぞれのソフトウェアアプリケーションのニーズに最適なものを選択できるよう、有益な洞察を提供することを目指しています。

これらのライブラリはPDFの操作を効率化する強力なツールを提供し、開発者がPythonアプリケーション内でPDFドキュメントを効率的に扱えるようにします。 それでは、各ライブラリの強みを比較して、PDF関連タスクの効率化を図りましょう。

PyPDF - ピュアPython PDFライブラリ

PyPDF(パイPDF)は、PDFファイルの読み取り、書き込み、暗号解除、およびPDFドキュメントの操作のための基本機能を提供する純粋なPython PDFライブラリです。 開発者は、PDFからテキストや画像を抽出したり、複数のPDFファイルを結合したり、大きなPDFを小さいものに分割したりと、さまざまな操作が可能です。 PyPDFは、そのシンプルさと使いやすさで知られており、簡単なPDFタスクに適した選択肢です。

PDFドキュメントを扱うための包括的な機能セットを提供しており、幅広いPDF関連作業に最適な選択肢です。

機能

PyPDF は、以下の機能を備えた Python 用 PDF ライブラリです:

  • PDFファイルの読み取り: 既存のPDFファイルからテキスト、画像、およびメタデータを抽出します。
  • PDFファイルの作成: テキストと画像を使用して、新しいPDFをゼロから作成するか、既存のPDFを変更します。
  • PDFファイルの結合: 複数のPDFファイルを1つのドキュメントに結合します。
  • PDFファイルの分割: PDFを分割して、各ファイルに1ページ以上を含む個別のファイルにします。
  • ページの回転およびオーバーレイ: ページを回転させ、PDFにウォーターマークまたはオーバーレイを追加します。
  • PDFファイルの暗号化と復号化: PDFにセキュリティを追加し、暗号化と復号化を行う。
  • テキストの抽出: PDFからプレーンテキストを取得するか、ページ内の特定の領域から取得します。
  • 画像の抽出: PDFに埋め込まれた画像を取得。
  • PDFファイルの操作: PDFファイル内のページをコピー、削除、または再配置します。
  • フォームフィールドの入力: PDFのフォームフィールドをプログラムで入力します。

IronPDF - Python PDF ライブラリ

IronPDFは、IronPDFの.NETライブラリを基に構築された、Pythonのための包括的なPDF操作ライブラリです。 強力なAPIを提供し、HTMLをPDFに変換、PDF注釈とフォームフィールドの処理、そして複雑なPDF操作を効率的に実行するなどの高度な機能を持っています。 IronPDFは、強力なPDF処理、パフォーマンス、および広範な機能サポートを必要とするプロジェクトに最適です。

IronPDFは、PDF処理タスクをシームレスに処理できるPython PDFライブラリです。 それはPython開発者向けに信頼性が高く、多機能なPDF操作ソリューションを提供します。 IronPDFを使用すると、複数のページ内のPDFからコンテンツを簡単に生成、編集、抽出できます。これにより、さまざまなPDF関連のアプリケーションに最適な選択肢となります。

機能

以下はIronPDFの主な機能です:

  • PDF生成IronPDFは、開発者がゼロからPDFドキュメントを作成したり、HTMLコンテンツをPDF形式に変換することを可能にし、動的で視覚的に魅力的なレポートやドキュメントを生成することを容易にします。
  • 高度なテキストおよび画像操作開発者は、PDFファイル内のテキストや画像を簡単に操作できます。 IronPDFは、テキストの追加、編集、フォーマット、画像の挿入、サイズ変更、および精密な位置調整の機能を提供します。
  • PDFの結合およびPDFの分割: IronPDFは、複数のPDFファイルを1つのドキュメントに結合したり、1つのPDFを複数の別々のファイルに分割したりすることを可能にし、PDFコンテンツの管理に柔軟性を提供します。
  • PDFフォームサポートIronPDFを使用すると、開発者はPDFフォームを操作でき、フォームフィールドの入力、フォームデータの抽出、インタラクティブなPDFの作成が可能です。
  • PDFセキュリティおよび暗号化: IronPDFは、PDFドキュメントにパスワード保護と暗号化を追加する機能を提供し、データのセキュリティと機密性を確保します。
  • PDFアノテーション開発者は、PDF内で協力と可読性を向上させるために、コメント、ハイライト、およびブックマークなどの注釈を追加できます。
  • ヘッダーとフッターIronPDFは、PDFページにヘッダーとフッターを追加することを可能にし、ドキュメントにブランドとコンテキストを提供します。
  • バーコード生成IronPDFは、HTMLを使用してPDFドキュメントに直接さまざまな種類のバーコードおよびQRコードを生成することを可能にします。
  • 高性能: IronPDFの.NETライブラリを基盤として構築されているIronPDFは、大規模なPDFファイルや複雑な操作を処理する際に高性能と効率性を提供します。

    記事は次のようになります:

  1. Pythonプロジェクトを作成する

  2. PyPDFのインストール

  3. IronPDFのインストール

  4. PDFドキュメントを作成する

  5. PDFファイルの結合

  6. PDFファイルの分割

  7. PDFファイルからのテキスト抽出

  8. ライセンス

  9. 結論

1. Pythonプロジェクトを作成する

統合開発環境の使用(IDE (統合開発環境))Pythonプロジェクトにおける生産性を大幅に向上させることができます。 人気の選択肢の中で、私はPyCharmを使用するつもりです。それは、インテリジェントなコード補完、強力なデバッグ機能、バージョン管理システムとのシームレスな統合で際立っています。 インストールされていない場合は、JetBrainsのウェブサイトからダウンロードできます。(https://www.jetbrains.com/pycharm/)または、VS CodeなどのPythonプログラム用IDE/テキストエディタを使用することもできます。

PyCharm で Python プロジェクトを作成するには:

  1. PyCharmを起動し、PyCharmのウェルカム画面で「Create New Project」をクリックするか、メニューからFile > New Projectに進みます。

    PythonのためのIronPDFとPyPDFの比較: 図1 - PyCharm

  2. Pythonインタプリタを選択します。 インタープリタを設定していない場合は、歯車アイコンをクリックして新しいインタープリタを設定してください。

  3. プロジェクトの場所とテンプレートを選択してください。

  4. プロジェクト名と設定を入力し、作成をクリックしてください。

    Python向けIronPDFとPyPDFの比較: 図2 - 新プロジェクト

  5. Pythonプロジェクトをコーディング、実行、およびデバッグを開始します。

2. PyPDFのインストール

PyPDF は純粋な Python ライブラリであり、複数の方法でインストールできます。 それはコマンドプロンプトとPyCharmの両方を使用してインストールすることができます。

2.1. コマンドプロンプトの使用

  1. コンピュータでコマンドプロンプトまたはターミナルを開きます。

  2. PyPDFをインストールするには、次のpipコマンドを使用してください:
    :ProductInstall
  1. PyPDFのインストールが完了するのを待ちます。 PyPDFがインストールされたことを示す成功メッセージが表示されるはずです。

    PyCharmターミナルで同じ手順を使用してPyPDFをインストールすることができます。

    注意: PythonはシステムPATH環境変数に追加する必要があります。

2.2. PyCharmの使用

  1. PyCharm IDEを開きます。

  2. 新しいPythonプロジェクトを作成するか、既存のプロジェクトを開く。

  3. プロジェクト内に入ったら、上部メニューのファイルをクリックし、設定を選択してください。

  4. 設定ウィンドウで、「Project: 」に移動し、「Python Interpreter」をクリックしてください。

  5. Pythonインタープリタウィンドウで、新しいパッケージを追加するために"+"アイコンをクリックします。

    Python 向け IronPDF と PyPDF の比較: 図3 - Python インタープリタ

  6. Available Packages」ウィンドウで、「PyPDF」を検索してください。

    IronPDF for PythonとPyPDFの比較: 図4 - PyPDF

  7. リストから「PyPDF」を選択し、「Install Package」ボタンをクリックしてください。

  8. PyCharmがPyPDFをダウンロードしてインストールするのを待ってください。

3. IronPDF インストール

前提条件

IronPDF Pythonは、その基盤として強力な.NET 6.0技術を活用しています。 したがって、IronPDF Pythonを効果的に利用するためには、システムに.NET 6.0ランタイムがインストールされていることが重要です。 LinuxおよびMacユーザーは、Microsoftの公式ウェブサイトから.NETをダウンロードしてインストールする必要があるかもしれません。(https://dotnet.microsoft.com/en-us/download/dotnet/6.0)このPythonパッケージで作業を始める前に。 .NET 6.0ランタイムが存在することを確認することで、IronPDF Pythonを使用したPDF処理タスクの統合がシームレスになり、最適なパフォーマンスが実現されます。

コマンドプロンプトの使用

  1. コンピュータでコマンドプロンプトまたはターミナルを開きます。

  2. IronPDFをインストールするには、次のpipコマンドを使用します:
    :PackageInstall
  1. インストールが完了するのを待ちます。 IronPDFがインストールされたことを示す成功メッセージが表示されるはずです。

3.2. PyCharmの使用

  1. コンピュータでPyCharm IDEを開いてください。

  2. 新しいPythonプロジェクトを作成するか、既存のプロジェクトを開く。

  3. プロジェクトの中に入ったら、上部メニューで「File」をクリックし、「Settings」を選択してください。

  4. 設定ウィンドウで "Project: " に移動し、「Python Interpreter」をクリックします。

  5. Pythonインタープリタウィンドウで、新しいパッケージを追加するために"+"アイコンをクリックします。

  6. Available Packages」ウィンドウから、「ironpdf」を検索します。

    IronPDF for PythonとPyPDFの比較: 図5 - IronPDF

  7. リストから「ironpdf」を選択し、「Install Package」ボタンをクリックしてください。

  8. IronPDFがダウンロードされ、インストールされるまでお待ちください。 IronPDFがインストールされたことを示す成功メッセージが表示されます。

    次に、両方のライブラリがインストールされ、使用準備が整いました。 比較そのものに移りましょう。

PDFドキュメントの作成

4.1. PyPDFの使用

PyPDFは、新しいPDFファイルを作成するための基本的な機能を提供します。 しかし、HTMLコンテンツをPDFに直接変換するための組み込みのメソッドはありません。 新しいPDFをPyPDFで作成するには、既存のPDFにコンテンツを追加するか、新しい空のPDFを作成してからテキストや画像を追加する必要があります。 次のコードはPDFファイルを作成するタスクを達成するのに役立ちます:

from pypdf import PdfWriter, PdfReader

# Create a new PDF file
pdf_output = PdfWriter()

# Add a new blank page
page = pdf_output.add_blank_page(width=610, height=842)  # Width and height are in points (1 inch = 72 points)

# Read content from an existing PDF
with open('input.pdf', 'rb') as existing_pdf:
    existing_pdf_reader = PdfReader(existing_pdf)
    # Merge content from the first page of the existing PDF
    page.merge_page(existing_pdf_reader.pages [0])

# Save the new PDF to a file
with open('output.pdf', 'wb') as output_file:
    pdf_output.write(output_file)
PYTHON

入力ファイルには28ページが含まれており、最初のページのみが新しいPDFファイルに追加されます。出力は以下の通りです:

Python 用 IronPDF と PyPDF の比較: 図 6 - PDF 出力

4.2. IronPDFの使用方法

IronPDFは、HTMLコンテンツから直接新しいPDFファイルを作成するための高度な機能を提供します。 これにより、追加の手順を必要とせずに動的なレポートやドキュメントを生成することが便利になります。 こちらがサンプルコードです:

import ironpdf

ironpdf.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"

# Create a PDF from a HTML string using Python
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This PDF is created using IronPDF for Python</p>")

# Export to a file or Stream
pdf.SaveAs("output.pdf")

# Advanced Example with HTML Assets
# Load external html assets Images, CSS and JavaScript.
# An optional BasePath 'C\site\assets\' is set as the file location to load assets from
myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
PYTHON

上記のコードでは、まずライセンスキーを適用してIronPDFのフル機能を利用しました。 ライセンスキーなしでも使用できますが、作成されたPDFファイルには透かしが表示されます。 次に、2つのPDFドキュメントを作成します。最初はHTML文字列をコンテンツとして使用し、次にアセットを使用します。 出力は以下の通りです:

IronPDF For Python と PyPDF の比較: 図7 - IronPDF 出力

PDFファイルの結合

5.1. PyPDFの使用

PyPDFは、1つのPDFから別のPDFにページを追加することで、複数のページやドキュメントを1つのPDFに統合することができます。 リスト内のすべてのPDFファイルの入力パスを追加し、appendメソッドを使用してマージし、単一のファイルを生成します。

from pypdf import PdfWriter

merger = PdfWriter()

for pdf in ["file1.pdf", "file2.pdf", "file3.pdf"]:
    merger.append(pdf)

merger.write("merged-pdf.pdf")
merger.close()
PYTHON

5.2. IronPDFの使用

IronPDFは、異なるPDFソースからのコンテンツを統合することを簡単にする、ドキュメントを1つに結合するための同様の機能も提供しています。

import ironpdf

ironpdf.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"

html_a = """<p> [PDF_A] </p>
            <p> [PDF_A] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_A] 2nd Page</p>"""

html_b = """<p> [PDF_B] </p>
            <p> [PDF_B] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_B] 2nd Page</p>"""

renderer = ironpdf.ChromePdfRenderer()

pdfdoc_a = renderer.RenderHtmlAsPdf(html_a)
pdfdoc_b = renderer.RenderHtmlAsPdf(html_b)
merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b)

merged.SaveAs("Merged.pdf")
PYTHON

6. PDFファイルの分割

6.1. PyPDFの使用

PyPDFはPythonライブラリであり、単一のPDFを複数の個別のPDFに分割し、それぞれが1ページ以上のPDFページを含むことが可能です。

from pypdf import PdfReader, PdfWriter

# Open the PDF file
pdf_file = open('input.pdf', 'rb')

# Create a PdfFileReader object
pdf_reader = PdfReader(pdf_file)

# Split each page into separate PDFs
for page_num in range(len(pdf_reader.pages)):
    pdf_writer = PdfWriter()
    pdf_writer.add_page(pdf_reader.pages [page_num])
    output_filename = f'page_{page_num + 1}_pypdf.pdf'
    with open(output_filename, 'wb') as output_file:
        pdf_writer.write(output_file)

# Close the PDF file
pdf_file.close()
PYTHON

上記のコードは、28ページのPDFドキュメントを分割し、各ページを個別のページとして分けて、28個の新しいPDFファイルとして保存します。

6.2. IronPDFの使用

IronPDFは、PDFの分割機能も提供しており、ユーザーが単一のPDFを複数のPDFファイルに分割し、それぞれが単一のPDFページを持つようにすることができます。 それにより、複数ページがあるPDFの特定のページを分割することができます。 次のコードは、ドキュメントを複数のファイルに分割するのに役立ちます:

import ironpdf

ironpdf.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"

html = """<p> Hello Iron </p>
            <p> This is 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> This is 2nd Page</p>
            <div style='page-break-after: always;'></div>
            <p> This is 3rd Page</p>"""

renderer = ironpdf.ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf(html)

# take the first page
page1doc = pdf.CopyPage(0)
page1doc.SaveAs("Split1.pdf")

# take the pages 2 & 3
page23doc = pdf.CopyPages(1, 2)
page23doc.SaveAs("Split2.pdf")
PYTHON

以下のリンクにアクセスしていただくと、PDFファイルの読み込み、PDFページの回転、ページのトリミング、オーナー/ユーザーパスワードの設定やその他のセキュリティオプションに関する詳細情報を確認できます。IronPDF Python コード例 ページ.

PDFファイルからのテキスト抽出

使用PyPDF

7.1. PyPDFを使用する

PyPDFは、PDFからテキストを抽出するための簡単な方法を提供します。 PDFのテキストコンテンツを読み取るための PdfReader クラスを提供しています。

from pypdf import PdfReader

reader = PdfReader("input.pdf")
page = reader.pages [0]
print(page.extract_text())
PYTHON

7.2. IronPDFの使用

IronPDFは、PdfDocumentクラスを使用してPDFからテキストを抽出することもサポートしています。 PDFからテキストコンテンツを取得するために、ExtractAllTextというメソッドを提供します。 ただし、無料バージョンのIronPDFはPDFドキュメントから少数の文字しか抽出しません。 PDFから全文を抽出するには、IronPDFはライセンスされたものである必要があります。 PDFファイルから内容を抽出するためのコードサンプルをご紹介します:

import ironpdf

ironpdf.License.LicenseKey = "YOUR-LICENSE-KEY-HERE"

# Load existing PDF document
pdf = ironpdf.PdfDocument.FromFile("input.pdf")
# Extract text from PDF document
all_text = pdf.ExtractAllText()
print(all_text)
PYTHON

テキストの抽出に関する詳細を知りたい場合は、こちらをご覧くださいPDFテキストをPythonへ例。

8. ライセンス

PyPDF

(Note: Since "PyPDF" is a branded term and the instruction specifies to preserve original terms for Japanese while ensuring they are easily understandable, no translation is provided.)

PyPDFは、オープンソースソフトウェアライセンスとして広く知られているMITライセンスの下で配布されています。 MITライセンスは、ユーザーが制限なくPyPDFライブラリを自由に使用、修正、配布、およびサブライセンスすることを許可します。 ユーザーは、自身のアプリケーションにPyPDFを使用する際、そのソースコードを開示する必要がありません。そのため、個人的および商業的プロジェクトの両方に適しています。

MITライセンスの全文は通常PyPDFのソースコードに含まれており、ユーザーはライブラリの配布内にある「LICENSE」ファイルでそれを見つけることができます。 さらに、PyPDF GitHubリポジトリ(https://github.com/py-pdf/pypdf)は、ライブラリの最新バージョンおよび関連するライセンス情報にアクセスするための主要な情報源として機能します。

IronPDF

IronPDFは商用ライブラリであり、オープンソースではありません。 これはIron Software LLCによって開発および配布されています。 IronPDFの使用には、Iron Softwareからの有効なライセンスが必要です。 評価目的のための試用版や商業利用のための有料ライセンスなど、さまざまな種類のライセンスが利用可能です。

IronPDFは商業製品であるため、オープンソースの代替製品に比べて追加の機能や技術サポートを提供しています。 IronPDFのライセンスを取得するには、ユーザーは公式のIron Softwareウェブサイトにアクセスできます。([https://ironpdf.com/python/licensing/

私たちのソフトウェアのライセンスについて知っておく必要があるすべての情報は、このページに記載されています。プロジェクトの要件に最適なオプションを選択するのに役立ててください。

ライセンスオプション

  • Lite License: 小規模な開発プロジェクトやテスト環境に最適です。このライセンスは、限定された機能とサポートを提供します。
  • Plus License: 中規模のプロジェクトに対応しています。このオプションでは、より多くの機能と基本的なサポートが含まれています。
  • Professional License: 大規模な商業プロジェクトに理想的です。このライセンスは、包括的な機能と優先的サポートを提供します。
  • Unlimited License: 企業全体での使用に最適で、無制限の展開とプレミアムサポートを提供します。

各ライセンスの詳細については、上記のリンクをクリックして確認してください。また、特定のニーズに応じたカスタムライセンスについてもお問合せください。

私たちの目標は、お客様のプロジェクトが成功するために必要なすべてのツールとサポートを提供することです。](/python/licensing/))利用可能なライセンスオプション、価格、およびサポートの詳細を確認するために。 Liteパッケージは$liteLicenseから始まり、永続ライセンスとなります。

IronPDF for PythonとPyPDFの比較: 図8 - IronPDFライセンス

結論

サマリー

PyPDFは、PDFファイルを操作するための強力でユーザーフレンドリーなPythonライブラリです。 PDFの読み取り、書き込み、結合、および分割の機能が備わっているため、PDF操作タスクに欠かせないツールです。 PDFからテキストを抽出する、ゼロから新しいPDFを作成する、既存のドキュメントをマージおよび分割する必要がある場合でも、PyPDFは信頼性が高く効率的なソリューションを提供します。 PyPDFの機能を活用することで、Python開発者はPDF関連のワークフローを合理化し、生産性を向上させることができます。

IronPDFは、Python向けの包括的かつ効率的なPDF操作ライブラリであり、PDFファイルの読み取り、作成、結合、および分割のための幅広い機能を提供します。 動的なPDFレポートを生成する必要がある場合でも、既存のPDFからドキュメント情報を抽出する場合でも、複数のドキュメントを結合する場合でも、IronPDFは信頼できて使いやすいソリューションを提供します。 IronPDFの機能を活用することで、Python開発者はPDF関連のワークフローを効率化し、生産性を向上させることができます。

全体的な比較では、PyPDFは基本的なPDF操作に適した軽量で使いやすいライブラリです。 それはシンプルなPDF要件を持つプロジェクトにとって良い選択です。 一方、IronPDFは、より広範なAPIと堅牢なパフォーマンスを提供し、高度なPDF処理機能、大規模なPDFファイルの処理、および複雑なタスクの実行が必要なプロジェクトに最適です。

結論

両方のライブラリには、一般的なPDFタスクのための優れたコーディング機能が備わっています。 PyPDFは、簡単な操作や迅速な実装に適しているのに対し、IronPDFは複雑なPDF関連タスクを処理するためのより広範で多用途なAPIを提供します。

パフォーマンスの面では、IronPDFは特に大規模なPDFファイルや複雑なPDF操作を必要とするタスクにおいて、PyPDFを上回る可能性が高いです。

二つのライブラリの選択は、プロジェクトの特定のニーズとPDF関連のタスクの複雑さに依存します。

IronPDFも利用可能です無料試用商用モードでその完全な機能をテストするために。 Python 用 IronPDF をダウンロードするこれ.

< 以前
Wkhtmltopdfを使用しないPython HTML to PDF(代替チュートリアル)

準備はできましたか? バージョン: 2024.11.1 新発売

無料 pip インストール ライセンスを表示 >