Python Create PDF Files

PythonでPDFファイルを作成する方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

数行のコードでHTML文字列、HTMLファイル、またはURLをPDFドキュメントに変換することで、PythonでIronPDFを使用してPDFファイルを作成できます。 IronPDFはレンダリング、フォーマット、セキュリティ機能を自動的に処理します。

クイックスタート:PythonでPDFを作成する

:path=/static-assets/pdf/content-code-examples/how-to/python-create-pdf/quickstart.py
# 1. Install IronPDF: pip install ironpdf
# 2. Import the library
from ironpdf import *
# 3. Create renderer
renderer = ChromePdfRenderer()
# 4. Convert HTML to PDF
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>")
# 5. Save the PDF
pdf.SaveAs("output.pdf")
// このコードスニペットは利用できません!
# 1. Install IronPDF: pip install ironpdf
# 2. Import the library
from ironpdf import *
# 3. Create renderer
renderer = ChromePdfRenderer()
# 4. Convert HTML to PDF
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>")
# 5. Save the PDF
pdf.SaveAs("output.pdf")
PYTHON

PythonでのPDF作成の自動化により、開発者はアプリケーションを離れることなく、請求書、レポート、契約書、証明書といった文書をプログラムで生成することができます。 従来はレイアウトエンジンやフォーマット仕様を使い分ける必要がありましたが、IronPDFのHTML優先アプローチにより、どんなHTML/CSSドキュメントも1回のメソッドコールでピクセル単位で正確なPDFになります。

このハウツーガイドでは、IronPDF for Python における四つの主要なPDF作成ワークフローを扱います: HTML文字列の変換、ローカルHTMLファイルの変換、URLの変換、そしてエクスポート前のパスワード保護の適用です。

PDF作成にはど for Pythonライブラリを使用すべきですか?

IronPDFはHTMLからPDFドキュメントを作成するために特別に構築されたPythonライブラリです。 そのAPIはシンプルです。HTMLマークアップ(またはファイルパス、あるいはURL)を渡すと、保存、スタンプ、マージ、または暗号化が可能なPdfDocumentオブジェクトを受け取ることができます。

このライブラリは、IronPDFの実績ある.NETレンダリングエンジンをラップしており、このエンジンは.NET、Java、およびNode.jsプロジェクトで使用されています。そのため、HTMLからPDFへの出力はプラットフォーム間で一貫しています。 CSS3、HTML5、JavaScriptの実行、ウェブフォント、そしてレスポンシブレイアウトなど、最新のウェブ標準をサポートしています。

PDF生成を超えて、IronPDFはPDFのライフサイクル全体をカバーします。

既存のPDFからのテキストとデータの抽出 ファイル形式の変換(HTML、DOCX、画像からPDF) 複数のPDFの結合

{i:(IronPDF はJavaPython、およびNode.js用に使用できます。 このガイドでは、特にPythonの実装について説明します。)}]

PDFを作成する前の必要条件は何ですか?

PythonでIronPDFを使用するには、次のソフトウェアがインストールされている必要があります:

  1. .NET 6.0 SDK: IronPDF for Pythonは、IronPDF .NETライブラリを基盤として動作します。 公式のMicrosoft .NET 6.0ダウンロードページからダウンロードしてください。
  2. Python 3.x: Pythonの公式サイトからPythonをダウンロードしてインストールしてください。 インストール時にPythonをPATHに追加するオプションを選択してください。
  3. pip: Python 3.4 以降に同梱されています。 ターミナルで pip --version を実行して、インストールが正常に行われたか確認してください。
  4. IronPDF: pip を使用してライブラリをインストールします:
 pip install ironpdf

ご注意一部のシステムでは、Python 2.xがデフォルトバージョンである場合があります。)このような場合は、pipの代わりにpip3コマンドを使用して、Python 3専用のPipを使用していることを確認してください。)}] そのような場合は、Python 3 パッケージをインストールするために pip の代わりに pip3 を使用してください。 インストールエラーが発生した場合は、OSError問題のトラブルシューティングガイドを参照してください。

