我正在尝试从HTML内容创建PDF.
public byte[] generatePdf(final XhtmlPDFGenerationRequest request) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PDDocument document = new PDDocument();
InputStream stream = new ByteArrayInputStream(request.getContent()
.getBytes());
PDStream pdstream = new PDStream(document, stream);
document.save(baos);
document.close();
return this.toByteArray(baos);
}
Run Code Online (Sandbox Code Playgroud)
当我拿这个byte[]并保存到文件时,该文件是空白的.我PDStream用来将输入流嵌入到文档中
来自http://pdfbox.apache.org/apidocs/
public PDStream(PDDocument doc,
InputStream str)
throws IOException
Run Code Online (Sandbox Code Playgroud)
从输入流中读取所有数据并将其嵌入到文档中,这将关闭InputStream.
vsi*_*ngh 13
我一直在寻找HTML到PDF的渲染器.我们使用的是iText.我希望与Apache PDFBox一样.但是,看起来它无法完成.
我可以使用Apache FOP或继续使用iText.
如果有人感兴趣,这是iText解决方案: Java将XML文档渲染为PDF
如果您正在寻找使用PDF框合并的解决方案,这里是 使用Apapche pdf框合并pdf文件
Open HTML to PDF 库在底层使用 PDFBox 并隐藏所有转换复杂性。
用法非常简单:
try (OutputStream os = new FileOutputStream("/Users/me/output.pdf")) {
PdfRendererBuilder builder = new PdfRendererBuilder();
builder.withUri("file:////Users/me/input.html");
builder.toStream(os);
builder.run();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
45132 次 |
| 最近记录: |