[英]itextsharp: How to generate a report with dynamic header in PDF using itextsharp?
[英]How to add dynamic data to pdf header using itextsharp
我正在尝试使用itextsharp生成pdf。我必须在pdf头中添加一些动态数据。如何在onpagestart事件中执行此操作。
您始终可以在自己的IPdfPageEvent接口实现中声明变量。 然后,您将能够在IPdfPageEvent实现之外的任何地方设置该变量的值。
说
writer.PageEvent.variable = "Some value";
使用OnStartPage事件,您可以执行以下操作:
public class MyPageEvent:IPdfPageEvent
{
public string variable="";
public void OnStartPage(PdfWriter writer, Document document)
{
PdfContentByte cb = riter.DirectContent;;
cb.BeginText();
cb.SetFontAndSize(myBaseFont, 10f);
cb.SetTextMatrix(600, 15);
cb.ShowText(this.variable);
cb.EndText();
}
......
}
不知道您是否仍然需要答案,但是我目前正在做的是将pdfwriter.pageevent对象转换为显式子类,然后在该子类中设置一个公共属性。
在生成PDF的类中:
CType(pdfWriter.PageEvent, PDFDocEventHelper).currentValue = value
以及子类PdfPageEventHelper类:
Public Class PDFDocEventHelper
Inherits PdfPageEventHelper
Public Property currentValue as String
.
.
.
End Class
说得通? 我一点都不喜欢使用CType()进行转换,但它确实可以正常工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.