生成LaTeX服务器端

时间:2016-03-16 06:06:41

标签: latex pdflatex xelatex

我正在尝试构建一个接受带有LaTeX格式的字符串的服务,然后返回一个字符串,其中包含LaTeX位作为pngs或其他任何内容。

所以,这个想法是:

客户端发送包含以下内容的请求:the point is that $sum_{n=1}^5 f(x)$ is a good estimate

服务器发回字符串:the point is that FORMULAS_HERE is a good estimate

我真的不知道从哪里开始转换LaTeX。天真地,我假设我只是解析出LaTeX位然后做一些事情来得到一个png / jpeg / etc ......然后将其插入到响应中。

谷歌搜索真的揭示了最少的信息。

目前,我的简单服务器是在节点上构建的,但这并不重要。如果有一些神奇的解决方案,我可以更改语言。老实说,我希望我可以将LaTeX神奇地转换为unicode,让它完美无缝。

  

问题:如何在服务器端处理LaTeX?    - 目标是然后将其吐回客户端,以便文本可以相对自然地内联(即我可以发送我的好友Hey, what if $\chi(n)$ was considered independently?并且它将在另一端接收格式而不会开始一个奇怪的大图片blob)

关于一个方向或一组包/技术/等的任何建议在这里都很有用。

1 个答案:

答案 0 :(得分:0)

使用数学准备您的乳胶文档并使用优秀的开源ImageMagick

进行转换
pdflatex formula.tex
convert -density 300 formula.pdf -quality 90 formula.png

上面使用的convert命令是ImageMagick工具之一。有关许多选项,请参阅文档和众多在线资源。该软件具有适用于所有主要平台的版本。

应准备输入乳胶文件,以便没有背景,边距等。有关如何执行此操作的讨论,请参阅this postthe source。上面的例子最终来自那里。

这是从链接源编写上面使用的formula.tex文件的一种方法。

\ifdefined\formula
\else
    \def\formula{E = m c^2}
\fi
\documentclass[border=2pt]{standalone}
\usepackage{amsmath}
\usepackage{varwidth}
\begin{document}
\begin{varwidth}{\linewidth}
\[ \formula \]
\end{varwidth}
\end{document}

还有其他转换器,但如果您可以使用它,则无需费心。

我必须提到MathJax。这可以通过一行JavaScript代码段在浏览器中运行。如果您迁移到浏览器/移动服务,这将是一个完美的解决方案。这是他们的one page tutorial