【发布时间】:2012-06-23 19:07:59
【问题描述】:
我一直在使用 ITextSharp 并使用它来生成 PDF - 但是我最近遇到了一个问题,即第一个页面之外的所有页面的上边距似乎都被忽略了,因此我的页眉上出现了书写。
当前边距:
document.SetMargins(72,72, 36, 36);
应该注意,左边距和右边距在第一页之外完美地工作 - 但是它似乎忽略了顶部边距并从页面顶部(出现标题的位置)开始文本。
有人对为什么会发生这种情况有任何见解吗?或者是否有一个区域或事件可以用来加强每一页的文档页边距? (也许是OnStartPage 事件?)
如果需要,我很乐意提供任何其他代码 - 因为我知道 ITextSharp 在代码方面可能会变得非常复杂。
【问题讨论】:
-
一个小的独立示例可以很好地说明您的问题:基本上,您用于生成 2 页内容的方法,以及捕获
OnStartPage事件的事件侦听器。作为旁注,通常最好在OnEndPage事件监听器中添加页眉和页脚。 -
我将有一个示例 PDF 来尝试演示发生了什么。目前我在 OnStartPage 中添加了页眉,在 OnEndPage 中添加了页脚;看起来对吗?
-
正如我所说,一旦所有内容都已包含在页面上,通常最好在
OnEndPage中添加页眉和页脚。 -
我也会尝试切换它们。谢谢亚历克西斯。
标签: c# .net formatting pdf-generation itextsharp