java-OpenHtmlToPdf西里尔字母符号显示
发布时间:2022-05-03 01:56:06 246
相关标签: # php
我在显示西里尔文字符号时遇到问题。我有一个包含西里尔字母符号的HTML。问题是,在转换后,它们都显示为###
而不是符号。我是这样使用图书馆的:
var document = Jsoup.parse(new ByteArrayInputStream(resultHtml), "UTF-8", "/");
ByteArrayOutputStream os = new ByteArrayOutputStream();
try (os) {
var temp = new W3CDom().fromJsoup(document);
PdfRendererBuilder builder = new PdfRendererBuilder();
builder.toStream(os);
builder.useFont(new File("/resources/fonts/times.ttf"), "Times");
builder.withW3cDocument(temp, null);
builder.run();
}
return os;
这个resultHtml
是一个HTML字符串,这没关系,因为使用库iText7我得到了我想要的结果:我得到了带有普通符号的PDF,但问题是它不是免费的,我这么说只是为了减少可能出现的问题,所以我认为问题在于我如何使用库。我真的没有任何与html相关的资源,这就是为什么baseUri
是/
和null
.图书馆给了我两个警告,但我认为问题不在于此,因为它说它忽略了它。
com.openhtmltopdf.css-parse WARNING:: (null#inline_style_1) so-language is an unrecognized CSS property at line 21. Ignoring declaration.
com.openhtmltopdf.css-parse WARNING:: (null#inline_style_1) so-language is an unrecognized CSS property at line 32. Ignoring declaration.
我检查了调试,我可以看到document
这没关系,因为我可以正常看到带有西里尔字母符号的HTML格式,但是temp
正在成为[#document:null]
.我读到这并不意味着文档是空的,但可能是问题所在?我尝试了不同的字符集,比如CP1251
,CP1252
但他们也给出了奇怪的符号。我尝试了所有的字符集,也关闭了字体声明,但没有帮助。我在用1.0.10
图书馆和图书馆的版本1.14.3
版本jsoup
.
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报