我正在尝试使用 ItextRenderer 将我的 xhtml 代码转换为 pdf,但问题是数学方程转换得不好。我正在使用 mathjax 在所有浏览器中查看方程:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><script type="text/javascript"src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=MML_HTMLorMML"/>
这是我的 html 代码:
<math xmlns:xlink="http://www.w3.org/1999/xlink" overflow="scroll">
<msup xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math">
<mrow>
<mfenced separators="|">
<mrow>
<mi>x</mi>
<mo>+</mo>
<mi>a</mi>
</mrow>
</mfenced>
</mrow>
<mrow>
<mi>n</mi>
</mrow>
html pdf转换器代码是这样的:
OutputStream os = new FileOutputStream("outputPDF.pdf");
ITextRenderer renderer = new ITextRenderer();
String url = new File("inputHtml.html").toURI().toURL().toString();
renderer.setDocument(url);
renderer.layout();
renderer.createPDF(os);
os.close();
问题是,在 pdf 中,除了方程之外,所有的工作都有效。这是 pdf Equation in pdf 中的方程。
有没有办法在pdf中应用函数?或者在Java中应用其他方法?谢谢!!
最佳答案
您或许可以更改MathJax output formats 。您可以让它生成 SVG 输出,而不是生成 xhtml。也可能值得尝试 HTML-css 输出格式,ITextRenderer 可能能够更好地应对这种情况。
另一条途径可能是使用 LaTeX。有一些不错的 LaTeX 到 pdf 转换器。但是,这些无法处理 html 文档的其余部分。
关于java - Java 中的 xhtml 到 pdf 转换中的数学方程支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44242470/