Aumentando el espacio alrededor de todas las tikzpictures

Aumentando el espacio alrededor de todas las tikzpictures

Sé que puedo aumentar fácilmente el espacio que ocupa una imagen tikz

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{fit}
\begin{document}
    y\tikz {\fill circle (2pt); \node[fit=(current bounding box), inner sep=2pt, draw] {};}x
\end{document}

Ahora tengo muchas fotos tikz, así que lo intenté.

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{fit}
\tikzset{every picture/.append code={\node[fit=(current bounding box), inner sep=2pt, draw] {};}}
\begin{document}
    y\tikz {\fill circle (2pt);}x
\end{document}

que falla con dimension too large. Supongo que el código se evalúa varias veces o ¿qué está causando el error?

Respuesta1

El contenido de every picturese ejecuta al principio de tikzpicture, cuando el cuadro delimitador es cero por cero. Presumiblemente esto conduce a una división por cero responsable del error.

Desea que el código se ejecute no al principio sino al final de tikzpicture. La backgroundsbiblioteca se puede utilizar para esto creando una background rectangleque esté vacía. De forma predeterminada, el borde está enmarcado con una línea de dibujo, así que páselo draw=nonepara hacerlo invisible y utilícelo outer frame seppara configurar el relleno.

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{backgrounds}
\tikzset{every picture/.append style={show background rectangle,background rectangle/.style={draw=none,outer frame sep=2pt}}}
\begin{document}
  y\tikz {\fill circle (2pt);}x
\end{document}

Actualmente, las imágenes están suspendidas debido a un error de Okular-on-X. Disculpas por la interrupción de los servicios visuales.

información relacionada