LaTeX 数学作为特定大小的图像

LaTeX 数学作为特定大小的图像

我对 TeX 和 LaTeX 知之甚少,但我经常遇到包含被描述为 LaTeX 的标记的字符串,因为包括 MathJax、SymPy 和 Apple 的 Grapher 在内的各种工具都使用 LaTeX 作为数学通用语言。用户通常可以在 GUI 中右键单击格式良好的方程式,并获得其“作为 LaTeX”的表示,或者调用脚本中的方法并获得被描述为包含“LaTeX 标记”的字符串。(我不知道我使用的术语是否正确。)

我正在尝试采用这样的字符串并使用自动化将其转换为特定大小的图像(例如 625 x 465 像素),并将方程式展开或缩小以适合图像,或者,如果做不到,至少居中。

我正在以编程方式创建.tex文件,使用latex编译为 DVI,然后使用dvipng转换为 PNG。我尝试了 Stack Exchange 上阅读的各种建议的 30 多种排列组合。我尝试了包括、和在内的文档类standalone。我尝试了包括article、和在内的包。我尝试了包括、、和在内的命令。我尝试了选项和。 reportminimalgraphicxpreviewgeometryresizeboxvspacetopskipcenteringnoindentdvipng-T-D

我得到的结果总是不太正确:

尺寸错误:
尺寸不对

尺寸正确,但对齐奇怪:
尺寸正确,但对齐方式奇怪

其他尺寸正确但为空白(尤其是standalone与 以外的选项一起使用时preview)。

我如何才能生成正确显示的特定尺寸的图像?有谁知道可以插入数学标记的 TeX 文档模板和可以正确转换它的 dvipng 命令的组合吗?

我在 Debian 上运行。 latex --version报告pdfTeX 3.14159265-2.6-1.40.15 (TeX Live 2015/dev/Debian)dvipng --version报告dvipng 1.14

一个示例 latex 命令:

latex -halt-on-error -interaction batchmode -output-directory /data/notebooks/2016-09-13T17:41:22.181658_typesetting /data/notebooks/2016-09-13T17:41:22.181658_typesetting/foo21.tex

dvipng 命令示例:

dvipng -T 6.25in,4.65in -z 9 -bg gray 0.80 -o /data/notebooks/2016-09-13T17:41:22.181658_typesetting/foo21.png /data/notebooks/2016-09-13T17:41:22.181658_typesetting/foo21.dvi

我一直在 Jupyter 笔记本中记录尝试的目录。如果有必要,也许我可以把所有 31 次(并且还在增加)尝试放在 Gist 或类似的东西上,包括文件.texlatex命令、dvipng命令和结果图像。

答案1

最后,获得我想要的东西的最简单方法是使用文件中preview带有选项的包,然后使用ImageMagick 中的命令来扩展图像。 tightpage.texconvert

这是我用于该文件的模板.tex

\documentclass{article}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{bm}
\usepackage[active,displaymath,textmath,tightpage]{preview}
\pagestyle{empty}
\begin{document}
$ 
% MATH GOES HERE
$
\end{document}

某些包和选项可能是不必要的,但是上述内容对我来说有用。

然后我运行这个latex命令(用你的工作目录替换/bar):

latex -halt-on-error -interaction batchmode -output-directory /bar /bar/foo.tex

然后这个dvipng命令(我必须-D手动为该选项选择一个合适的值):

dvipng -D 225 -z 9 -bg white -o /bar/foo.png /bar/foo.dvi

然后这个convert命令:

convert /bar/foo.png -background white -gravity center -extent 625x465 /bar/foo_resized.png

为了安装必要的工具,我运行了:

apt-get install texlive
apt-get install texlive-latex-extra
apt-get install dvipng
apt-get install imagemagick

相关内容