在 SelectPDF 生成的 PDF 中,有没有办法只删除第一页的上边距?

Is there a way to remove the top margin on the first page only, in PDFs generated by SelectPDF?

我正在尝试使用 SelectPDF 生成 PDF 报告。该报告有多页长,因此我需要分页符。每当出现这些分页符时,我都需要顶部和底部边距,这样报告才不会难看,但我只能找到为每页添加边距或不添加页边距的选项,但找不到 "every page except the first one".

报告来源是我设置的HTML/CSS。内容是动态的,所以我无法手动控制文本...我最大的粒度是控制CSS。

HtmlToPdf converter = new HtmlToPdf();
converter.Options.PdfPageSize = PdfPageSize.A4;
converter.Options.PageBreaksEnhancedAlgorithm = true;
converter.Options.MarginTop = 20;
converter.Options.MarginBottom = 20;

"MarginTop" 选项将上边距添加到每一页。它适用于除第一个页面之外的每个页面,我需要它为 0,但我找不到任何选项来做到这一点。它存在吗?

使用边距无法做到这一点。但是,您可以使用 headers/footers:

解决此问题
HtmlToPdf converter = new HtmlToPdf();
converter.Options.PdfPageSize = PdfPageSize.A4;
converter.Options.PageBreaksEnhancedAlgorithm = true;

converter.Options.DisplayHeader = true;
converter.Header.Height = 20;
converter.Header.DisplayOnFirstPage = false;

converter.Options.DisplayFooter = true;
converter.Footer.Height = 20;