页脚不显示在iTextSharp v4

本文关键字:iTextSharp v4 显示 | 更新日期: 2023-09-27 18:17:58

我正试图从HTML创建一个PDF,并使用iTextSharp。根据我的阅读,涵盖新版本iTextSharp的许可证要求我提供源代码。我们不能这样做,所以我们使用LGPL下的版本4。

我试图得到一个页脚与HTML一起出现,但由于某种原因它不工作。我试过删除HTML,只是使用文本。只是在页脚放了一块。多页vs单页。希望我只是错过了一些简单的东西,但从我看到的例子来看,它应该是超级简单的。

    using (MemoryStream ms = new MemoryStream())
    {
        Document doc = new Document(PageSize.LETTER, 35,35,35,70);
        var font = FontFactory.GetFont("arial", 8f);
        font.Color = Color.BLACK;
        var chunk = new Chunk("Footer", font);
        var phrase = new Phrase(chunk);
        var footer = new HeaderFooter(phrase, true);
        footer.Alignment = 1;
        footer.Border = Rectangle.NO_BORDER;
        doc.Footer = footer;
        //doc.Footer = new HeaderFooter(new Phrase("Footer"),false);
        var writer = PdfWriter.GetInstance(doc, ms);
        var htmlWorker = new HTMLWorker(doc);
        using (var sr = new StringReader(html))
        {
            doc.Open();
            doc.Add(new Chunk("Text"));
            //htmlWorker.Parse(sr);
            doc.Close();
        }
        return ms.ToArray();
    }

页脚不显示在iTextSharp v4

注意你的HeaderFooter元素。您正在使用的签名可能导致只设置标题文本。

无论如何,也许可以使用PdfWriter。PageEvent和一些从PdfPageEventHelper派生的类来实现页眉和页脚(而不是HeaderFooter())