当前位置: 首页 > 知识库问答 >
问题:

iText7-将文本添加到现有pdf的底部

居晗日
2023-03-14

我需要添加一些文本内容的底部现有的。带有iText的pdf文档。我有一个工作方法,但新内容显示在左上角,与现有内容重叠:

public PdfDocument GetDocumentWithAppendedContent(string path, string content)
    {
        var stream = new MemoryStream();
        var writer = new PdfWriter(stream);
        writer.SetCloseStream(false); // so I can reuse stream to create a readonly document later

        var pdfResult = new PdfDocument(new PdfReader(path), writer);
        var document = new Document(pdfResult);

        var div = new Div().SetMargin(0).SetPadding(0).SetKeepTogether(true);
        div.Add(new Paragraph(content));
        document.Add(div);
        
        document.Close();
        pdfResult.Close();

        stream.Position = 0;
        return new PdfDocument(new PdfReader(stream)); // return a readonly version
    }

如何“移动”最后一页底部的内容,而不是第一页的开头?我对iText不熟悉,令人惊讶的是,在网上找不到解决方案。

共有1个答案

龚宏壮
2023-03-14

你可以用这样的代码来做。

   PdfPage     page   = doc.GetPage(doc.GetNumberOfPages());
    //Create canvas fro the last page
    Canvas      canvas = new Canvas(page, page.GetPageSize());
    //Set fixed position to put the div at the left bottom  corner of the canvas
    div.SetFixedPosition(0, 0, page.getPageSize().getWidth());
    canvas.Add(p);
    doc.Close();
 类似资料:
  • 我正在尝试向PDF文档的第一页添加一些内容。这样做的合适方式是什么? 目前,我的代码可以工作,但它会在文档的第一页之前添加(插入)一个新页面。这里可以用什么来代替 因此,我正在阅读的文档中的内容将作为内容而不是新页面添加到现有的第一页

  • 我想使用IText7将图像添加到现有PDF文件中的特定位置。 在使用iTextSharp的另一个项目中,代码非常简单: 但我找不到使用IText7执行此操作的正确方法。 我有PdfReader和PdfWriter,但在IText7中我可以在哪里找到PdfStamper? 或者可能有其他方法可以将图像添加到IText7中现有的PDF文件中? (我不能在当前项目中使用iTextSharp)

  • 问题内容: 我需要将SVG图形添加​​到PDF文件中。 使用iText7是否有可能? 使用iText5: 我在以下页面中发现了这一点: PdfPTable和PdfTemplate 有一种创建类似于Template的方法: 如何创建Graphics2D? 问题答案: 巧合的是,我们今天发布了SVG实现。我们目前尚不支持全部功能集,我们仍将在第二季度及以后的时间里进行开发,但是您已经可以使用它了。该工

  • 问题内容: 我想对iText执行以下操作: (1)解析现有的PDF文件 (2)在文档的现有单页上添加一些数据(例如时间戳) (3)写出文件 我似乎无法弄清楚如何使用iText做到这一点。用伪代码可以做到这一点: Document document = reader.read(input); document.add(new Paragraph(“my timestamp”)); writer.wr

  • 对于IText5,添加数字签名相当容易。其留档的链接是:http://developers.itextpdf.com/examples/security/digital-signatures-white-paper/digital-signatures-chapter-2 有人可以在ITEXT 7中共享文档链接吗?我试过各种方法,但都没有用。在网上找不到任何链接。我可以取消签名并检查签名,但不能添

  • 问题内容: 我想在PDF文件的每一页中添加一段文字。这样的答案很好。但是,文本将添加到页面顶部。我想在每页底部添加我的文字。我该怎么做呢? 这是代码的相关部分。 该代码是功能的一部分,该功能接受一个文件夹,读取其中的PDF文件,然后将它们合并为一个文件。因此,我想在上述循环本身中添加文本,而不是再次迭代文件。 问题答案: 请参阅《 iText in Action,第二版》的第6章,尤其是在6.4.