Imagen de fondo (eso-pic) y tikz externalizados

Imagen de fondo (eso-pic) y tikz externalizados

Estoy intentando crear un documento que contenga:

  • Una imagen de portada (ver1debajo de esta publicación) establecido como fondo usando el paquete eso-pic.
  • Varias imágenes de tikz que exteriorizo ​​usando \tikzexternalize[up to date check={md5}].

Problema:una parte de la imagen de la portada se incluye en el fondo de la imagen tikz.

¿Cómo puedo solucionar este problema manteniendo la externalización?

Siguientela respuesta de tom:En mi documento completo, lo uso \AddToShipoutPictureBGdentro de una macro, por lo que tuve que configurarla \tikzset{external/optimize command away=\mymacro}después de la definición de la macro en lugar de en el \tikzexternalizecomando.

% !TeX TXS-program:compile = txs:///lualatex/[--shell-escape]

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{external}
\tikzexternalize[up to date check={md5}]
\usepackage{eso-pic}
\usepackage{graphicx}

\begin{document}
    
    % Add title image across the complete page
    \AddToShipoutPictureBG*{\AtPageLowerLeft{%
            \includegraphics[width=\paperwidth,height=\paperheight]{my_picture.jpg}}}
    \newpage\null\newpage
        
    \tikzsetnextfilename{tikz_picture}
    \begin{tikzpicture}
        \draw[red, thick] (-1,2) -- (2,-4);
        \draw[red, thick] (-1,-1) -- (2,2);
        \filldraw[red] (0,0) circle (2pt) node[anchor=west]{A tikz picture};
    \end{tikzpicture}
        
\end{document}

Respuesta1

Podrías usar la opción optimize command away=\AddToShipoutPictureBGcuando esté habilitada \tikzexternalize. Tenga en cuenta que el paquete eso-picdebe cargarse antes del \tikzexternalizecomando.

% !TeX TXS-program:compile = txs:///lualatex/[--shell-escape]

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{external}
\usepackage{eso-pic} %%load the 'eso-pic' package before '\tikzexternalize', otherwise the command '\AddToShipoutPictureBG' will not be defined.
\tikzexternalize[
up to date check={md5},
optimize command away=\AddToShipoutPictureBG
]
\usepackage{graphicx}

\begin{document}

    % Add title image across the complete page
    \AddToShipoutPictureBG*{\AtPageLowerLeft{%
            \includegraphics[width=\paperwidth,height=\paperheight]{example-image-a}}}
    \newpage\null\newpage
      
 \tikzsetnextfilename{tikz_picture}

    \begin{tikzpicture}
        \draw[red, thick] (-1,2) -- (2,-4);
        \draw[red, thick] (-1,-1) -- (2,2);
        \filldraw[red] (0,0) circle (2pt) node[anchor=west]{A tikz picture};
    \end{tikzpicture}
        
\end{document}

ingrese la descripción de la imagen aquí

información relacionada