使用 eso-pic 时,TikZ 外部化图形渲染不正确

使用 eso-pic 时,TikZ 外部化图形渲染不正确

我在将 eso-pic 与外部化的 tikz 图形结合使用时遇到了一些麻烦。使用添加到其他文档页面的内容\AddToShipoutPicture*{}是在 TikZ 图形上绘制的。当 TikZ 图形以内联方式编译时,不会发生这种情况。

以下是导致此错误的最小工作示例(使用 进行编译pdflatex --shell-escape --write18 test.tex

\documentclass{article}

\usepackage{eso-pic}
\usepackage{pgfplots}
\usepackage{tikz}
\usetikzlibrary{external}
\pgfrealjobname{test}
\tikzexternalize
\tikzset{external/system call={pdflatex \tikzexternalcheckshellescape -halt-on-error -interaction=batchmode -jobname "\image" "\texsource"}}

\begin{document}
\AddToShipoutPicture*{\put(0,480){\rule{\paperwidth}{2cm}}}
\vfil\null
\newpage

\begin{figure}[h]
\centering
\begin{tikzpicture}[scale=1.5]
    \begin{axis}[xmin=0,xmax=5,ymin=0,ymax=3]
    \draw [ultra thick,gray] (axis cs:0.5,0.5) to[out=80,in=200] (axis cs:1.5,2);
    \end{axis}
\end{tikzpicture}
\end{figure}

\end{document}

执行 TikZ externalise 命令时似乎未清除 shipout。有人知道如何清除它才能正确呈现图形吗?

答案1

好的,我发现您可以通过在前言中\AddToShipoutPicture添加选项来删除外部化的 eso-pic 调用。这似乎现在可以正确生成图形,而无需 eso-pic 发货内容。\tikzset{external/optimize command away=\AddToShipoutPicture}

相关内容