如何使用 IronPDF for Python 将 HTML 转换为 PDF

IronPDF 为 Python 开发者提供了一条从 HTML 标记到生产级 PDF 文件的直通路径——无需中间设计工具、无需专有布局引擎、无需独立的渲染管道。该库的 ChromePdfRenderer 类内部采用基于 Chromium 的引擎,因此任何在 Chrome 中显示正确的 HTML 都能准确转换为 PDF。 本教程演示了每种受支持的转换方法——HTML字符串、本地HTML文件和实时URL——然后涵盖了允许您控制页面大小、边距、页眉、页脚等的渲染选项。

如果您需要C#或VB.NET的工作流程,将HTML转换为PDF的.NET应用程序也有相关教程。

快速入门:在Python中将HTML转为PDF


目录


入门

如何安装Python上的IronPDF?

IronPDF通过pip分发,这是Python的标准包管理器。 在终端中运行以下命令以安装最新版本:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/install.sh
pip install ironpdf
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/install.sh
pip install ironpdf
SHELL

要固定特定版本——在CI管道或容器化环境中很有用——附上版本号:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/install-versioned.sh
pip install ironpdf==2024.x.x
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/install-versioned.sh
pip install ironpdf==2024.x.x
SHELL

请注意IronPDF for Python建立在IronPDF .NET库之上,需使用.NET 6.0 SDK或更高版本。 在运行任何IronPDF Python代码之前安装SDK。)]

IronPDF首次初始化时,会下载兼容的Chromium二进制文件。 在新机器上下载稍需片刻,但每个环境仅发生一次。 随后的运行启动速度快得多,因为二进制文件被本地缓存。


操作指南和代码示例

您如何在转换之前配置IronPDF?

在首次转换调用之前完成两项设置任务:设置许可证密钥和——可选地——配置日志文件位置。

导入包

每个使用IronPDF的Python文件都需要这一行导入。将其放在文件顶部:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/import.py
from ironpdf import *
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/import.py
from ironpdf import *
PYTHON

所有 IronPDF 类——Logger 以及其余类——均可通过此通配符导入使用。

设置许可证密钥

没有许可证密钥,IronPDF会在每个生成的PDF上添加平铺水印。 水印适合开发和测试,但生产部署需要有效密钥。

无许可证密钥生成的PDF包含平铺水印。访问许可页面以获取密钥。

在任何其他IronPDF调用之前设置密钥:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/set-license.py
from ironpdf import *

# Set the license key before any PDF operations
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/set-license.py
from ironpdf import *

# Set the license key before any PDF operations
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
PYTHON

开始免费试用以接收临时密钥,或购买许可证以供无限制的生产使用。

配置日志输出

IronPDF 会将诊断输出写入脚本工作目录中名为 Default.log 的文件中。 若需将日志重定向至其他路径或捕获更多调试细节,请在首次转换前设置 Logger 属性:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/configure-logging.py
from ironpdf import *

# Configure logging before running any conversions
Logger.EnableDebugging = True
Logger.LogFilePath = "ironpdf-debug.log"
Logger.LoggingMode = Logger.LoggingModes.All
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/configure-logging.py
from ironpdf import *

# Configure logging before running any conversions
Logger.EnableDebugging = True
Logger.LogFilePath = "ironpdf-debug.log"
Logger.LoggingMode = Logger.LoggingModes.All
PYTHON

请注意Logger.LogFilePath 必须在首次 PDF 转换调用之前设置。 之后做出的更改对当前会话不起作用。)}]

详细日志在诊断特定HTML页面未按预期渲染时最有用——它们捕获网络请求、CSS加载事件和JavaScript执行时间。

如何将HTML字符串转换为PDF?

转换内存中的HTML字符串是最直接的方法,并且在HTML是通过编程生成时效果良好——例如,从Jinja2模板或数据库驱动的报告生成。

基本HTML字符串转换

实例化 ChromePdfRenderer,将 HTML 字符串传递给 RenderHtmlAsPdf,并在返回的 PdfDocument 上调用 SaveAs

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-basic.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Convert an HTML string to a PDF document
pdf = renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>Generated in Python.</p>")

pdf.SaveAs("hello.pdf")
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-basic.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Convert an HTML string to a PDF document
pdf = renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>Generated in Python.</p>")

pdf.SaveAs("hello.pdf")
PYTHON
PDF rendered from a simple HTML string showing a heading and paragraph

RenderHtmlAsPdf精确处理HTML,就像Chrome会做的,包括CSS和JavaScript。

