使用 XeTeX 外部化 TikZ 图片

使用 XeTeX 外部化 TikZ 图片

我正在尝试使用 TikZ外部的 带有 XeTeX 的库,用于例子,我遇到了一些问题。设置后

external/system call={xelatex \tikzexternalcheckshellescape 
    -halt-on-error -interaction=batchmode -jobname "\image" "\texsource"}

(编辑:正如答案指出的那样,我无意中使用了``...''而不是"..."这里)而使用默认的mode=convert with system callXeTeX 只会因以下错误而死亡

! Package tikz Error: Sorry, the system call 'xelatex -halt-on-error -interaction=batchmode -jobname ``xetexpics
/externalTest-figure0'' ``\def\tikzexternalrealjob{externalTest}\input{externalTest}''' did NOT result in a usab
le output file 'xetexpics/externalTest-figure0' (expected one of .pdf:.jpg:.jpeg:.png:). Please verify that you 
have enabled system calls. For pdflatex, this is 'pdflatex -shell-escape'. Sometimes it is also named 'write 18'
or something like that. Or maybe the command simply failed? Error messages can be found in 'xetexpics/externalT
est-figure0.log'. If you continue now, I'll try to typeset the picture.

(编辑:这是由于仅启用了重构的 write18,请参阅评论)

而不生成日志文件。对其进行更改mode=list and make会产生不正确的 makefile其中所有制表符均已被替换为^^I且没有正确转义的反斜杠。修复这些错误运行 make 似乎表明成功,但生成的图像是空的。我在日志中似乎能找到的唯一警告或错误是

Package etexcmds Info: Could not find \expanded.
(etexcmds)             That can mean that you are not using pdfTeX 1.50 or
(etexcmds)             that some package has redefined \expanded.
(etexcmds)             In the latter case, load this package earlier.

有谁成功使用过外部的使用 XeTeX,有谁对如何使其工作有什么建议吗?

我正在使用XeTeX, Version 3.1415926-2.3-0.9997.5 (TeX Live 2012/dev/Arch Linux)pgf 2008/01/15 v2.10并且tikz 2010/10/13 v2.10根据日志。

答案1

已知“错误”书写标签的问题(参见xelatex 和 pdflatex 输出文件中的标签不同

“解决方案”是调用

xelatex -8bit -shell-escape

但这可能会对辅助文件的写入产生不利影响。

注意你的写作方式:

\tikzset{external/system call={xelatex \tikzexternalcheckshellescape
    -halt-on-error -interaction=batchmode -jobname "\image" "\texsource"}}

应该有真正的双引号。

相关内容