我想使用该fit
选项绘制一个包含多个形状的框。但是当一些形状被剪裁时,fit
仍然会将整个形状纳入其中。
这是一个最小的工作示例。
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{fit,positioning}
\begin{document}
\begin{tikzpicture}
\begin{scope}
\clip (-1cm, -1cm) rectangle ++(1cm, 2cm);
\node [draw, circle, minimum size=2cm] (A) {};
\end{scope}
\begin{scope}[xshift=1cm]
\clip (-1cm, -1cm) rectangle ++(1cm, 2cm);
\node [draw, circle, minimum size=2cm] (B) {};
\end{scope}
\node [draw=blue, line width=1mm, inner sep=1mm, rectangle, fit=(A) (B)] {};
\end{tikzpicture}
\end{document}
结果如下。
有没有办法可以更好地适应我的体型?
由于这些scope
环境是自动生成的(带有append after command
选项),因此我希望它们尽可能保持相似。除此之外,我会采取任何解决方案。
答案1
只需适合B.center
\node [draw=blue, line width=1mm, inner sep=1mm, rectangle, fit=(A) (B.center)] {};
代码:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{fit,positioning}
\begin{document}
\begin{tikzpicture}
\begin{scope}
\clip (-1cm, -1cm) rectangle ++(1cm, 2cm);
\node [draw, circle, minimum size=2cm] (A) {};
\end{scope}
\begin{scope}[xshift=1cm]
\clip (-1cm, -1cm) rectangle ++(1cm, 2cm);
\node [draw, circle, minimum size=2cm] (B) {};
\end{scope}
\node [draw=blue, line width=1mm, inner sep=1mm, rectangle, fit=(A) (B.center)] {};
\end{tikzpicture}
\end{document}