ChromePdfRenderer 处理 HTML、CSS 和 JavaScript 的方式与现代浏览器完全一致。 在Chrome中正确渲染的任何内容将生成准确的PDF。

具有外部资产的HTML字符串

当 HTML 字符串引用本地资源(样式表、图片、脚本)时,请将目录路径作为第二个参数传递给 RenderHtmlAsPdf。 IronPDF将此路径用作基础URL,以解析相对引用:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-assets.py
from ironpdf import *

html_content = """
<html>
  <head>
    <title>Styled Report</title>
    <link rel='stylesheet' href='assets/style.css'>
  </head>
  <body>
    <h1>Monthly Report</h1>
    <img src='assets/logo.png' alt='Company logo'>
    <p>Data as of Q1 2024.</p>
  </body>
</html>
"""

renderer = ChromePdfRenderer()

# The second argument sets the base path for resolving relative asset URLs
pdf = renderer.RenderHtmlAsPdf(html_content, "./")

pdf.SaveAs("styled-report.pdf")
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-assets.py
from ironpdf import *

html_content = """
<html>
  <head>
    <title>Styled Report</title>
    <link rel='stylesheet' href='assets/style.css'>
  </head>
  <body>
    <h1>Monthly Report</h1>
    <img src='assets/logo.png' alt='Company logo'>
    <p>Data as of Q1 2024.</p>
  </body>
</html>
"""

renderer = ChromePdfRenderer()

# The second argument sets the base path for resolving relative asset URLs
pdf = renderer.RenderHtmlAsPdf(html_content, "./")

pdf.SaveAs("styled-report.pdf")
PYTHON
PDF output from an HTML string that references external CSS and image assets

当您提供基路径给RenderHtmlAsPdf时,外部CSS和图像正确加载。

基路径可以指向任何本地目录或网络共享。 子目录中的资产相对于它解析。 有关复杂HTML字符串的更多模式,请参见HTML字符串到PDF代码示例

如何将URL转换为PDF?

RenderUrlAsPdf 方法会获取一个实时 URL,等待页面完全加载(包括任何由 JavaScript 驱动的内容),并将渲染结果转换为 PDF。 这使其适用于捕捉仪表板、报告或任何视觉状态取决于JavaScript执行的页面。

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/url-to-pdf.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Fetch and convert a live web page to PDF
pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format")

pdf.SaveAs("wikipedia-pdf.pdf")
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/url-to-pdf.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Fetch and convert a live web page to PDF
pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format")

pdf.SaveAs("wikipedia-pdf.pdf")
PYTHON
PDF generated from a Wikipedia article URL using IronPDF's RenderUrlAsPdf method

IronPDF获取实时URL并渲染整页——包括JavaScript——再生成PDF。

提示对于需要身份验证的页面,请在调用 RenderUrlAsPdf 之前,先在 ChromePdfRenderer 实例上设置 Cookie 或 HTTP 请求头。 详情请参见HTTP登录凭据指南

当目标页面加载异步内容时,IronPDF会等待Chromium渲染引擎发出文档完全绘制的信号。 对于包含大量 JavaScript 或存在延迟网络请求的页面,请考虑调整 WaitFor 上的 ChromePdfRenderOptions 属性(详见下文的渲染选项部分)。 URL到PDF代码示例显示了其他配置模式。

您如何将HTML文件转换为PDF?

RenderHtmlFileAsPdf 接受本地 HTML 文件的路径并直接进行转换。 HTML中的相对路径——到CSS文件、图像或JavaScript——会根据HTML文件的目录自动解析,因此不需要基路径参数。

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-file-to-pdf.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Convert a local HTML file (and its linked CSS/JS) to PDF
pdf = renderer.RenderHtmlFileAsPdf("invoices/TestInvoice1.html")

pdf.SaveAs("invoice.pdf")
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-file-to-pdf.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Convert a local HTML file (and its linked CSS/JS) to PDF
pdf = renderer.RenderHtmlFileAsPdf("invoices/TestInvoice1.html")

pdf.SaveAs("invoice.pdf")
PYTHON

此方法特别适用于服务器端文档生成,其中HTML模板已被写入磁盘——在使用Django或Flask将Jinja2模板渲染为文件,再转换为PDF以便下载时常见的模式。

IronPDF 会根据 HTML 文件的位置解析所有 <script><img> 标签,因此链接的样式表、嵌入的字体和图片在 PDF 中显示的效果与在浏览器中完全一致。 该流程与 RenderHtmlAsPdf 处理内联资源的方式一致,区别在于无需显式提供基路径。