PDFを作成する前にどのようなコード設定が必要ですか?

次のインポート文をPythonスクリプトの先頭に追加してください:

:path=/static-assets/pdf/content-code-examples/how-to/python-create-pdf/import.py
# Import statement for IronPDF for Python
from ironpdf import *
// このコードスニペットは利用できません!
# Import statement for IronPDF for Python
from ironpdf import *
PYTHON

他の IronPDF 関数を呼び出す前に、LicenseKeyLicense 属性に有効なライセンスキーを割り当てて設定してください。 これは生成されたPDFからトライアルの透かしを削除します。 ライセンスキーの実装に関する詳細な手順については、ライセンスキー設定ガイドをご覧ください。

:path=/static-assets/pdf/content-code-examples/how-to/python-create-pdf/license.py
# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
// このコードスニペットは利用できません!
# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
PYTHON

PDFを透かしなしで作成するには、有効なライセンスキーが必要です。 Purchase a license or obtain a free trial license key. ライセンスキーがない場合、IronPDFはすべての出力PDFにトライアルの透かしを追加します。

HTML文字列をPDFドキュメントに変換するにはどうすればよいですか?

RenderHtmlAsPdf メソッドは、HTML 文字列を直接 PdfDocument オブジェクトに変換します。 有効なHTMLマークアップをメソッドの引数として渡すと、IronPDFがその内蔵のChromiumエンジンを使用してレンダリングします。これにより、JavaScriptを実行し、CSSを適用した後にPDFを作成します。

このアプローチは動的に生成されるコンテンツに対して最も柔軟です。PythonでHTML文字列を作成し(Jinja2のようなテンプレートエンジンや単純な文字列フォーマットを使用)、それをレンダラーに直接渡します。 例えば、請求書の生成とは、注文データをHTMLテンプレートに埋め込み、RenderHtmlAsPdfを呼び出すという一連の処理を1つのステップで行うことを意味します。

:path=/static-assets/pdf/content-code-examples/how-to/python-create-pdf/html-string-to-pdf.py
from ironpdf import *

# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

# Instantiate the Chromium renderer
renderer = ChromePdfRenderer()

# Convert an HTML string to a PDF document
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
// このコードスニペットは利用できません!
from ironpdf import *

# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

# Instantiate the Chromium renderer
renderer = ChromePdfRenderer()

# Convert an HTML string to a PDF document
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
PYTHON

生成されたPDFはどのように保存しますか?

HTML文字列が PdfDocument インスタンスに変換されたら、ターゲットファイルのパスを引数として SaveAs を呼び出します:

:path=/static-assets/pdf/content-code-examples/how-to/python-create-pdf/save-html-string.py
# Save the PDF to a file
pdf.SaveAs("htmlstring_to_pdf.pdf")
// このコードスニペットは利用できません!
# Save the PDF to a file
pdf.SaveAs("htmlstring_to_pdf.pdf")
PYTHON

ファイル htmlstring_to_pdf.pdf は、HTML コンテンツと完全な CSS スタイルを維持した状態で、現在の作業ディレクトリに書き込まれます。 高度なHTMLレンダリング技術には、CSSフレームワーク、JavaScriptフレームワーク、および複雑なレイアウトが含まれています。詳細は、Python用HTMLからPDFへのチュートリアルをご覧ください。

ローカルHTMLファイルからPDFを生成する方法は?

HTMLコンテンツがローカルファイルシステム上のファイルにある場合、RenderHtmlFileAsPdfが適切な方法です。 引数としてファイルパスを指定してください。

:path=/static-assets/pdf/content-code-examples/how-to/python-create-pdf/html-file-to-pdf.py
from ironpdf import *

# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

# Instantiate the renderer
renderer = ChromePdfRenderer()

# Create a PDF from a local HTML file
pdf = renderer.RenderHtmlFileAsPdf("example.html")

