如何在itextsharp Html中将标题图像应用于pdf转换器

时间:2012-04-03 12:42:04

标签: c# asp.net pdf itextsharp

请给我任何解决方案;我正在使用此代码:

 HeaderFooter header = new HeaderFooter(new Phrase("This is a header"), false);
 document.Header = header;

但是发生了这个错误:

  

CS0246:
   找不到类型或命名空间名称'HeaderFooter'(是吗?    缺少using指令或程序集引用?

1 个答案:

答案 0 :(得分:1)

该代码为deprecated and removed many years ago,但遗憾的是仍然存在于源代码的评论中。

您要做的是继承iTextSharp.text.pdf.PdfPageEventHelper类并处理OnEndPage方法,该方法将为您文档中的每个页面调用一次:

public class MyPageEventHandler : iTextSharp.text.pdf.PdfPageEventHelper {
    public override void OnEndPage(PdfWriter writer, Document document) {
        //Create a simple ColumnText object
        var CT = new ColumnText(writer.DirectContent);
        //Bind it to the top of the document but take up the entire page width
        CT.SetSimpleColumn(0, document.PageSize.Height - 20, document.PageSize.Width, document.PageSize.Height);
        //Add some text
        CT.AddText(new Phrase("This is a test"));
        //Draw our ColumnText object
        CT.Go();
    }
}

要使用此功能,您只需将其新实例绑定到PdfWriter的{​​{1}}媒体资源:

PageEvent

以下是针对iTextSharp 5.1.2.0的全功能C#2010 WinForms应用程序,其中显示了以下内容:

writer.PageEvent = new MyPageEventHandler();