![ShareLaTeX 和 auto-pst-pdf](https://linux22.com/image/331771/ShareLaTeX%20%E5%92%8C%20auto-pst-pdf.png)
在我的代码中,我使用chemnum
ShareLaTeX 上的化学化合物编号。由于现在我正在编译设置latex
为编译器,但出于一系列原因,我想切换到pdflatex
。所以我添加了行
\usepackage[run=2, crop=off]{auto-pst-pdf}
并将编译器切换到pdflatex
,但编译失败,因为auto-pst-pdf
无法创建output-pics.pdf
。完整日志为这里。
如果我在我的计算机上本地编译相同的代码pdflatex
,则编译将以没有任何错误的方式结束。这里你可以找到我本地编译成功的日志。
考虑到 ShareLaTeX 编译器的一个问题,我写信给 ShareLaTeX 支持团队,但他们回复说他们“无法帮助解决深入的 LaTeX 问题”,并建议“在 tex.stackexchange.com 上提问”。所以我来了!:D
这是我的 MWE:你可以找到文件ammide.eps
这里。
\documentclass[a4paper, 11pt]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}
\usepackage{newfloat}
\usepackage[run=2, crop=off]{auto-pst-pdf}
\usepackage{chemnum}
\DeclareFloatingEnvironment[
listname={Elenco degli Schemi},
name=Schema,
placement=htbp,
]{scheme}
\begin{document}
\begin{scheme}[htbp]
\replacecmpd{tiofencarbossilato}
\replacecmpd{cloruroacido}
\replacecmpd{ammide}
\includegraphics{ammide.eps}
\caption{Sintesi N,N-dietiltiofen-3-carbossiammide}
\end{scheme}
\end{document}
一个更简单的工作示例如下
\documentclass[a4paper, 11pt]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}
\usepackage[run=2, crop=off]{auto-pst-pdf}
\begin{document}
Some text
\end{document}
在 ShareLaTeX 上使用pdflatex
,可以正确生成输出文件,但仍然有警告Package auto-pst-pdf Warning: Could not create output-pics.pdf. Auxiliary files not deleted. This warning occured on input line 124.
,这最终是我所解决的主要问题。
答案1
您的日志文件中令人惊讶的是,您的 sharelatex 似乎使用 texlive 2015(我仍然看到 TL2014),并且它似乎激活了 --shell-escape。
问题的根源在于 sharelatex 设置\jobname
为“输出”,这会使 auto-pst-pdf 混乱。例如,它尝试运行latex output.tex
。您可以通过运行 在本地重现该问题pdflatex --jobname=output --shell-escape yourfile
。
您可以尝试\jobname
在文档中重新定义。但这可能会使其他软件包产生混淆,因此我建议在小文档中使用它来创建图片,然后正常地将其包含在主文档中。
\documentclass[a4paper, 11pt]{book}
\def\jobname{test-utf8} %<-- your file name
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}
\usepackage{newfloat}
\usepackage[run=2, crop=off]{auto-pst-pdf}
\usepackage{chemnum}
\DeclareFloatingEnvironment[
listname={Elenco degli Schemi},
name=Schema,
placement=htbp,
]{scheme}
\begin{document}
\begin{scheme}[htbp]
\replacecmpd{tiofencarbossilato}
\replacecmpd{cloruroacido}
\replacecmpd{ammide}
\includegraphics{ammide.eps}
\caption{Sintesi N,N-dietiltiofen-3-carbossiammide}
\end{scheme}
\end{document}