您如何控制PDF渲染选项?

ChromePdfRenderOptions 是传递给 ChromePdfRenderer(或直接传递给任何渲染方法)的配置对象,用于控制页面布局、边距、纸张尺寸及其他输出特性。 在转换之前设置选项是定制PDF输出的标准方式。

纸张尺寸和方向

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-paper.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Configure page layout before rendering
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.MarginBottom = 20
renderer.RenderingOptions.MarginLeft = 15
renderer.RenderingOptions.MarginRight = 15

pdf = renderer.RenderHtmlAsPdf("<h1>Landscape Report</h1><p>Content here.</p>")
pdf.SaveAs("landscape-a4.pdf")
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-paper.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Configure page layout before rendering
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.MarginBottom = 20
renderer.RenderingOptions.MarginLeft = 15
renderer.RenderingOptions.MarginRight = 15

pdf = renderer.RenderHtmlAsPdf("<h1>Landscape Report</h1><p>Content here.</p>")
pdf.SaveAs("landscape-a4.pdf")
PYTHON

边距以毫米表示。 PdfPaperSize 支持所有标准 ISO 尺寸——A0 至 A10、Letter、Legal、Tabloid——以及 Custom,后者用于处理由 CustomPaperWidthCustomPaperHeight 定义的任意尺寸。

自定义纸张尺寸

当标准纸张尺寸不符合输出要求时——例如,收据或标签打印格式——明确定义宽度和高度:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-custom-size.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Set a custom paper size (in millimetres)
renderer.RenderingOptions.PaperSize = PdfPaperSize.Custom
renderer.RenderingOptions.CustomPaperWidth = 80   # 80 mm receipt roll width
renderer.RenderingOptions.CustomPaperHeight = 200

pdf = renderer.RenderHtmlAsPdf("<h2>Receipt</h2><p>Total: $12.50</p>")
pdf.SaveAs("receipt.pdf")
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-custom-size.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Set a custom paper size (in millimetres)
renderer.RenderingOptions.PaperSize = PdfPaperSize.Custom
renderer.RenderingOptions.CustomPaperWidth = 80   # 80 mm receipt roll width
renderer.RenderingOptions.CustomPaperHeight = 200

pdf = renderer.RenderHtmlAsPdf("<h2>Receipt</h2><p>Total: $12.50</p>")
pdf.SaveAs("receipt.pdf")
PYTHON

重要自定义纸张尺寸对于热敏收据打印机和标签格式(如4×6英寸的运输标签)特别有用。

启用JavaScript执行

默认情况下,IronPDF在渲染期间执行JavaScript。 如果页面依赖于JavaScript生成可见内容——图表、数据表、动态表单值——这种行为意味着渲染的PDF反映了最终的DOM状态。 要在不必要的页面上禁用JavaScript:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-javascript.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Disable JavaScript for static HTML pages
renderer.RenderingOptions.EnableJavaScript = False

pdf = renderer.RenderHtmlAsPdf("<p>Static content only.</p>")
pdf.SaveAs("static.pdf")
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-javascript.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Disable JavaScript for static HTML pages
renderer.RenderingOptions.EnableJavaScript = False

pdf = renderer.RenderHtmlAsPdf("<p>Static content only.</p>")
pdf.SaveAs("static.pdf")
PYTHON

禁用JavaScript可减少简单、静态HTML文档的渲染时间。

有关更多渲染配置详情,请参见PDF生成设置自定义纸张尺寸示例

如何添加自定义页眉和页脚?

在 IronPDF 中,页眉和页脚是通过附加到渲染器 RenderingOptions 上的 HtmlHeaderFooterTextHeaderFooter 对象来应用的。 HtmlHeaderFooter 为您提供完整的 HTML 和 CSS 控制权——非常适合带有徽标的品牌信头。 TextHeaderFooter 更简洁,且涵盖了包括动态页码在内的大部分文本相关需求。

基于文本的页眉和页脚

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-text.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Add a text header with the document title
renderer.RenderingOptions.TextHeader = TextHeaderFooter()
renderer.RenderingOptions.TextHeader.CenterText = "Quarterly Report — Q1 2024"
renderer.RenderingOptions.TextHeader.DrawDividerLine = True
renderer.RenderingOptions.TextHeader.FontSize = 10

# Add a footer with page numbers
renderer.RenderingOptions.TextFooter = TextHeaderFooter()
renderer.RenderingOptions.TextFooter.RightText = "Page {page} of {total-pages}"
renderer.RenderingOptions.TextFooter.FontSize = 9
renderer.RenderingOptions.TextFooter.DrawDividerLine = True

