C# 带有iTextSharp的页眉
我正在用iTextSharp制作pdf文档。我用PageEvent事件创建了标题,但我希望我的标题在某些页面中有所不同。 它可以为所有页面设置相同的标题 但是,我希望有所不同 示例:第1页=>页眉1第2页=>页眉1第3页=>页眉2第4页=>页眉2 我想解决它,但当这种情况发生时,麻烦就来了:C# 带有iTextSharp的页眉,c#,visual-studio,header,itextsharp,C#,Visual Studio,Header,Itextsharp,我正在用iTextSharp制作pdf文档。我用PageEvent事件创建了标题,但我希望我的标题在某些页面中有所不同。 它可以为所有页面设置相同的标题 但是,我希望有所不同 示例:第1页=>页眉1第2页=>页眉1第3页=>页眉2第4页=>页眉2 我想解决它,但当这种情况发生时,麻烦就来了: writer.PageEvent=new PDFFooter(params); doc.Open(); 必须在doc.Open()上方创建PageEvent事件当我把它放在下面时,它会生成一个
writer.PageEvent=new PDFFooter(params);
doc.Open();
必须在doc.Open()上方创建PageEvent事件代码>当我把它放在下面时,它会生成一个错误。我正在Visual Studio Community 2013中使用C#
我该如何解决这个问题?谢谢 我现在解决了这个问题
解决办法是:
PDFFooter events=new PDFFooter();
PdfWriter writer = PdfWriter.GetInstance(doc, Response.OutputStream);
doc.Open();
foreach (var item in ListReporte)
{
events = new PDFFooter();
writer.PageEvent = events;
events.Ciudad = item.Ciudad;
events.OnStartPage(writer,doc);
//This was the solution
if (writer.PageEvent != null)
writer.PageEvent = null;
}
在每次迭代中,我将null分配给PageEvent属性
但首先,我创建了一个PDFFooter对象(PDFFooter类包含OnStartPage和OnEndPages事件…),因此,在该类中,我声明了一些关于我想要显示的数据的属性
以前,我无法实例化下面的doc.Open()
的Pdfooter类。代码是这样的:
writer.PageEvent=new PDFFooter();
doc.Open():
因此,我尝试先创建objet,然后将其设置为writer对象的PageEvent属性(我建议这样做)。它成功了
感觉很棒。
可能考虑重复计算<代码> OnEntPoE//C> >根据计数,调用和使用不同的方法。请阅读(免费电子书),您会发现您的问题是重复的。