TikZ - 以前に描画したレイヤーを参照して再描画する方法

TikZ - 以前に描画したレイヤーを参照して再描画する方法

レイヤー 1 に正方形、その上にレイヤー 2 を構成する 4 つの円盤、その上にレイヤー 3 を構成する青い文字で構成された図形があります。次のようになります。

ここに画像の説明を入力してください

正方形に属し、ディスクには属さない隙間空間である「レイヤー 1 - レイヤー 2 の減算」を参照して、それをレイヤー 4 として上に再描画すると、文字の一部が消えて、ディスクの上にある部分だけが表示されるようになります。

現在の図のコードは次のとおりです。

\documentclass{minimal}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}[scale=2]

%Layer 1:
 \shade (0,0) rectangle (4,4);

%Layer 2:
 \shade (1,1) circle [radius=1];
 \shade (3,1) circle [radius=1];
 \shade (1,3) circle [radius=1];
 \shade (3,3) circle [radius=1];

%Layer 3:
 \node [shift={(1.0cm, 5.5cm)}, anchor=north west,rotate=20] (A) {
       \textcolor{blue}{\fontsize{180pt}{11pt}\selectfont{\textbf{A}}}
 };

\end{tikzpicture}
\end{document}

答え1

次の操作を使用できますclip:

\documentclass{standalone}
\usepackage{tikz}
\usepackage{lmodern}
\begin{document}
\begin{tikzpicture}[scale=2]

  % Layer 1:
  \shade (0,0) rectangle (4,4);

  % Layer 2:
  \shade (1,1) circle [radius=1];
  \shade (3,1) circle [radius=1];
  \shade (1,3) circle [radius=1];
  \shade (3,3) circle [radius=1];

  % Clip
  \clip 
  (1,1) circle [radius=1]
  (3,1) circle [radius=1]
  (1,3) circle [radius=1]
  (3,3) circle [radius=1];

  % Layer 3:
  \node [shift={(1.0cm, 5.5cm)}, anchor=north west,rotate=20,
  color=blue,font=\fontsize{180pt}{180pt}\selectfont]
  (A) {\textbf{A}};

\end{tikzpicture}
\end{document}

ここに画像の説明を入力してください

関連情報