使用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. 點擊 File > New Project

  2. 在 "New Project" 視窗中:

    • 在 "Location" 欄位中輸入你的專案名稱。

    • 選擇你要儲存專案檔案的位置。
  3. 在 "Project Interpreter" 下,選擇 Python 解釋器。如果你已經安裝了 Python,它會自動檢測到 Python 解釋器。

  4. 選擇專案類型。對於一個簡單的 Python 專案,你可以保留預設設定。

    如何使用 Python 創建包含文本和圖像的 PDF 文件:圖 2 - 打開 PyCharm IDE。轉到檔案選單 - 點擊新建項目。輸入您的 Python 項目的名稱和位置。接下來,在「項目解釋器」下選擇 Python 解釋器。點擊「創建」按鈕來創建項目。創建 Python 項目後,打開一個新的 Python 文件,並使用它來編寫代碼,使用 IronPDF 生成 PDF 文件。

  5. 點擊 Create 來建立專案。

  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

第三步:添加文字內容

在此步驟中,我們將定義一個 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

第四步: 添加圖片

在這裡,我們將打開並讀取一個圖片文件 (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

第六步:將 HTML 內容渲染成 PDF 文件

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

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

第五步:保存 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 內容包含一個 標籤指向圖像文件 (iron.png) 位於指定的資產目錄中 (C:\site\assets\). 另外,這個目錄被設置為 BasePath 參數。

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

結論

在這篇文章中,我們探討了如何使用 IronPDF 在 Python 專案中創建包含文本和圖像的 PDF 文件。IronPDF 具有直觀的 API 和強大的功能,使開發人員能夠輕鬆生成動態且視覺上吸引人的 PDF 文件。無論是創建報告、文檔,還是其他類型的內容,IronPDF 都提供了一個可靠且靈活的解決方案來生成 PDF。您可以嘗試定制選項,以根據特定設計要求調整您的 PDF,這使 IronPDF 作為您的文檔生成需求的一個重要工具。

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

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

您可以從 IronPDF 的網站下載和安裝該庫 網站.

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

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

免費 pip 安裝 查看許可證 >