LaTeX和Python可在Ubuntu上运行,但不能在Windows上运行

时间:2019-10-01 04:15:07

标签: python windows ubuntu latex miktex

我不是特别熟练使用LaTeX,但是鉴于原始的输入LaTeX代码,我需要生成一堆SVG文件。我发现做到这一点的一种方法是使用位于以下位置的Python脚本“ latex2svg”:https://github.com/tuxu/latex2svg

我能够在Linux中成功地做到这一点,但在Windows中却无法做到,而且我也不明白为什么。在Ubuntu中,如果我运行:

sudo apt-get install texlive-full

安装LaTeX,然后创建以下Python脚本(与latex2svg.py位于同一目录中):

from latex2svg import latex2svg

myeq1 = r'e^{i\pi}+1=0'
myeq2 = r'\mathbb{Q}'
myeq3 = r'\int_{-\infty}^{\infty}{\frac{e^{\frac{-x^2}{2}}}{\sqrt{2\pi}}}\ dx=1'

eqs = [myeq1, myeq2, myeq3]

for ii, eq in enumerate(eqs):
  myeq = r'\( ' + eq + r' \)'
  out = latex2svg(myeq)
  with open('out{}.svg'.format(ii), 'w') as f:
    f.write(out['svg'])

一切正常,并且可以正确生成SVG文件(请参见here):

但是,在安装了MikTeX的Windows 10上,如果我运行该完全相同的Python脚本,则会收到警告Warning: libgs not found,但该脚本会继续并输出一些半断的SVG(请参见{{3} }。我尝试使用pip安装libgs,但得到here,却不知道该怎么办。

我需要做什么才能使其在Windows上运行?尽管我可以在Ubuntu上运行它,但我还是想理解该问题以使其在Windows上运行。

2 个答案:

答案 0 :(得分:0)

您不需要绕过python,可以直接使用编译为svg

latex filename
dvisvgm filename.dvi

(其中filename是filename.tex文件的基本名称)

答案 1 :(得分:0)

我想通了,尽管我花了很长时间。问题是我没有在“latex2svg.py”文件中列出这里的包:

\usepackage[libertine]{newtxmath}

如果删除该行,则显示正常。我还不确定如何在 Windows 上安装它,但这就是问题的关键。