html = "<h1>Executive Summary</h1><p>Revenue increased 12% year-over-year.</p>"
pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("report-with-footer.pdf")
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-text.py
from ironpdf import *

renderer = ChromePdfRenderer()

# Add a text header with the document title
renderer.RenderingOptions.TextHeader = TextHeaderFooter()
renderer.RenderingOptions.TextHeader.CenterText = "Quarterly Report — Q1 2024"
renderer.RenderingOptions.TextHeader.DrawDividerLine = True
renderer.RenderingOptions.TextHeader.FontSize = 10

# Add a footer with page numbers
renderer.RenderingOptions.TextFooter = TextHeaderFooter()
renderer.RenderingOptions.TextFooter.RightText = "Page {page} of {total-pages}"
renderer.RenderingOptions.TextFooter.FontSize = 9
renderer.RenderingOptions.TextFooter.DrawDividerLine = True

html = "<h1>Executive Summary</h1><p>Revenue increased 12% year-over-year.</p>"
pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("report-with-footer.pdf")
PYTHON

{page}{total-pages} 占位符将在渲染时替换为正确值。 其他可用的占位符包括 {time}{url}

带有徽标的HTML页眉

当需要保留品牌标识(如公司徽标、色带或格式化的地址块)时,请使用 HtmlHeaderFooter 代替:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-html.py
from ironpdf import *

renderer = ChromePdfRenderer()

header_html = """
<div style="font-family: Arial, sans-serif; border-bottom: 2px solid #003366; padding: 8px 0;">
  <img src='assets/logo.png' style='height: 40px; float: left;' alt='Company logo'>
  <span style='float: right; font-size: 11px; color: #666;'>Confidential</span>
  <div style='clear:both;'></div>
</div>
"""

renderer.RenderingOptions.HtmlHeader = HtmlHeaderFooter()
renderer.RenderingOptions.HtmlHeader.HtmlFragment = header_html
renderer.RenderingOptions.HtmlHeader.BaseUrl = "./"

html_body = "<h1>Project Status Update</h1><p>All milestones on track.</p>"
pdf = renderer.RenderHtmlAsPdf(html_body, "./")
pdf.SaveAs("branded-report.pdf")
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-html.py
from ironpdf import *

renderer = ChromePdfRenderer()

header_html = """
<div style="font-family: Arial, sans-serif; border-bottom: 2px solid #003366; padding: 8px 0;">
  <img src='assets/logo.png' style='height: 40px; float: left;' alt='Company logo'>
  <span style='float: right; font-size: 11px; color: #666;'>Confidential</span>
  <div style='clear:both;'></div>
</div>
"""

renderer.RenderingOptions.HtmlHeader = HtmlHeaderFooter()
renderer.RenderingOptions.HtmlHeader.HtmlFragment = header_html
renderer.RenderingOptions.HtmlHeader.BaseUrl = "./"

html_body = "<h1>Project Status Update</h1><p>All milestones on track.</p>"
pdf = renderer.RenderHtmlAsPdf(html_body, "./")
pdf.SaveAs("branded-report.pdf")
PYTHON

请注意BaseUrl 设置为与文档正文相同的基路径。 这确保了页眉HTML中引用的图片和样式表可以正确解析。)}]

页眉和页脚出现在生成的PDF的每一页上,包括多页文档。 有关在页脚中包含页面级元数据的工作示例,请参见HTML页眉和页脚代码示例

页眉和页脚的边距调整

添加页眉或页脚时,请增加相应的边距以防内容与页面主体重叠:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-margins.py
from ironpdf import *

renderer = ChromePdfRenderer()

renderer.RenderingOptions.MarginTop = 30     # Make room for header
renderer.RenderingOptions.MarginBottom = 20  # Make room for footer

renderer.RenderingOptions.TextHeader = TextHeaderFooter()
renderer.RenderingOptions.TextHeader.CenterText = "Internal Use Only"

renderer.RenderingOptions.TextFooter = TextHeaderFooter()
renderer.RenderingOptions.TextFooter.CenterText = "Page {page} of {total-pages}"

pdf = renderer.RenderHtmlAsPdf("<h1>Internal Document</h1><p>Body content.</p>")
pdf.SaveAs("margined-report.pdf")
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-margins.py
from ironpdf import *

renderer = ChromePdfRenderer()