# Save the output PDF
pdf.SaveAs("htmlfile_to_pdf.pdf")
// このコードスニペットは利用できません!
from ironpdf import *

# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

# Instantiate the renderer
renderer = ChromePdfRenderer()

# Create a PDF from a local HTML file
pdf = renderer.RenderHtmlFileAsPdf("example.html")

# Save the output PDF
pdf.SaveAs("htmlfile_to_pdf.pdf")
PYTHON

IronPDFは、相対パスをHTMLファイルの場所に対して相対的なCSSファイル、画像、およびスクリプト用に解決します。 レンダラーはPDFを生成する前にすべての関連アセットをロードするため、結果はブラウザが表示するものと一致します。 これは、HTMLと資産がディスク上のファイルとして管理されているテンプレート文書には信頼できるオプションです。

ヒントローカルHTMLファイルを扱う際は、すべてのリンクされたアセット(スタイルシート、フォント、画像)がHTMLファイルに対して相対パスを使用することを確認してください。IronPDFはレンダリング前にこれらのパスを解決し、完全で自己完結型のPDFを生成します。

PythonでURLからPDFを作成するにはどうすればよいですか?

RenderUrlAsPdf を使用して、ライブWebページをPDFに変換します。 引数として完全なURLを提供してください。

:path=/static-assets/pdf/content-code-examples/how-to/python-create-pdf/url-to-pdf.py
from ironpdf import *

# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

# Instantiate the renderer
renderer = ChromePdfRenderer()

# Convert a web page to PDF
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")

# Save the output PDF
pdf.SaveAs("url.pdf")
// このコードスニペットは利用できません!
from ironpdf import *

# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

# Instantiate the renderer
renderer = ChromePdfRenderer()

# Convert a web page to PDF
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")

# Save the output PDF
pdf.SaveAs("url.pdf")
PYTHON

URLレンダリング機能は、動的JavaScriptコンテンツ、AJAX呼び出し、レスポンシブレイアウトなどの最新のWeb技術をサポートしています。 IronPDFは、JavaScriptの実行を含むページが完全にロードされるまで待機してからPDFをキャプチャするため、すべての動的コンテンツが正確にキャプチャされます。

URL変換の例をもっと見るには?

ウェブページをPDFに変換する追加の例は、URL to PDFコード例のページでご覧いただけます。 認証が必要なウェブページについては、ウェブサイトおよびシステムログインのガイドをご覧ください。

PDFの書式オプションをカスタマイズするにはどうすればよいですか?

RenderingOptionsのプロパティは、出力PDFの書式設定とレイアウトを制御します。 一般的な設定には、ページサイズ、ページの向き、余白のサイズ、ズームレベルが含まれます。

:path=/static-assets/pdf/content-code-examples/how-to/python-create-pdf/rendering-options.py
from ironpdf import *

License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

renderer = ChromePdfRenderer()

# Configure rendering options
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.MarginBottom = 20
renderer.RenderingOptions.MarginLeft = 25
renderer.RenderingOptions.MarginRight = 25

# Render with custom formatting
pdf = renderer.RenderHtmlAsPdf("<h1>Custom Formatted PDF</h1><p>Content here.</p>")
pdf.SaveAs("formatted.pdf")
// このコードスニペットは利用できません!
from ironpdf import *

License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

renderer = ChromePdfRenderer()

# Configure rendering options
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.MarginBottom = 20
renderer.RenderingOptions.MarginLeft = 25
renderer.RenderingOptions.MarginRight = 25

# Render with custom formatting
pdf = renderer.RenderHtmlAsPdf("<h1>Custom Formatted PDF</h1><p>Content here.</p>")
pdf.SaveAs("formatted.pdf")
PYTHON

利用可能なフォーマット設定は何ですか?

RenderingOptions プロパティは、用紙サイズ、ページの向き、余白、および Zoom の設定を公開します。 以下の表は、最も一般的に使用されるプロパティを一覧にしたものです。

