繁体   English   中英

Java中的xhtml到pdf转换中的数学方程式支持

[英]Math equations support in xhtml to pdf conversion in Java

我正在尝试使用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中的方程式

有没有什么方法可以在pdf中应用功能或在Java中使用另一种方法?谢谢!

您也许可以更改MathJax输出格式 除了生成xhtml之外,您还可以使其生成SVG输出。 尝试HTML-css输出格式可能也值得,ITextRenderer也许可以更好地应对这种格式。

另一条路线可能是去LaTeX。 有很好的LaTeX到pdf转换器。 但是,这些不能处理html文档的其余部分。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM