在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
在这个数字化的时代,需要生成具有动态内容(包括文本和图像)的 PDF 文档是一项普遍要求。 Python 是一种流行的编程语言,可以轻松实现日常流程自动化,从而节省时间和精力。 拥有一个多功能库创建包含文本和图像的 PDF 文件在 Python 中,自动生成报告、收据或发票非常方便。 IronPDFPDF for .NET 是一个通用的 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。PyCharmPython 是一种流行的集成开发环境,为 Python 开发提供了一个舒适的工作空间。
满足前提条件后,打开 PyCharm 并创建一个新的 Python 项目。 为您的项目建立虚拟环境,以便有效管理依赖关系。
点击 文件 > 新项目。
在 "新建项目 "窗口中
在 "位置 "字段中输入项目名称。
在 "项目解释器 "下,选择 Python 解释器。 如果您安装了 Python,它将自动检测 Python 解释器。
选择项目类型。 对于简单的 Python 项目,您可以使用默认设置。
单击创建创建项目。
要安装 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 内容(full_html_content)将被渲染为 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 文件的其他方法的详细信息,请访问代码示例和文件page.
在本文中,我们探讨了如何使用IronPDF在 Python 项目中使用文本和图像创建 PDF 文件。 凭借其直观的 API 和强大的功能,IronPDF 使开发人员能够毫不费力地生成动态且具有视觉吸引力的 PDF 文档。 无论您是创建报告、文档还是其他任何类型的内容,IronPDF 都能为 Python PDF 生成提供可靠而灵活的解决方案。 尝试使用自定义选项,根据特定设计要求定制 PDF,使 IronPDF 成为满足您文档生成需求的重要工具。
IronPDF许可证或者你可以联系支持如需进一步询问,请联系
您可以从 IronPDF 的网站.