PythonでPDF形式に使用される一般的なRenderingOptionsプロパティ
プロパティタイプ翻訳内容
用紙サイズPdfPaperSize標準ページサイズ(A4、レター、リーガル)またはカスタムサイズ
ペーパーオリエンテーションPdfPaperOrientation縦向きまたは横向きのページ方向
MarginTop / MarginBottomint (mm)ページの上下のマージン(ミリメートル単位)
MarginLeft / MarginRightint (mm)左右ページ余白(ミリメートル)
HtmlHeader / HtmlFooterHtmlHeaderFooterページ番号サポート付きのHTMLヘッダーとフッターを実行する

追加の設定を含む完全なリファレンスについては、PDF生成設定のコード例をご覧ください。

ヒントページ番号付きのヘッダーとフッターを追加するには、RenderingOptionsHtmlHeader および HtmlFooter プロパティを使用してください。 ヘッダーとフッターの例は、完全な構文を示しています。

PDFファイルをパスワードで保護するには?

PDF/Aにパスワード保護を設定するには、UserPasswordプロパティを設定します。 オーナーパスワードも設定して、読み取りアクセスとは別に編集許可を制限することができます。

URLの例で作成されたPDFの保護を検討してください。

:path=/static-assets/pdf/content-code-examples/how-to/python-create-pdf/password-protect.py
from ironpdf import *

License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

renderer = ChromePdfRenderer()
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")

# Set user password (required to open the PDF)
pdf.SecuritySettings.UserPassword = "sharable"

# Set owner password (controls permissions)
pdf.SecuritySettings.OwnerPassword = "admin123"

# Configure document permissions
pdf.SecuritySettings.AllowUserPrinting = True
pdf.SecuritySettings.AllowUserCopyPasteContent = False

# Save the password-protected PDF
pdf.SaveAs("protected.pdf")
// このコードスニペットは利用できません!
from ironpdf import *

License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

renderer = ChromePdfRenderer()
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")

# Set user password (required to open the PDF)
pdf.SecuritySettings.UserPassword = "sharable"

# Set owner password (controls permissions)
pdf.SecuritySettings.OwnerPassword = "admin123"

# Configure document permissions
pdf.SecuritySettings.AllowUserPrinting = True
pdf.SecuritySettings.AllowUserCopyPasteContent = False

# Save the password-protected PDF
pdf.SaveAs("protected.pdf")
PYTHON

パスワード保護は実際にどのように機能しますか?

任意のPDFビューアで protected.pdf を開くと、ドキュメントの内容が表示される前にユーザーパスワードの入力を求められます。 オーナーパスワードは、セキュリティ設定を変更するための管理アクセスを提供します。 AllowUserCopyPasteContent = Falseを設定すると、読者がPDFからテキストをコピーできなくなる一方で、印刷は可能になります。

ドキュメントの許可をさらに制御するには、セキュリティとメタデータ設定の例およびPDF暗号化と復号化ガイドをご覧ください。

完全なソースコードとは何ですか?

以下の組み合わせ例では、すべてのPDF作成ワークフローを1つ for Pythonスクリプトで示しています。

:path=/static-assets/pdf/content-code-examples/how-to/python-create-pdf/complete-example.py
from ironpdf import *

# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

# --- HTML string to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
pdf.SaveAs("htmlstring_to_pdf.pdf")

# --- Local HTML file to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlFileAsPdf("example.html")
pdf.SaveAs("htmlfile_to_pdf.pdf")

# --- URL to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")
pdf.SaveAs("url.pdf")

# --- Password-protected PDF ---
pdf.SecuritySettings.UserPassword = "sharable"
pdf.SecuritySettings.OwnerPassword = "admin123"
pdf.SecuritySettings.AllowUserPrinting = True
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SaveAs("protected.pdf")
// このコードスニペットは利用できません!
from ironpdf import *

# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

# --- HTML string to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
pdf.SaveAs("htmlstring_to_pdf.pdf")

# --- Local HTML file to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlFileAsPdf("example.html")
pdf.SaveAs("htmlfile_to_pdf.pdf")

