【问题标题】:Adding a new page in PDF using itext 7使用 itext 7 在 PDF 中添加新页面
【发布时间】:2017-04-13 01:38:26
【问题描述】:

我正在尝试使用带有以下代码的 iText 7 创建 PDF 文档,并且我的 PDF 文档内容在生成时在同一页面中重叠。(即在第 1 页中)。

我看到了

document.newPage();

iText 7 中缺少方法。如何在 iText 7 中不使用 pdfDocumet.copyPages(...) 或 PDFmerger 将页面添加到我的 PDF 文档。

        PdfDocument pdfDoc = new PdfDocument(new PdfWriter(dest));      
        pdfDoc.addNewPage();
        Document PageOnedocument = new Document(pdfDoc,PageSize.A4);            
        addPageOneContents(PageOnedocument);  


        pdfDoc.addNewPage();
        Document PageTwodocument = new Document(pdfDoc,PageSize.A4);            
        addPageTwoContents(PageTwodocument);  

        pdfDoc.close();
        PageOnedocument.close();
        PageTwodocument.close();

【问题讨论】:

    标签: java pdf-generation itext7


    【解决方案1】:

    如果您正在使用 C# 并重构引用 iText 5 的代码(就像我一样),请尝试将 iText 7 方法置于覆盖中。

    public static class Itext7DocumentExtensions
    {
        public static void NewPage(this Document document)
        {
            document.Add(new AreaBreak(AreaBreakType.NEXT_PAGE));
        }
    }
    

    现在您可以拨打document.NewPage();

    【讨论】:

      【解决方案2】:

      在 iText 7 中,newPage 方法已成为区域中断的特例:

      Document document = ...;
      [....add some content...]
      document.add(new AreaBreak(AreaBreakType.NEXT_PAGE));
      [...add some content on next page...]
      

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-26
      • 1970-01-01
      • 2022-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      相关资源
      最近更新 更多