그림자 위에 맞춤 노드를 사용하여 그림자 포함

그림자 위에 맞춤 노드를 사용하여 그림자 포함

나는 이중 복사 섀도우를 사용했습니다.이 답변) 노드에 여러 직사각형을 추가합니다. 이제 해당 노드와 다른 여러 노드를 맞춤 노드로 래핑하고 싶지만 맞춤 노드에 그림자가 포함되지 않은 것 같습니다.

예를 들어:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shadows,positioning,calc,fit}
\tikzset{multiple/.style = {double copy shadow={shadow xshift=1ex,shadow
         yshift=-1.5ex,draw=black!30},fill=white,draw=black,thick,minimum height = 1cm,minimum
           width=2cm},
         ordinary/.style = {rectangle,draw,thick,minimum height = 1cm,minimum width=2cm}}

\begin{document}
\begin{tikzpicture}
   \node [ordinary] at (0,0) (a) {Some};
   \node [multiple,below=3cm of a] (b) {Text};
   \draw[-latex] (a) -- coordinate (ab) (b);
   \draw (ab) -- ++(0.7,-0.5)coordinate[pos=.3](ab1) coordinate[pos=.6](ab2);
   \draw[-latex] (ab1) -- ($(b.north west)!(ab1)!(b.north east)$);
   \draw[-latex] (ab2) -- ($(b.north west)!(ab2)!(b.north east)$);

   \node [fit=(a)(b),draw,rectangle] {};
\end{tikzpicture}
\end{document}

결과는 다음과 같습니다.

렌더링된 예

이를 포함하도록 코드를 변경할 수 있습니까?

답변1

그림자로 인한 점유 증가가 알려진 경우 그림자를 포함하도록 fit shadow증가된 스타일을 정의할 수 있습니다.x|y sep

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shadows,positioning,calc,fit}
\tikzset{%
multiple/.style = {%
    double copy shadow={%
        shadow xshift=1ex, 
        shadow yshift=-1.5ex, 
        draw=black!30},
    fill=white, 
    draw=black,
    thick,
    minimum height = 1cm,
    minimum width=2cm},
ordinary/.style = {%
    rectangle,
    draw,
    thick,
    minimum height = 1cm,
    minimum width=2cm},
fit shadow/.style = {%
    fit = #1,
    inner xsep=2ex+.3333em,
    inner ysep=3ex+.3333em}
}

\begin{document}
\begin{tikzpicture}
   \node [ordinary] at (0,0) (a) {Some};
   \node [multiple, below=3cm of a] (b) {Text};
   \draw[-latex] (a) -- coordinate (ab) (b);
   \draw (ab) -- ++(0.7,-0.5)coordinate[pos=.3](ab1) coordinate[pos=.6](ab2);
   \draw[-latex] (ab1) -- ($(b.north west)!(ab1)!(b.north east)$);
   \draw[-latex] (ab2) -- ($(b.north west)!(ab2)!(b.north east)$);

   \node [fit shadow=(a)(b), draw, rectangle] {};
\end{tikzpicture}
\end{document}

여기에 이미지 설명을 입력하세요

대안으로, 원하는 그림자 모서리를 fit목록에 포함시키는 것도 가능합니다:

\node [fit={(a)([shift={(2ex,-3ex)}]b.south east)}, draw, rectangle] {};

여기에 이미지 설명을 입력하세요

관련 정보