如何在Python中創建PDF文件

查克尼思·賓
查克尼思·賓
2023年6月4日
已更新 2024年10月20日
分享:
This article was translated from English: Does it need improvement?
Translated
View the article in English

使用 Python 自動化創建 PDF 文檔可以讓開發者在其應用程序中生成 PDF。 此功能在多種情景中均顯得非常有益,包括生成發票、報告或其他所需的PDF類型。

本指南重點介紹如何在Python腳本中使用IronPDF程式化創建PDF文件。

Python PDF 函式庫:IronPDF

IronPDF 是一款功能強大的 Python 函式庫,專為從 HTML 創建 PDF 文檔而設計。 其用戶友好的 API 使其能夠輕鬆生成和自定義 PDF,包括以下功能:

  1. 新增文字、圖片及其他類型的內容

  2. 選擇字體、顏色以及控制文件佈局和格式。

    IronPDF 可以無縫整合到.NETJavaPython應用程式中,實現跨多個平台的多功能 PDF 生成。

    除了強大的PDF生成功能外,IronPDF還提供了多種功能。 這些包括檔案格式轉換、從PDF檔案中有效提取文字和數據的能力,以及透過密碼加密來保護PDF檔案的能力。

在 Python 腳本中創建 PDF 文件的步驟

先決條件

要使用 IronPDF Python,請確保電腦已安裝以下必要軟體:

  1. .NET 6.0 SDK:要使用 IronPDF Python,您需要在機器上安裝 .NET 6.0 SDK,因為它依賴於 IronPDF .NET 庫。 從官方 Microsoft 網站下載 .NET 6.0 SDK。

  2. Python:從官方 Python 網站下載並安裝最新版本的 Python 3.x:https://www.python.org/downloads/

    在安裝過程中,請確保選擇將Python添加到系統PATH的選項,這將使其可以從命令行訪問。

  3. Pip:Pip 通常從 Python 3.4 開始與 Python 安裝綁定。 但是,根據您的 Python 安裝情況,您可能需要檢查 pip 是否已經安裝,或者需要另外安裝它。

  4. IronPDF 庫:可以使用 pip 安裝 IronPDF 庫。使用以下命令透過 pip 安裝 IronPDF:
pip install ironpdf

[{i:(在某些系統上,Python 2.x 可能仍是預設版本。 在這種情況下,您可能需要明確使用 pip3 命令而不是 pip,以確保您使用的是 Python 3 的 Pip。

在撰寫程式碼之前的重要步驟

首先,將下面的語句添加到 Python 腳本的頂部。

# Import statement for IronPDF Python
from ironpdf import *
PYTHON

接下來,通過將有效的授權金鑰分配給License的LicenseKey屬性來配置IronPDF(在任何其他代碼之前)。

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

要創建沒有任何浮水印的PDF,您將需要有效的授權密鑰。 購買 授權金鑰或 獲取免費試用 授權金鑰。 否則,繼續下一步,以免費生成帶有水印的新 PDF 文件。

將 HTML 字串轉換為 PDF 文件

使用RenderHtmlAsPdf方法,您可以從 HTML 字串生成新的 PDF 文件。

只需將 HTML 標記作為 RenderHtmlAsPdf 方法的參數即可。 IronPDF 會執行轉換,生成一個 PdfDocument 實例的 PDF 文件。

# Instantiate Renderer
renderer = ChromePdfRenderer()

# Create a PDF from a HTML string using Python
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
PYTHON

一旦成功將 HTML 字串轉換為 PDF 文件,請使用 SaveAs 方法將 PDF 儲存到本地系統上的路徑:

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

一個名為「htmlstring_to_pdf.pdf」的 PDF 檔案將被創建,保留原始 HTML 字串的內容。

在 Python 中從 HTML 檔案生成 PDF

要在 Python 中從本地存儲的 HTML 文件生成 PDF 文檔,請按照下面提供的代碼操作:

# Instantiate Renderer
renderer = ChromePdfRenderer()

# Create a PDF from an existing HTML file using Python
pdf = renderer.RenderHtmlFileAsPdf("example.html")

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

在上述程式碼片段中,使用RenderHtmlFileAsPdf方法從HTML檔案建立PDF文件。您需要提供一個字串或路徑來指定檔案系統中HTML檔案的位置。

IronPDF 像網頁瀏覽器一樣呈現 HTML 元素,包括任何相關的 CSS 和 JavaScript。 這確保了生成的 PDF 中內容的準確呈現。

最後,使用SaveAs方法將生成的 PDF 保存到系統上的特定位置,類似於前面的範例。

在 Python 中從 URL 創建 PDF

要在 Python 中從網頁創建 PDF 文件,請使用RenderUrlAsPdf方法。 只需將所需網頁的 URL 作為參數提供給方法,如下面的代碼片段所示:

# Instantiate Renderer
renderer = ChromePdfRenderer()

# Create a PDF from a URL or local file path
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")

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

有關將網頁轉換為 PDF 的更多信息,請參閱URL to PDF 代碼範例頁面。

探索PDF格式化選項

要自訂 PDF 文件的格式設定,您可以使用 RenderingOptions 屬性。 此類別提供各種可配置的設定,以達到您的PDF文件所需的布局和外觀。 您可以修改的一些設定包括頁面方向、頁面大小、邊距大小等等。 設置RenderingOptions中的屬性,以生成具有所需設定的 PDF 文件。 參考此程式碼範例以了解如何使用RenderingOptions

使用密碼保護 PDF 文件

要為 PDF 檔案添加密碼保護,您可以使用 PdfDocument 物件的 SecuritySettings 屬性。 首先,存取SecuritySettings屬性,並將密碼指定為字串分配到UserPassword屬性。

例如,讓我們考慮保護在「URL 轉 PDF」範例中創建的 PDF 文件:

pdf.SecuritySettings.UserPassword = "sharable"
pdf.SaveAs("protected.pdf")
PYTHON

PDF 檔案已成功設置密碼保護。 在嘗試打開文件時,將會顯示密碼提示。 只需輸入正確的密碼即可訪問PDF文件的內容。

此處閱讀更多關於額外安全性和元數據設定的資訊。

完整的源代码

此教程的完整源文件如下所示:

# Import statement for IronPDF Python
from ironpdf import *

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

# Instantiate Renderer
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
# Export to a file or Stream
pdf.SaveAs("htmlstring_to_pdf.pdf")

# Instantiate Renderer
renderer = ChromePdfRenderer()
# Create a PDF from an existing HTML file using Python
pdf = renderer.RenderHtmlFileAsPdf("example.html")
# Export to a file or Stream
pdf.SaveAs("htmlfile_to_pdf.pdf")

# Instantiate Renderer
renderer = ChromePdfRenderer()
# Create a PDF from a URL or local file path
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")
# Export to a file or Stream
pdf.SaveAs("url.pdf")

pdf.SecuritySettings.UserPassword = "sharable"
pdf.SaveAs("protected.pdf")
PYTHON

IronPDF能夠精確地渲染所有圖像和文字,同時保留其格式。 交互式元素如按鈕仍可點擊,而文字框在生成的PDF文件中保持其可編輯性。

摘要

在這份操作指南中,我們探討了使用 IronPDF 函式庫在 Python 中創建 PDF 的過程。 使用 IronPDF,開發人員可以輕鬆生成和操作 PDF 文件。

該庫提供了一個用戶友好的 API,可以簡化從各種來源(包括 HTML 文件、XML 文檔、URL 等)創建 PDF 的過程。 無論您是在生成報告、發票還是任何其他類型的文件,IronPDF 都提供了完成任務所需的必要工具。

IronPDF是一個商業庫,需要有效的授權。 它具有商業授權,起始價格為$749。 要在生產環境中評估其功能,您可以利用 IronPDF 提供的免費試用

下載該軟體產品。

查克尼思·賓
軟體工程師
Chaknith 致力於 IronXL 和 IronBarcode。他在 C# 和 .NET 方面擁有豐富的專業知識,協助改進軟體並支持客戶。他從用戶互動中獲得的洞察力有助於提高產品、文檔和整體體驗。