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

使用iText从多个HTML页面生成PDF

鲁旭
2023-03-14

我知道如何生成单个超文本标记语言页面。我想知道如何从多个超文本标记语言页面生成的pdf生成单个pdf页面。

例如,有HTMLX1.html和另一个文件HTMLX2.html我可以生成单独的pdf文件PDFX1.pdfPDFX2.pdf分别来自html。我可以将它们写入文件系统,然后像iTextConcatenate示例中那样连接它们。

我只是想知道我是否可以在不将它们写入文件系统的情况下动态地组合此操作。我无法识别丢失的链接

共有2个答案

咸玄天
2023-03-14

如果要避免写入文件,可以使用StringReaderStringWriter

Oracle文档:

>

StringWriter

它仍然是一个I/O进程,但不会写入或读取实际文件。相反,您将使用字符串缓冲区。

郁权
2023-03-14

创建PDFX1时。pdf格式,将PdfWriterByteArrayOutputStream一起使用,而不是FileOutputStream

ByteArrayOutputStream baos1 = new ByteArrayOutputStream();
PdfWriter writer = PdfWriter.getInstance(document, baos1);

连接PDF文档时,使用PdfReaderByteArrayInputStream

PdfReader reader = new PdfReader(new ByteArrayInputStream(baos1.toByteArray()));

或者也可以直接使用字节数组:

PdfReader reader = new PdfReader(baos1.toByteArray());

(PDFX2.pdf.同样如此)

 类似资料:
  • 我正在使用,我已经能够获得一个html页面并为该页面生成pdf,但我需要从多个html页面生成一个pdf文档,并用页面分隔。例如:我有,。我需要一份3页的pdf文档,第一页的内容为之类的。。。 这是我的代码,它适用于一个html页面: 是否可以针对多个html页面进行循环,为每个html页面向PdfDocument添加一个新页面,然后仅生成一个pdf,每个html页面生成一个页面? 更新 我一直在

  • 问题内容: 我意识到之前曾有人问过这个问题(我查看了所有解决方案并尝试了所有解决方案),但我仍在尝试生成一个PDF文件,该文件的页眉和页脚在每个页面上都重复出现。 我在使用R8时尝试了许多不同的方法来使其正常工作,但到目前为止没有任何效果。我测试过的一些方法是https://gist.github.com/626264,使用运行元素和边距框 http://pigeonholdings.com/pr

  • 我们计划通过传递html文本作为输入,在横向模式下生成一个pdf。此外,pdf是在横向模式下生成的,而内容是在纵向模式下。以下是我们用来执行上述要求的步骤。 1)从源系统接收xml内容。 2) 使用xsl从xml生成html输出。 3)将html输出作为输入传递给pdf java类,然后该类将以横向模式生成pdf。 示例 xml 文件:.com/重置样本 样本xsl文件:.com/重置复制 jav

  • 本文向大家介绍在ASP中不用模板生成HTML静态页直接生成.html页面,包括了在ASP中不用模板生成HTML静态页直接生成.html页面的使用技巧和注意事项,需要的朋友参考一下 我们一般生成HTML静态页时,常常会事先做好一个模板,然后生成时调用模板文件。那么有没有办法不用模板,如一个正常的htmer.asp页面,直接生成为htmer.html页面呢?当然是可以的,而且非常简单,今天就教大家在A

  • 我有两个简单的SVG文档,我想将它们转换为PDF,这样每个文档都位于PDF中的一个页面上。 我的第一个SVG文档有两个矩形,如下所示: 第二个是一个黑色的圆圈。 代码如下: 我已经打印了两个SVG文档,它们看起来应该是: 第一份SVG文件: 第二份SVG文件: 我发现了一个代码,在使用ApacheFop之后,它应该做我正在做的事情;我有以下代码来生成PDF: 生成PDF文件,但我有两个问题。 >

  • 我试图通过翻译在http://viralpatel.net/blogs/itext-tutorial-merge-split-pdf-files-using-itext-jar/找到的splitPDF方法,用clojure从pdf中提取单个页面 IOException流关闭java.io.FileOutputStream.WriteBytes(:-2) 这将阻止我在repl仍然打开时打开文档。一旦