我正在尝试构建一个接受带有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)
关于一个方向或一组包/技术/等的任何建议在这里都很有用。
答案 0 :(得分:0)
使用数学准备您的乳胶文档并使用优秀的开源ImageMagick
pdflatex formula.tex
convert -density 300 formula.pdf -quality 90 formula.png
上面使用的convert
命令是ImageMagick
工具之一。有关许多选项,请参阅文档和众多在线资源。该软件具有适用于所有主要平台的版本。
应准备输入乳胶文件,以便没有背景,边距等。有关如何执行此操作的讨论,请参阅this post和the 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。