모든 tikzpictures 주위의 간격 늘리기

모든 tikzpictures 주위의 간격 늘리기

나는 tikzpicture가 차지하는 공간을 쉽게 늘릴 수 있다는 것을 알고 있습니다.

\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}

이제 tikz사진이 많아져서 시도해 봤습니다.

\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}

. dimension too large​코드가 여러 번 평가된 것 같습니다. 아니면 오류의 원인은 무엇입니까?

답변1

경계 상자가 0 x 0인 경우 의 내용은 every picture의 시작 부분에서 실행됩니다 . tikzpicture아마도 이로 인해 오류가 발생하는 0으로 나누기가 발생합니다.

의 시작 부분이 아닌 끝 부분에서 코드가 실행되기를 원합니다 tikzpicture. 비어 있는 라이브러리를 backgrounds생성하여 이를 위해 라이브러리를 사용할 수 있습니다 . background rectangle기본적으로 테두리는 그리기 선으로 구성되어 있으므로 패스 draw=none하여 보이지 않게 렌더링하고 outer frame sep패딩을 설정하는 데 사용합니다.

\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}

Okular-on-X 버그로 인해 이미지가 현재 일시중지되었습니다. 영상 서비스에 불편을 드려 죄송합니다.

관련 정보