gpt4 book ai didi

c# - ITextSharp - PDF 在首页以外的页眉区域书写

转载 作者:行者123 更新时间:2023-11-30 15:03:52 29 4
gpt4 key购买 nike

我一直在使用 ITextSharp 并使用它来生成 PDF - 但是我最近遇到了一个问题,即第一页之后的所有页面的上边距似乎都被忽略了,结果在我的页眉上进行了书写。

当前利润率:

document.SetMargins(72,72, 36, 36);

应该注意的是,左边距和右边距在第一页之外工作得很好——但是它似乎忽略了上边距并在页面顶部(标题出现的地方)开始文本。

有人知道为什么会发生这种情况吗?或者是否有一个区域或事件可以用来加强每页的文档页边距? (也许是 OnStartPage 事件?)

如果需要,我很乐意提供任何额外的代码 - 因为我知道 ITextSharp 的代码可能会变得非常复杂。

最佳答案

如果你想要不同的边距,我 Hook 了 OnPageStart 事件并根据页码在那里设置边距。

internal class DocumentEvents : PdfPageEventHelper
{
/// <summary>
/// Called when [start page].
/// </summary>
/// <param name="writer">The writer.</param>
/// <param name="document">The document.</param>
public override void OnStartPage(PdfWriter writer, Document document)
{
if (document.PageNumber == 1)
{
document.SetMargins(40f, 40f, 130f, 20f);
}
else
{
document.SetMargins(40f, 40f, 30f, 30f);
}

document.NewPage();
}
}

不要忘记将您的事件连接到文档编写器:

this.writer.PageEvent = new DocumentEvents();

关于c# - ITextSharp - PDF 在首页以外的页眉区域书写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11140014/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com