# --- URL to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")
pdf.SaveAs("url.pdf")

# --- Password-protected PDF ---
pdf.SecuritySettings.UserPassword = "sharable"
pdf.SecuritySettings.OwnerPassword = "admin123"
pdf.SecuritySettings.AllowUserPrinting = True
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SaveAs("protected.pdf")
PYTHON

IronPDFは、フォーマットを保ちながらすべての画像とテキストを正確にレンダリングします。 生成されたPDF内では、ボタンのようなインタラクティブ要素は機能を保ち、テキストボックスの編集可能性も維持されます。

PythonでPDFを作成するための次のステップは何ですか?

このガイドでは、IronPDF for Pythonにおける3つの主要なPDF作成方法、すなわち、HTML文字列、ローカルHTMLファイル、およびURLを取り上げ、出力ファイルを保護するためのパスワード保護についても説明しました。 各メソッドは、保存前にスタンプの追加、結合、分割、または暗号化といったさらなる処理が可能な PdfDocument オブジェクトを生成します。

これらのワークフローを拡張する準備はできていますか? 次のリソースは、実際的な次のステップを示しています:

IronPDFは、本番環境での使用には有効なライセンスが必要です。 ライセンスについては、$999から始まります。 Start a free 30-day trial to evaluate the library without restrictions, or view licensing options for the full product suite.

完全なソースコードをダウンロードしてください。

よくある質問

Python用のIronPDFをどのようにインストールしますか?

ターミナルでpip install ironpdfを実行します。また、Python 3.xおよび.NET 6.0 SDKがインストールされている必要があります。IronPDF for PythonはIronPDF .NETエンジン上で動作します。

PythonでHTMLをPDFに変換する最も簡単な方法は何ですか?

ChromePdfRendererインスタンスを作成し、その後でrenderer.RenderHtmlAsPdf('

Hello

')を呼び出します。このメソッドは任意の有効なHTML文字列を受け入れ、PdfDocumentオブジェクトを返し、pdf.SaveAs('output.pdf')で保存できます。

ローカルHTMLファイルからPDFを生成できますか?

はい。renderer.RenderHtmlFileAsPdf('path/to/file.html')を使用してください。IronPDFは、レンダリング前にHTMLファイルの場所に対してリンクされたCSS、画像、スクリプトを解決します。

ライブWebページURLをPDFに変換するにはどうすればよいですか?

renderer.RenderUrlAsPdf('https://example.com')を呼び出します。IronPDFはPDFをキャプチャする前に、JavaScriptの実行を含むページ全体の読み込みを待ちます。

生成されたPDFをパスワードで保護するにはどうすればよいですか?

pdf.SecuritySettings.UserPasswordを設定してファイルを開く際にパスワードを要求し、pdf.SecuritySettings.OwnerPasswordを設定して編集権限を制限します。その後、保護されたファイルを書き込むためにpdf.SaveAsを呼び出します。

生成されたPDFのページサイズと余白を制御できますか?

はい。renderer.RenderingOptions.PaperSize(例:PdfPaperSize.A4)を構成し、MarginTopMarginBottomMarginLeftMarginRightをレンダリングメソッドを呼び出す前にミリメートル単位で設定します。

IronPDFはHTMLからPDFへの変換でJavaScript実行をサポートしていますか?

はい。IronPDFはChromiumベースのレンダリングエンジンを使用してJavaScriptを実行し、AJAX呼び出しを処理し、PDF生成前にCSSを適用するため、動的コンテンツが正確にキャプチャされます。

生成後にPDFをマージまたは圧縮できますか?

はい。IronPDFは、複数のPdfDocumentオブジェクトを1つのファイルにマージするためのメソッドと、既存のPDFを圧縮してファイルサイズを削減するためのメソッドを提供しています。どちらの操作も、レンダリングメソッドによって返されるPdfDocumentオブジェクトで動作します。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
バージョン: 2026.5 just released
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか?
サンプルを実行するHTML が PDF に変換されるのを確認します。