可以迭代将 html 转换为 pdf。不是整个屏幕,而是类似这样的事情:屏幕有一个自由格式字段,用户可以输入 HTML 标签中包含的这个句子。这是一个自由格式字段,需要(此处为粗体标记)重要的东西加粗(此处为粗体标记)但没有其他任何粗体。我需要完全按照输入的方式从屏幕上获取此信息,我需要创建一个包含它的报告,但看起来像这样:这是一个自由形式字段,需要重要的东西加粗但没有其他粗体。 itext 有没有这样做的东西?
try {
Document document = new Document(PageSize.LETTER);
PdfWriter pdfWriter = PdfWriter.getInstance
(document, new FileOutputStream("c://test.pdf"));
document.open();
document.addTitle("test iText");
XMLWorkerHelper worker = XMLWorkerHelper.getInstance();
String str = "<html><head></head><body>"+
"<h1>This is a title</h1>" +
"<p>This is a paragraph</p>" +
"</body></html>";
worker.parseXHtml(pdfWriter, document, new StringReader(str));
document.close();
System.out.println("You should find you PDF in c:");
}
catch (Exception e) {
e.printStackTrace();
}
希望这可以帮助!
0
我不久前尝试过,我必须说它不是将 PDF 转换为 HTML 的最佳选择。起初我认为我的 PDF 格式很糟糕,因为 CSS,但即使没有 CSS 它看起来很糟糕。所以我个人认为 iText 确实将 HTML 转换为 PDF,但它的样式表支持是值得怀疑的。由于最近的更新,我可能错了。
2 回答
在旧版本的 itext 中,您可以使用 htmlWorker,但现在不推荐使用它。现在您应该使用 XMLWorkerHelper 类及其 parseXHtml 方法。
希望这可以帮助!
我不久前尝试过,我必须说它不是将 PDF 转换为 HTML 的最佳选择。起初我认为我的 PDF 格式很糟糕,因为 CSS,但即使没有 CSS 它看起来很糟糕。所以我个人认为 iText 确实将 HTML 转换为 PDF,但它的样式表支持是值得怀疑的。由于最近的更新,我可能错了。