체인의 마지막 모양에 약간의 추가를 추가하고 싶었습니다(더 나은 이해를 위해 이미지 참조). 그런데 (검은색과 빨간색) 선이 수직 오프셋 없이 연결될 것이라고 생각했기 때문에 예상치 못한 문제가 발생했습니다. 그래서 제 질문은 (희망적으로) 간단한 것입니다: 이 문제를 어떻게 해결할 수 있을까요?
미리 감사드립니다
\documentclass[tikz]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc,chains,shapes.symbols}
\begin{document}
\tikzset{
flowEnd/.style={draw, shape=signal, signal from=west, signal to=nowhere},
flowPast/.style={draw, shape=signal, signal from=west},
flowStart/.style={draw, shape=signal, signal to=east},
}
\begin{tikzpicture}[start chain=going right,node distance=2mm]
\node [flowStart,on chain] {Hello};
\node [flowPast,on chain] {World};
\node (end) [flowEnd,on chain] {!};
\draw [red]
let \p1=(end.south east), \p2=(end.north east) in
(\p2) --
($ (\p2) + (10mm,0) $) [rounded corners]--
($ (\p1) + (10mm,0) $) --
(\p1);
\end{tikzpicture}
\end{document}
답변1
모양 스타일 정의에서는 outer sep=0pt
common 을 추가하고 정의 해야 합니다 minimum height=...
. 이미지에 대한 완전한 약간 단순화된 코드는 다음과 같습니다.
\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{calc,
chains,
shapes.symbols}
\tikzset{
base/.style = {draw, shape=signal, on chain,
minimum height=3ex, outer sep=0pt},
flowEnd/.style = {base, signal from=west, signal to=nowhere},
flowPast/.style = {base, signal from=west},
flowStart/.style = {base, signal to=east},
}
\begin{document}
\begin{tikzpicture}[
start chain = going right,
node distance = 2mm ]
%
\node [flowStart] {Hello};
\node [flowPast] {World};
\node (end) [flowEnd] {!};
%
\draw[red]
(end.north east) -- ++ (10mm,0) [rounded corners] |- (end.south east);
\end{tikzpicture}
\end{document}