在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
在這個數位時代,生成包含動態內容(包括文字和圖像)的 PDF 文件是一個常見的需求。Python 是一種流行的編程語言,它可以輕鬆地自動化常規流程,以節省時間和精力。擁有一個多功能的庫來 建立包含文字和圖片的 PDF 檔案 在 Python 中,這對於自動生成報告、收據或發票非常方便。 IronPDF, 一個多功能的 Python 庫,簡化了創建具有豐富內容的 PDF 的過程。
在本文中,我們將探討如何在 Python 項目中使用 IronPDF 生成包含文本和圖像的 PDF。
安裝 IronPDF for Python 庫
實例化 ChromePdfRenderer
添加文本內容
將圖像作為二進制數據添加
使用文本和圖像創建 HTML 字符串
使用 RenderHtmlAsPdf 將 HTML 渲染為 PDF
IronPDF 是一個功能豐富的Python庫,為開發人員提供強大的工具用於 創建,操作和處理PDF文件。使用IronPDF,您可以輕鬆將文字、圖片、表格和其他元素納入PDF,使其成為從報告生成到文件創建等廣泛應用的寶貴資產。
IronPDF 的主要功能:
在開始使用 IronPDF 創建 PDF 文檔之前,請確保您已經具備以下先決條件:
安裝 Python: 您需要在電腦上安裝 Python。您可以從官方的 Python 網站下載並安裝最新版本 (https://www.python.org/).
PyCharm IDE: 使用 PyCharm 或其他您選擇的 Python 集成開發環境 (IDE)。 PyCharm 是一個流行的集成開發環境,為 Python 開發提供了舒適的工作空間。
當滿足前提條件後,打開 PyCharm 並建立一個新的 Python 專案。為你的專案設置虛擬環境以有效管理依賴項。
點擊 File > New Project。
在 "New Project" 視窗中:
在 "Location" 欄位中輸入你的專案名稱。
在 "Project Interpreter" 下,選擇 Python 解釋器。如果你已經安裝了 Python,它會自動檢測到 Python 解釋器。
選擇專案類型。對於一個簡單的 Python 專案,你可以保留預設設定。
點擊 Create 來建立專案。
要安裝IronPDF,請在您的專案終端或命令提示符中使用以下PIP命令:
pip install ironpdf
此命令將自動下載並安裝 IronPDF 庫及其依賴項。
讓我們一起了解使用 IronPDF 創建一個包含文字和圖片的單頁 PDF 文件的步驟:
在這一步中,我們將從 IronPDF 導入所有所需的模組。我們導入 ChromePdfRenderer 來渲染 PDF,以及導入 base64 來編碼影像數據。
from ironpdf import ChromePdfRenderer
import base64
在這裡,我們將創建 ChromePdfRenderer 的實例,這個實例將被用來將 HTML 內容渲染成 PDF。
# Instantiate Renderer
renderer = ChromePdfRenderer()
在此步驟中,我們將定義一個 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>
"""
在這裡,我們將打開並讀取一個圖片文件 (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>
"""
此步驟將文字和圖片 HTML 字串連接起來,以創建完整的 HTML 內容。 (完整_html_內容) 將被渲染成 PDF 輸出文件。
full_html_content = html_content + imgHtml
在此,使用 RenderHtmlAsPdf 方法來轉換 HTML 轉 PDF 使用 ChromePdfRenderer。
# Create a PDF from the HTML string
pdf = renderer.RenderHtmlAsPdf(full_html_content)
最後,生成的 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")
現在執行程式後,輸出的 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")
在這個高級代碼範例中,我們將嵌入圖像的概念進一步擴展到外部來源。RenderHtmlAsPdf 方法中的 HTML 內容包含一個 標籤指向圖像文件 (iron.png) 位於指定的資產目錄中 (C:\site\assets\). 另外,這個目錄被設置為 BasePath 參數。
在 RenderHtmlAsPdf 中,你可以發送一個完整的 HTML 網頁,如上面的步驟所示。可以使用基路徑作為第二個可選參數來引用 CSS 文件。關於生成 PDF 格式或修改現有 PDF 文件的其他方法的更多詳細信息,請訪問 代碼範例 和 文檔 頁面。
在這篇文章中,我們探討了如何使用 IronPDF 在 Python 專案中創建包含文本和圖像的 PDF 文件。IronPDF 具有直觀的 API 和強大的功能,使開發人員能夠輕鬆生成動態且視覺上吸引人的 PDF 文件。無論是創建報告、文檔,還是其他類型的內容,IronPDF 都提供了一個可靠且靈活的解決方案來生成 PDF。您可以嘗試定制選項,以根據特定設計要求調整您的 PDF,這使 IronPDF 作為您的文檔生成需求的一個重要工具。
IronPDF 授權 或您可以 聯繫支持 如有進一步的疑問。
您可以從 IronPDF 的網站下載和安裝該庫 網站.