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

时间:2015-10-09 18:50:13

标签: java itext

我知道如何生成单个HTML页面。我想知道如何从多个HTML页面生成的pdf生成单个pdf页面。

例如,有HTMLX1.html,还有另一个文件HTMLX2.html 我可以分别从html生成单独的pdf文件PDFX1.pdfPDFX2.pdf。我可以将它们写入文件系统,然后将它们连接起来,如iTextConcatenate Example

我只想知道我是否可以动态组合此操作而无需将其写入文件系统。我无法确定缺失的链接

2 个答案:

答案 0 :(得分:2)

创建PDFX1.pdf时,请PdfWriter使用ByteArrayOutputStream而不是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也这样做。)

答案 1 :(得分:0)

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

Oracle文档:

  1. StringReader

  2. StringWriter

  3. 它仍然是一个I / O进程,但您不会写入或读取实际文件。相反,您将使用String buffers。