gpt4 book ai didi

pdf - 使用 Flying Saucer 将 xhtml 字符串转换为 PDF 的最简单方法是什么?

转载 作者:行者123 更新时间:2023-12-02 15:56:43 24 4
gpt4 key购买 nike

我一直在使用Flying Saucer一段时间以来,取得了令人惊叹的成果。

我可以像这样通过 uri 设置文档

ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(xhtmlUri);

这很好,因为它将解析相对于给定 URI 的所有相关 css 资源等。但是,我现在正在生成 xhtml,并希望将其直接呈现为 PDF(不保存文件)。 ITextRenderer中的适当方法似乎是:

private Document loadDocument(final String uri) {
return _sharedContext.getUac().getXMLResource(uri).getDocument();
}

public void setDocument(String uri) {
setDocument(loadDocument(uri), uri);
}

public void setDocument(Document doc, String url) {
setDocument(doc, url, new XhtmlNamespaceHandler());
}

如您所见,我现有的代码仅提供 uri,而 ITextRenderer 为我创建 Document 的工作。

从格式化的 xhtml 字符串创建 Document 的最短方法是什么?我更喜欢使用现有的 Flying Saucer 库,而不必导入另一个 XML 解析 jar(只是为了一致的错误和功能)。

最佳答案

以下作品:

Document document = XMLResource.load(new ByteArrayInputStream(templateString.getBytes())).getDocument();

之前我曾尝试过

final DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
dbf.setValidating(false);

final DocumentBuilder documentBuilder = dbf.newDocumentBuilder();
Document document = documentBuilder.parse(new ByteArrayInputStream(templateString.getBytes()));

但是当它尝试从 http://www.w3.org 下载 HTML docType 时失败(对于 java 库返回 503)。

关于pdf - 使用 Flying Saucer 将 xhtml 字符串转换为 PDF 的最简单方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1236429/

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