
Considere este MWE:
% to rebuild:
% rm test-testplot.pdf ; pdflatex -shell-escape test.tex
\RequirePackage{filecontents}
\begin{filecontents*}{testplot.tikz}
\begin{tikzpicture}
\begin{axis}[
width=500pt,
height=195pt,
clip=true,
axis x line=middle,
axis y line=middle,
]
\end{axis}
\end{tikzpicture}
\end{filecontents*}
\documentclass[11pt]{book}
\usepackage[
paperwidth=15cm,
paperheight=20cm,
outer=2.5cm,
inner=2.5cm,
top=2.5cm,
bottom=2.5cm
]{geometry}
\usepackage[a4,cam,center]{crop}
\usepackage{tikz,pgfplots,adjustbox,lipsum}
\usetikzlibrary{external}
\tikzexternalize[] %activate!
\begin{document}
\lipsum[1]
\tikzsetnextfilename{\tikzexternalrealjob-testplot}
\begin{figure}[!ht]
\begin{adjustbox}{width=\textwidth}%
\input{./testplot.tikz}
\end{adjustbox}
\caption{Just trying to insert a plot picture here}
\label{fig:test}
\end{figure}
\end{document}
El resultado es un poco extraño, ya que las marcas de recorte de la parte superior de la página real se capturan en el PDF de la tikz
imagen que contiene pgfplots
! En una mirada más cercana (seleccionando alrededor del área en un visor de PDF; haga clic para ver la resolución completa):
... resulta que también crop
se captura la firma del paquete, aunque oculta. La página completa, incluido el pdf externalizado, se muestra a la derecha.
¿Qué hice mal esta vez y cómo puedo externalizar este tikz pgfplot sin capturar las marcas de recorte? (no hace falta decir que me gustaría que la externalización se realice desde el documento principal, para que se tengan en cuenta todos los cambios de tamaño de página, fuente, etc.).
EDITAR: He estado usando tikz externalizando con varias otras imágenes de tikz en el mismo documento (que sin embargo, no usó pgfplots
), y no hubo ningún problema con ellas, hasta donde pude ver... pero tal vez debería volver -controlar
Respuesta1
Suprime la carga de recorte cuando las imágenes se crean con \tikzifexternalizing
: (No olvides eliminar las imágenes antiguas o forzar la recreación)
\documentclass[11pt]{book}
\usepackage[
paperwidth=15cm,
paperheight=20cm,
outer=2.5cm,
inner=2.5cm,
top=2.5cm,
bottom=2.5cm
]{geometry}
\usepackage{tikz,pgfplots,adjustbox,lipsum}
\usetikzlibrary{external}
\tikzexternalize[] %activate!
\tikzifexternalizing{}{\usepackage[a4,cam,center]{crop}}
\begin{document}
\lipsum[1]
\tikzsetnextfilename{\tikzexternalrealjob-testplot}
\begin{figure}[!ht]
\begin{adjustbox}{width=\textwidth}%
\input{./testplot.tikz}
\end{adjustbox}
\caption{Just trying to insert a plot picture here}
\label{fig:test}
\end{figure}
\end{document}