我正在开发一个包含 LaTeX 文档生成的在线网络应用程序。
目前,作为 LaTeX 的初学者(但我是团队中最有经验的开发人员),我正在尝试确定将 LaTeX 文档生成为可查看格式的最有效方法。内存是我们关心的问题,因此以下是我们开始使用的方法。
> latex sample.tex
输出 a dvi
,然后我可以将其转换为 apng
或 apdf
> pdflatex sample.tex
pdf
直接输出
这些是迄今为止我使用的主要两种方法,其他方法要么失败,要么被发现过于复杂。
如果有的话,.tex
直接将文件发送给jpeg
似乎是最有效的,但我更希望得到一些专家的意见;]
答案1
您可以借助 imagemagic 从 latex 源获取jpg
或文件。考虑以下代码:png
\documentclass[tikz,convert,png={size=210,density=600}]{standalone}
\tikzset{
edge down and up again/.style={
to path={
|- ([shift={(\tikztotarget.south)}] +0pt,+-2.5mm) -- (\tikztotarget) }}}
\begin{document}
\begin{tikzpicture}
\node at (10, 10) (root) {root} ;
\node at (10, 7) (lvl1middle) {lvl1middle} ;
\node at (8, 6) (lvl2left) {lvl2left} ;
\node at (13, 5) (lvl2right) {lvl2right} ;
\node at (10, 5) (lvl2middle) {lvl2middle} ;
\path[edge down and up again] (root) edge [line to] (lvl1middle)
(lvl1middle) edge (lvl2left)
edge [line to] (lvl2middle)
(lvl2middle) edge (lvl2right);
\end{tikzpicture}
\end{document}
将上述代码保存为myfile.tex
。使用pdflatex
withshell escape
选项进行编译。您将获得一个myfile.png
文件。有关详细信息,请参阅standalone
类文档。
上述内容也可以通过以下不使用的代码来实现standalone
。这demo.tex
是您的实际文件,其内容需要作为图像。这利用了shell escape
功能。:
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{demo.tex}
\documentclass{article}
\usepackage{lipsum}
\begin{document}
\lipsum
\end{document}
\end{filecontents*}
%
%compile pdf first
\immediate\write18{pdflatex demo}
%
% convert to jpg
\makeatletter
\immediate\write18{convert -density 200 -alpha on demo.pdf demo-\@percentchar02d.jpg}
\makeatother
%
\begin{document}
Checkout the folder for image files.
\end{document}
您将在同一目录中获得两个文件 -demo-00.jpg
每个demo-01.jpg
页面都会生成一个jpg
文件。
答案2
TeX 及其衍生产品只能直接生成两种格式的输出,即 DVI 和 PDF。DVI 格式可以转换为其他几种格式,但没有直接生成 JPEG 等格式的方法。(注意:有些工作流程隐藏了细节,但最终还是有一个转换步骤可以得到 JPEG 或.png
文件)
答案3
这个问题可能已经被 mediawiki 解决了,我不是专家,但你可能需要看看Texvc 插件——或者更确切地说,我认为 texvc 是一个支持 mediawiki 数学扩展的独立程序。