gpt4 book ai didi

c# - 想要在 itextSharp 的最后一页上删除页脚

转载 作者:太空宇宙 更新时间:2023-11-03 14:40:06 24 4
gpt4 key购买 nike

实际上,我在页 footer 分添加了一些文本,例如“下一页继续...”。但我希望页脚在最后一页时应该删除。这是一些屏幕截图,用于详细描述我的问题。谢谢。

public partial class Footer : PdfPageEventHelper
{
public override void OnEndPage(PdfWriter writer, iTextSharp.text.Document doc)
{
Paragraph footer = new Paragraph("Continued on next page..", FontFactory.GetFont(FontFactory.TIMES, 10, iTextSharp.text.Font.NORMAL));

footer.Alignment = Element.ALIGN_RIGHT;

PdfPTable footerTbl = new PdfPTable(1);

footerTbl.TotalWidth = 300;

footerTbl.HorizontalAlignment = Element.ALIGN_CENTER;

PdfPCell cell = new PdfPCell(footer);

cell.Border = 0;

cell.PaddingLeft = 10;

footerTbl.AddCell(cell);
if (writer.PageNumber - 1 != writer.CurrentPageNumber)
{
footerTbl.WriteSelectedRows(0, -1, 415, 30, writer.DirectContent);
}
}
}

最佳答案

向您的 Footer 类添加一个标志,并且只要该标志具有原始值,就只添加页脚字符串。将最后一段内容添加到 Document 后,在关闭它之前,翻转该标志。

您的最后一个文档页面将在关闭 Document 的过程中完成(并且其 OnEndPage 将被调用),即在您更改标志之后。

例如:

public partial class Footer : PdfPageEventHelper
{
public override void OnEndPage(PdfWriter writer, iTextSharp.text.Document doc)
{
if (lastPage)
return;

Paragraph footer = new Paragraph("Continued on next page..", FontFactory.GetFont(FontFactory.TIMES, 10, iTextSharp.text.Font.NORMAL));
footer.Alignment = Element.ALIGN_RIGHT;

PdfPTable footerTbl = new PdfPTable(1);
footerTbl.TotalWidth = 300;
footerTbl.HorizontalAlignment = Element.ALIGN_CENTER;

PdfPCell cell = new PdfPCell(footer);
cell.Border = 0;
cell.PaddingLeft = 10;
footerTbl.AddCell(cell);
footerTbl.WriteSelectedRows(0, -1, 415, 30, writer.DirectContent);
}

public bool lastPage = false;
}

这样使用:

Document document = ...;
PdfWriter writer = PdfWriter.GetInstance(document, ...);
Footer footer = new Footer();
writer.PageEvent = footer;
document.Open();
[... add content to document ...]
footer.lastPage = true;
document.Close();

关于c# - 想要在 itextSharp 的最后一页上删除页脚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57411878/

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