一段时间以来,我一直在使用 externalize 来生成图片,最近我尝试使用 和 来生成图片,lualatex
以便gnuplot
生成轮廓图。在我按照不同的步骤操作后,我开始在编译时遇到问题,虽然没有使用 lualatex 或 gnuplot,更具体地说,当我启用 时externalize
。
我收到的信息是:
'pdflatex' is not recognized as an internal or external command, operable program or batch file.
只是一点背景知识,在设置 gnuplot 时,我在 PATH 中添加了环境变量,但没有修改其他任何内容。
截至目前,从一开始,我的 pdflatex 编译器命令就是:
"C:/Users/Augusto/AppData/Local/Programs/MiKTeX/miktex/bin/x64/pdflatex.exe" -synctex=1 -interaction=nonstopmode -extra-mem-top=1000000000 -extra-mem-bot=1000000000 -shell-escape "testtt".tex
在使用 externalize 时,请确保启用它,-enable-write18
如下面的代码所示。
\usetikzlibrary{external}
\tikzexternalize[
prefix=tikz/,
shell escape=-enable-write18
]
仅当我启用了 externalize 时才会收到此消息,而当我使用\tikzexternaldisable
中的命令禁用它时,该消息就会消失preamble
。
每当我编译 tex 文件时,我都会收到错误消息,然后
! Package tikz Error: Sorry, the system call 'pdflatex -enable-write18 -halt-on
-error -interaction=batchmode -jobname "tikz/test" "\def\tikzexternalrealjob{te
sttt}\input{testtt}"' did NOT result in a usable output file 'tikz/test' (expec
ted one of .pdf:.jpg:.jpeg:.png:). Please verify that you have enabled system c
alls. For pdflatex, this is 'pdflatex -shell-escape'. Sometimes it is also name
d 'write 18' or something like that. Or maybe the command simply failed? Error
messages can be found in 'tikz/test.log'. If you continue now, I'll try to type
set the picture.
我猜测,我尝试为 MWE 创建一个虚拟 tex 文件,但问题仍然存在。我尝试查找它,并发现了一些有关 externalize 和此无法识别的问题的问题,例如[1]和[2]。
我已经检查了我的环境变量,与 miktex 相关的变量如下(我以前从未修改过)。
在添加以下代码时2,PATH 实际上是空的,这对我来说似乎很奇怪。
\tikzset{external/system call={echo $PATH > test.log}}
最后,我的平均能量损失如下所示。
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\usetikzlibrary{external}
\tikzexternalize[
prefix=tikz/,
shell escape=-enable-write18
]
%\tikzexternaldisable
\tikzexternalenable
\begin{document}
\tikzsetnextfilename{test}
\begin{tikzpicture}
\begin{axis}[xmin=0,xmax=50]
\addplot[domain=0:50, samples=100] {x};
\end{axis}
\end{tikzpicture}
\end{document}
希望有人能帮助我!