我在 Windows 7 上使用 MikTeX。我tex4ht
使用包管理器安装。公式的转换并不理想。有些公式看起来有点不连贯,而其他公式看起来非常糟糕。
看起来波动很大的公式的示例。
看起来很可怕的公式的例子。
和
有没有办法来解决这个问题?
更新的问题
之后michal.h21 的建议,输出看起来好一点。
然而内联公式需要一些改进。例如
和
一些 \begin{array} 方程式也需要改进。
我想指出的是,为了写出导数,我使用了
\newcommand{\Dn}3{\frac{\text{d}^#1 #2}{\text{d}#3^{#1}}} % 为 n 阶导数
我不知道这是否会产生任何影响。
这是链接我的代码这是塞巴斯蒂亚诺的要求。
答案1
Miktex 似乎还没有更新关于 中图像默认质量的最新修复tex4ht
。它dvipng
现在用于转换,质量好多了。还有其他替代方案,例如使用矢量图像,或与库一起SVG
使用进行渲染。MathML
Mathjax
Miktex
您也可以使用构建文件轻松使用更好的方法make4ht
。将以下代码保存为mybuild.mk4
:
Make:image("png$","dvipng -bg Transparent -T tight -D151 -o ${output} -pp ${page} ${source}")
Make:image("svg$","dvisvgm -n -p ${page} -c 1.4,1.4 -s ${source} > ${output}")
您可以使用以下方式编译文件
make4ht -ue mybuild.mk4 filename.tex
对于以下无意义的数学示例:
\documentclass{article}
\begin{document}
\[
\left(-\frac{{h}^{2}}{2m}\delta-\frac{{e}^{2}}{4\pi} \right) = \theta
\]
\end{document}
您将得到以下png
图片:
要获取svg
图像,您需要使用小型配置文件mycfg.cfg
:
\Preamble{xhtml}
\Configure{Picture}{.svg}
\begin{document}
\EndPreamble
它要求图片的输出格式为格式svg
。您可以使用以下方式在编译中请求配置文件
make4ht -ue mybuild.mk4 -c mycfg.cfg filename.tex
这就是结果。请注意,它是模糊的,因为它是从浏览器截取的,Stackexchange 不支持SVG
图像上传。现实中看起来更好:
最后一种可能性是使用MathML
。MathJax
使用以下配置文件mathjax.cfg
:
\Preamble{xhtml,mathml}
\Configure{@HEAD}{\HCode{\Hnewline<script type="text/javascript"
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=MML_CHTML">
</script>\Hnewline}}
\begin{document}
\EndPreamble
使用以下方式编译文档
make4ht -uc mathjax.cfg filename.tex
结果如下:
您还可以尝试其他MathJax
输出选项,MML_SVG
请MML_HTMLorMML
参见MathJax 文档。您可以将这些选项放在配置文件中的 之后MathJax.js?config=
。我认为MML_CMATH
现在 是首选,但其他选项可能更适合您。