使用IRONPDF FOR PYTHON

如何在 Python 中創建包含文本和圖像的 PDF 文件

發佈 2024年3月6日
分享:

在這個數位化時代,生成包含動態內容(如文字和圖片)的 PDF 文件是一項常見需求。 Python 是一種受歡迎的程式語言,可以輕鬆自動化常規流程,以節省時間和精力。 擁有一個多功能的程式庫來建立包含文字和圖片的 PDF 檔案在 Python 中自動生成報告、收據或發票可以非常方便。 IronPDF,一個多功能的 Python 庫,簡化了創建包含豐富內容的 PDF 的過程。

在本文中,我們將探討如何在 Python 專案中使用 IronPDF 生成包含文字和圖像的 PDF。

如何在 Python 中創建包含文本和圖像的 PDF 文件

  1. 安裝 IronPDF for Python 庫

  2. 實例化 ChromePdfRenderer

  3. 新增文字內容

  4. 添加圖片作為二進位資料

  5. 創建包含文字和圖像的 HTML 字串

  6. 使用 RenderHtmlAsPdf 將 HTML 渲染為 PDF

  7. 使用 SaveAs 方法儲存 PDF 檔案

IronPDF 介紹

IronPDF是一個功能豐富的Python庫,為開發人員提供強大的工具用於創建、操作和處理 PDF 文件。 使用IronPDF,您可以輕鬆將文字、圖像、表格和其他元素合併到PDF中,使其成為從報告生成到文件創建等各種應用程序的寶貴資產。

如何使用 Python 創建包含文字和圖片的 PDF 文件: 圖 1 - IronPDF for Python:Python PDF 庫

IronPDF 的主要功能:

  • 輕鬆整合: IronPDF 能夠無縫整合到流行的 Python 開發環境中,使使用 PyCharm 等工具的開發者能夠輕鬆使用。
  • 豐富文本支援: 支援豐富文本格式,讓開發人員可以輕鬆創建視覺上引人注目的PDF文件。
  • 影像處理: IronPDF 允許在 PDF 中插入圖片,提供設計和自訂文件的靈活性。
  • 跨平台相容性: IronPDF 支援跨多個平台,確保生成的 PDF 能夠被一致地查看和操作。

先決條件

在使用 IronPDF 創建 PDF 文件的過程之前,請確保您已具備以下必要條件:

  1. 已安裝 Python: 您的電腦上需要安裝 Python。 您可以從 Python 官方網站下載並安裝最新版本。(https://www.python.org/).

  2. PyCharm IDE:使用 PyCharm 或其他您選擇的任何 Python IDE。PyCharm是一個受歡迎的集成開發環境,為Python開發提供舒適的工作空間。

  3. IronPDF: 從IronPDF庫下載這裡或使用PIP安裝(Python 套件管理器). 使用 IronPDF 功能也需要 Microsoft .NET 執行環境。 Linux、Mac 和 Windows 的使用者可以使用下載 .NET 6.0 版本下載連結。

在 PyCharm 中創建 Python 項目

一旦滿足先決條件,打開 PyCharm 並創建一個新的 Python 項目。 為您的項目設置虛擬環境,以有效管理依賴項。

  1. 點擊 檔案 > 新專案

  2. 在「新專案」視窗中:

    • 在「位置」欄位中輸入您的專案名稱。

    • 選擇要儲存專案檔案的位置。
  3. 在「專案直譯器」下,選擇 Python 直譯器。 如果您已安裝 Python,它將自動檢測 Python 解釋器。

  4. 選擇專案類型。 對於一個簡單的 Python 專案,您可以使用預設設定。

    如何在 Python 中創建帶有文本和圖像的 PDF 文件:圖 2 - 打開 PyCharm IDE。前往文件菜單 - 點擊新建專案。 輸入您的 Python 專案的名稱和位置。 接下來,在「Project Interpreter」下選擇 Python 直譯器。 按「建立」按鈕來建立專案。 當 Python 專案創建完成後,開啟一個新的 Python 檔案,並使用它撰寫代碼以使用 IronPDF 生成 PDF 文件。

  5. 點擊建立來建立專案。

  6. 打開一個新的 Python 檔案並保存它,以便使用 Python 庫 IronPDF 編寫代碼來生成 PDF 文件。

使用 PIP 安裝 IronPDF for Python

若要安裝 IronPDF,請在您的專案終端機或命令提示字元中使用以下 PIP 命令:

pip install ironpdf

此命令將自動下載並安裝IronPDF庫及其相依項。

如何在Python中創建包含文字和圖片的PDF檔案:圖3 - 要安裝 IronPDF,請在專案的終端機或命令提示字元中使用以下命令:pip install ironpdf

創建包含文字和圖片的簡單 PDF

讓我們逐步了解如何使用 IronPDF 創建一個包含文字和圖片的單頁 PDF 文件:

步驟 1:匯入 IronPDF

在此步驟中,我們從 IronPDF 匯入所有所需的模組。 我們匯入 ChromePdfRenderer 用於渲染 PDF,並匯入 base64 用於編碼圖像數據。

from ironpdf import ChromePdfRenderer
import base64
PYTHON

步驟 2:實例化 ChromePdfRenderer

在這裡,我們將創建一個 ChromePdfRenderer 的實例,用於將 HTML 內容渲染成 PDF。

# Instantiate Renderer
renderer = ChromePdfRenderer()
PYTHON

步驟 3:新增文字內容

在此步驟中,我們將定義一個 HTML 字串(html_content)包括HTML文件的結構,包括標頭、主體和稍後轉換為單一PDF文件的文本內容部分。使用CSS樣式來定位文本和圖像。

# HTML String with Text 
html_content = """
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>PDF Generation Example</title>
    <style>
        body {
            margin: 0; /* Remove default margin */
            padding: 20px; /* Add padding for better visibility */
            position: relative; /* Set the body as a relative position */
        }
        header {
            text-align: center;
        }
        section {
            margin-top: 20px; /* Add margin to separate sections */
        }
        img {
            position: absolute;
            top: 20px; /* Adjust the top position */
            right: 20px; /* Adjust the right position */
        }
    </style>
</head>
<body>
    <header>
        <h1>PDF Generation Example</h1>
    </header>
    <section id="contentSection">
        <h2>Text and Image in PDF</h2>
        <p>This PDF includes both text and an embedded image:</p>
        <p>IronPDF developed by Ironsoftware is a great PDF creating library for .NET, Python, JAVA, Node.JS.</p>
"""
PYTHON

步驟 4:添加圖片

在這裡,我們將開啟並讀取一個圖像文件(ironpdf-logo.png)以二進制模式,將其轉換為 base64 編碼的數據 URI,並嵌入到 HTML 字串中。 然後,該圖像使用 CSS 樣式定位到右上角。

with open("ironpdf-logo.png", "rb") as f:
    pngBinaryData = f.read()
    imgDataUri = "data:image/png;base64," + base64.b64encode(pngBinaryData).decode("utf-8")
    imgHtml = f"""<!-- Embedded Image -->
        <img src='{imgDataUri}' width=100px height=100px
            alt="IronPDF Logo">
    </section>
</body>
</html>
"""
PYTHON

步驟 5:合併文字與影像的 HTML 字串

此步驟將文字和圖像的 HTML 字串連接起來,以建立完整的 HTML 內容。(完整_html_內容)將被渲染成 PDF 輸出文件。

full_html_content = html_content + imgHtml
PYTHON

步驟6:將HTML內容渲染為PDF文件

在此,使用 RenderHtmlAsPdf 方法來轉換HTML 轉 PDF使用 ChromePdfRenderer

# Create a PDF from the HTML string
pdf = renderer.RenderHtmlAsPdf(full_html_content)
PYTHON

步驟 5:儲存 PDF 檔案

最後,生成的 PDF 被儲存為 "output_with_text_and_image_top_right.pdf"。 此檔案將包含格式化的文本,嵌入的圖像會位於右上角。

# Save the PDF to a file
pdf.SaveAs("output_with_text_and_image_top_right.pdf")
PYTHON

輸出 PDF 文件

現在在執行程式後,輸出的 PDF 檔案如下:

如何使用 Python 創建帶有文字和圖片的 PDF 文件:圖 4 - 輸出:output_with_text_and_image_top_right.pdf

同樣,可以輕鬆地將多個 PDF 頁面添加到 PDF 文件中。

進階用法:自訂文字和圖像位置

IronPDF 提供額外的功能以使用外部 CSS/JavaScript 文件對 PDF 內的文字和圖片進行精確的定位和樣式微調。可以將基礎路徑作為可選的參數傳遞給 RenderHtmlAsPdf 方法,如以下代碼所示:

# 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'>", r"C:\site\assets")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
PYTHON

在這個高級代碼範例中,我們透過外部來源進一步探討嵌入圖像的概念。 RenderHtmlAsPdf 方法中的 HTML 內容包括一個  related to 進階用法:自訂文字和圖像位置標籤指向圖像文件 (iron.png)位於指定的資產目錄中(C:\site\assets\). 此外,此目錄被設置為 BasePath 參數。

RenderHtmlAsPdf 中,您可以如上述步驟所示發送完整的 HTML 網頁。 可以使用基本路徑作為第二個可選參數來引用 CSS 文件。 如需獲取更多關於其他生成 PDF 格式或修改現有 PDF 文件的方法的詳細信息,請訪問代碼範例文檔頁面。

結論

在本文中,我們探討了如何使用IronPDF在 Python 專案中建立包含文字和圖像的 PDF 檔案。 憑藉其直觀的 API 和強大的功能,IronPDF 使開發人員可以輕鬆生成動態且視覺上吸引人的 PDF 文檔。 無論您是正在創建報告、文檔或其他任何類型的內容,IronPDF 為 Python 的 PDF 生成提供了一個可靠且靈活的解決方案。 試驗自訂選項以根據特定設計需求來調整 PDF,讓 IronPDF 成為您文件生成需求的寶貴工具。

IronPDF授權或您可以聯繫支持如有進一步的查詢。

如何使用Python建立包含文字和圖像的PDF檔案:圖 5 - IronPDF for Python 授權資訊

您可以從 IronPDF 的網站下載並安裝該函式庫。網站.

< 上一頁
如何在 Python 中生成 PDF 文件
下一個 >
如何在 Python 中向 PDF 添加頁碼

準備開始了嗎? 版本: 2024.11.1 剛剛發布

免費 pip 安裝 查看許可證 >