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

- 通过pip安装IronPDF for Python
- 使用
from ironpdf import *导入库 - 实例化
ChromePdfRenderer - 调用
RenderHtmlAsPdf、RenderUrlAsPdf或RenderHtmlFileAsPdf - 使用
pdf.SaveAs("output.pdf")保存结果
目录
- 您如何安装IronPDF for Python?
- 您如何在转换之前配置IronPDF?
- 如何将HTML字符串转换为PDF?
- 如何将URL转换为PDF?
- 如何将HTML文件转换为PDF?
- 您如何控制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要固定特定版本——在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.xIronPDF首次初始化时,会下载兼容的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 *所有 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"配置日志输出
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.AllLogger.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")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")基路径可以指向任何本地目录或网络共享。 子目录中的资产相对于它解析。 有关复杂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")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")此方法特别适用于服务器端文档生成,其中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")边距以毫米表示。 PdfPaperSize 支持所有标准 ISO 尺寸——A0 至 A10、Letter、Legal、Tabloid——以及 Custom,后者用于处理由 CustomPaperWidth 和 CustomPaperHeight 定义的任意尺寸。
自定义纸张尺寸
当标准纸张尺寸不符合输出要求时——例如,收据或标签打印格式——明确定义宽度和高度:
//: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")启用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")禁用JavaScript可减少简单、静态HTML文档的渲染时间。
如何添加自定义页眉和页脚?
在 IronPDF 中,页眉和页脚是通过附加到渲染器 RenderingOptions 上的 HtmlHeaderFooter 或 TextHeaderFooter 对象来应用的。 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"){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")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")对于对版式要求严格的文档,请结合边距调整与 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)、边距(MarginTop、MarginLeft等)、自定义尺寸(CustomPaperWidth、CustomPaperHeight)、JavaScript执行(EnableJavaScript)等等。
如何在Python的IronPDF中为PDF添加页码?
将TextHeaderFooter分配给renderer.RenderingOptions.TextFooter,并在文本属性之一如RightText或CenterText中包含占位符{page}或{total-pages}。
我能否为生成的PDF的每页添加品牌标志页眉?
可以。使用带标签的HTML片段创建HtmlHeaderFooter。分配给renderer.RenderingOptions.HtmlHeader并设置BaseUrl以正确解析图像路径。
IronPDF在Python中是否支持自定义纸张尺寸?
可以。将renderer.RenderingOptions.PaperSize设置为PdfPaperSize.Custom,然后分配CustomPaperWidth和CustomPaperHeight以毫米为单位定义任意页面尺寸。
IronPDF for Python需要哪个.NET版本?
IronPDF for Python需要.NET 6.0 SDK或更高版本。该SDK可从Microsoft .NET下载页面免费获得,并且必须在pip安装或运行IronPDF之前安装。