renderer.RenderingOptions.MarginTop = 30     # Make room for header
renderer.RenderingOptions.MarginBottom = 20  # Make room for footer

renderer.RenderingOptions.TextHeader = TextHeaderFooter()
renderer.RenderingOptions.TextHeader.CenterText = "Internal Use Only"

renderer.RenderingOptions.TextFooter = TextHeaderFooter()
renderer.RenderingOptions.TextFooter.CenterText = "Page {page} of {total-pages}"

pdf = renderer.RenderHtmlAsPdf("<h1>Internal Document</h1><p>Body content.</p>")
pdf.SaveAs("margined-report.pdf")
PYTHON

对于对版式要求严格的文档,请结合边距调整与 PaperSize 设置,确保输出结果完全符合 PRINT 规范。 其他布局控制项(例如 IronSoftwareSystemDrawingColor 背景填充和 CSS @page 规则)在自定义边距示例中进行了详细说明。


下一步是什么?

本教程涵盖了三个核心HTML到PDF的转换方法及其输出控制的渲染选项。 以下指南是在此基础上构建的,并涵盖更专业的任务:

  • PDF 生成设置 — 深入解析 ChromePdfRenderOptions:DPI、背景渲染、CSS 媒体类型、JavaScript 等待策略,以及 PRINT 模式与屏幕模式的区别。
  • HTML页眉和页脚——带有徽标、页码、日期和多栏布局的品牌页眉和页脚模板。
  • 自定义边距和纸张尺寸——微调页面几何形状,以获得打印就绪的输出和非标准格式。
  • 向PDF添加水印——将文本或图像水印印在现有或新生成的PDF上。
  • 从PDF中提取文本——以编程方式读取生成或现有PDF的文本内容。

开始免费的30天试用,在评估期间生成无限制、无水印的PDF。 准备好生产时,请查看许可选项以进行团队和企业部署。

常见问题解答

我如何在Python中将HTML字符串转换为PDF?

实例化ChromePdfRenderer,然后调用renderer.RenderHtmlAsPdf(html_string)。该方法接受任何有效的HTML,包括内联CSS和JavaScript。用pdf.SaveAs("output.pdf")保存返回的PdfDocument

如何安装 IronPDF for Python?

从终端运行pip install ironpdf。IronPDF for Python需要.NET 6.0 SDK或更高版本,在首次使用前必须单独安装。

IronPDF是否可以在Python中将实时URL转换为PDF?

可以。使用renderer.RenderUrlAsPdf("https://example.com")。IronPDF使用Chromium引擎获取页面,等待JavaScript完成执行,然后从完全渲染的DOM生成PDF。

我如何将本地HTML文件转换为PDF?

调用renderer.RenderHtmlFileAsPdf("path/to/file.html")。IronPDF自动将样式表、图像、脚本等所有相对资产路径解析为相对于HTML文件目录的路径。

如何移除IronPDF生成的PDF上的水印?

在任何PDF操作之前,使用License.LicenseKey = "YOUR-KEY"设置一个有效的许可证密钥。如果没有密钥,IronPDF将添加适合开发但不适合生产使用的平铺水印。

IronPDF为Python提供了哪些渲染选项?

renderer.RenderingOptions上设置的属性控制纸张大小(PaperSize)、方向(PaperOrientation)、边距(MarginTopMarginLeft等)、自定义尺寸(CustomPaperWidthCustomPaperHeight)、JavaScript执行(EnableJavaScript)等等。

如何在Python的IronPDF中为PDF添加页码?

TextHeaderFooter分配给renderer.RenderingOptions.TextFooter,并在文本属性之一如RightTextCenterText中包含占位符{page}{total-pages}

我能否为生成的PDF的每页添加品牌标志页眉?

可以。使用带标签的HTML片段创建HtmlHeaderFooter。分配给renderer.RenderingOptions.HtmlHeader并设置BaseUrl以正确解析图像路径。

IronPDF在Python中是否支持自定义纸张尺寸?

可以。将renderer.RenderingOptions.PaperSize设置为PdfPaperSize.Custom,然后分配CustomPaperWidthCustomPaperHeight以毫米为单位定义任意页面尺寸。

IronPDF for Python需要哪个.NET版本?

IronPDF for Python需要.NET 6.0 SDK或更高版本。该SDK可从Microsoft .NET下载页面免费获得,并且必须在pip安装或运行IronPDF之前安装。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

准备开始了吗?
版本: 2026.5 just released
Still Scrolling Icon

还在滚动吗?

想快速获得证据?
运行示例看着你的HTML代码变成PDF文件。