gpt4 book ai didi

java - 在 java eclipse 中使用 iText 在 Pdf 中打印字符串时如何使特定的子字符串加粗?

转载 作者:搜寻专家 更新时间:2023-11-01 03:05:34 25 4
gpt4 key购买 nike

我在 Java 中使用 iText 将 HTML 转换为 PDF。

我想要一个特定的段落,其中一些单词为粗体,一些单词为粗体+下划线,作为字符串传递给 Java 代码,并使用 iText 库转换为 PDF。

我无法为此找到合适的方法。我应该怎么做?

最佳答案

如果要将 XHTML 转换为 PDF,则需要 iText + XML Worker。

您可以在此处找到许多示例:http://itextpdf.com/sandbox/xmlworker

最简单的示例如下所示:

public void createPdf(String file) throws IOException, DocumentException {
// step 1
Document document = new Document();
// step 2
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(file));
// step 3
document.open();
// step 4
XMLWorkerHelper.getInstance().parseXHtml(writer, document,
new FileInputStream(HTML));
// step 5
document.close();
}

请注意,在这种情况下,HTML 文件作为 FileInputStream 传递。你想传递一个 String。这意味着您必须执行以下操作:

XMLWorkerHelper.getInstance().parseXHtml(writer, document,
new StringReader("<p>The <b>String</b> I want to render to PDF</p>"));

如果您需要图像、特殊字体等支持,沙盒中有更复杂的示例。例如this example会将 XHTML 转换为一系列 iText 对象,而不是立即将它们呈现到页面中。

关于java - 在 java eclipse 中使用 iText 在 Pdf 中打印字符串时如何使特定的子字符串加粗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24036662/

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