gpt4 book ai didi

java - 如何使用 OpenPdf 将 HTML 转换为 Pdf

转载 作者:行者123 更新时间:2023-11-29 09:58:59 50 4
gpt4 key购买 nike

如何使用 OpenPDF 将 HTML 转换为 PDF ?

据我所知,OpenPdf 是 Itext 4 的一个分支。不幸的是我找不到 Itext 4 文档。

最佳答案

好吧,看来你不能只用 OpenPDF 直接做,你必须使用 Flying Saucer : 得到 flying-saucer-pdf-openpdf然后使用它。一个例子:

String inputFile = "my.xhtml";
String outputFile = "generated.pdf";

String url = new File(inputFile).toURI().toURL().toString();

ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(url);
renderer.layout();

try (OutputStream os = Files.newOutputStream(Paths.get(outputFile))) {
renderer.createPDF(os);
}

Source .

PS:FlyingSaucer 需要 XHTML 语法。如果你的 HTML 文件有问题,你可以使用 Jsoup :

String inputFile = "my.html";
String outputFile = "generated.pdf";

String html = new String(Files.readAllBytes(Paths.get(inputFile)));
final Document document = Jsoup.parse(html);
document.outputSettings().syntax(Document.OutputSettings.Syntax.xml);

ITextRenderer renderer = new ITextRenderer();
renderer.setDocumentFromString(document.html());
renderer.layout();

try (OutputStream os = Files.newOutputStream(Paths.get(outputFile))) {
renderer.createPDF(os);
}

关于java - 如何使用 OpenPdf 将 HTML 转换为 Pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49325830/

50 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com