我遇到了一个名为princexml的工具,它可以将html + css精美地转换为pdf(see this video)。有了这个,甚至可以使用完全html + css编写博士论文,最后获得一个不错的pdf输出。但似乎它不能很好地处理mathjax。我想这是因为mathjax部分首先在浏览器中渲染。
所以我有一个像这样的简单html文件:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>test math</title>
<style type="text/css">
</style>
<script src='http://cdn.mathjax.org/mathjax/latest/MathJax.js' type='text/javascript'>
MathJax.Hub.Config({
HTML: ["input/TeX","output/HTML-CSS"],
TeX: { extensions: ["AMSmath.js","AMSsymbols.js"],
equationNumbers: { autoNumber: "AMS" } },
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
tex2jax: { inlineMath: [ ['$','$'], ["\\(","\\)"] ],
displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
processEscapes: true },
"HTML-CSS": { availableFonts: ["TeX"],
linebreaks: { automatic: true } }
});
</script>
</head>
<body>
$x^2 + y^2 = 1$
</body>
</html>
使用princexml转换后:
prince --javascript x.html -o x.pdf
在pdf中逐字呈现等式。
有没有办法让这项工作?
答案 0 :(得分:5)
这是因为princexml还不支持Mathjax用于其异步函数的setTimeout方法。有两种解决方法: