如何设置自定义边距
在处理 PDF 或任何其他文档类型时,经常需要指定页边距,以便遵守不同的标准。例如,MLA 和 APA 格式都要求页边距为 1 英寸,而有些大学可能要求论文页边距为 1.5 英寸。
在从 HTML 导出 PDF 时,IronPDF 可轻松设置自定义页边距,只需进行一些简单的配置即可。
如何设置自定义边距
- 下载 C# 库以设置自定义页边距
- 实例化 ChromePdfRenderer 类来呈现 PDF 文件
- 在 Chrome 浏览器渲染器的 渲染选项
- 在页眉和页脚中设置自定义页边距
- 将 HTML 渲染成 PDF 并保存文档
开始在您的项目中使用IronPDF,并立即获取免费试用。
查看 IronPDF 上 Nuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变PDF。
Install-Package IronPdf
考虑安装 IronPDF DLL 直接。下载并手动安装到您的项目或GAC表单中: IronPdf.zip
手动安装到你的项目中
下载DLL设置自定义边距示例
要设置自定义页边距,首先要实例化ChromePdfRenderer类。通过ChromePdfRenderer,你可以访问RenderingOptions对象,从中以毫米为单位设置顶部、底部、左侧和右侧的具体页边距,如下图所示:
:path=/static-assets/pdf/content-code-examples/how-to/custom-margins-set-margins.cs
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.MarginTop = 40;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;
renderer.RenderingOptions.MarginBottom = 40;
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.MarginTop = 40
renderer.RenderingOptions.MarginLeft = 20
renderer.RenderingOptions.MarginRight = 20
renderer.RenderingOptions.MarginBottom = 40
请注意,这将增加在 HTML 的样式部分设置的边距。例如,在下面的示例中,HTML 中的边距最初设置为 50 毫米,但在渲染选项中设置每边的边距时,边距又增加了 30 毫米,使其达到 80 毫米:
:path=/static-assets/pdf/content-code-examples/how-to/custom-margins-set-margins-with-css.cs
const string htmlWithStyle = @"
<!DOCTYPE html>
<html>
<head>
<style>
body {margin: 50mm 50mm 50mm 50mm;}
</style>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.MarginTop = 30;
renderer.RenderingOptions.MarginLeft = 30;
renderer.RenderingOptions.MarginRight = 30;
renderer.RenderingOptions.MarginBottom = 30;
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlWithStyle);
pdf.SaveAs("PdfWithCustomMargins.pdf");
Const htmlWithStyle As String = "
<!DOCTYPE html>
<html>
<head>
<style>
body {margin: 50mm 50mm 50mm 50mm;}
</style>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>"
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.MarginTop = 30
renderer.RenderingOptions.MarginLeft = 30
renderer.RenderingOptions.MarginRight = 30
renderer.RenderingOptions.MarginBottom = 30
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlWithStyle)
pdf.SaveAs("PdfWithCustomMargins.pdf")
生成的 PDF 文件如下所示:
在页眉/页脚中设置自定义边距
默认情况下,在渲染选项中设置的页边距不适用于文档中的页眉和页脚。要在页眉和页脚中设置与文档相同的自定义页边距,请在渲染选项中配置UseMarginsOnHeaderAndFooter属性:
:path=/static-assets/pdf/content-code-examples/how-to/custom-margins-use-margins-header-footer.cs
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.All;
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.All
可以指定在页眉和页脚中设置哪些页边距。有关在页眉和页脚中设置页边距的枚举的完整列表,请参阅我们的 API文档.下面是一些指定设置页边距的示例:
:path=/static-assets/pdf/content-code-examples/how-to/custom-margins-use-specific-margins-header-footer.cs
// Use only the left margin from the document.
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.Left;
// Use only the left and right margins from the document.
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.LeftAndRight;
' Use only the left margin from the document.
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.Left
' Use only the left and right margins from the document.
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.LeftAndRight