
Я слежу за ответом, который я получил.здесьдля предыдущего вопроса о том, как управлять расположением текста внутри большого узла в tikz
. Я хотел бы, чтобы наклонный блок окружал 4 меньших блока, а затем автоматически размещал метку для наклонного блока в правом верхнем углу. Он недостаточно правый. Я мог бы вручную переместить его, но я буду делать это несколько раз, и наклонный блок будет менять размер каждый раз. Поэтому это придется делать неоднократно.
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows,fit,backgrounds}
\tikzset{box/.style={draw, minimum width = 1.cm, minimum height = 1.cm, text width=1cm, text centered},
slantedbox/.style={draw,trapezium,trapezium left angle=70,trapezium right angle=-70, label={[shift={(9ex,-3ex)}]north east:#1}}
}
\begin{document}
\begin{tikzpicture}
\node [box] (phiQQ) at (0,0) {$\phi_{QQ}$};
\node [box] (phiQA) at (3,0) {$\phi_{QA}$};
\node [box] (phiQ*A) at (6,0) {$\phi_{Q^*A}$};
\node [box] (phiAA) at (4.5,-2) {$\phi_{AA}$};
\node [slantedbox = $\xi$, fit = (phiQQ)(phiQA)(phiQ*A)(phiAA), minimum height = 2cm] at (3,-1) (xi) {};
\end{tikzpicture}
\end{document}
Вот мой текущий результат:
Я $\xi$
автоматически хочу, чтобы было правее.
решение1
Использовать top right corner
в
slantedbox/.style={draw,trapezium,trapezium left angle=70,
trapezium right angle=-70, label={[shift={(0,-3ex)}]top right corner:#1}}
Возможные якоря (со pgfmanual
страницы 705)
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows,fit,backgrounds}
\tikzset{box/.style={draw, minimum width = 1.cm, minimum height = 1.cm, text width=1cm, text centered},
slantedbox/.style={draw,trapezium,trapezium left angle=70,
trapezium right angle=-70, label={[shift={(0,-3ex)}]top right corner:#1}}
}
\begin{document}
\begin{tikzpicture}
\node [box] (phiQQ) at (0,0) {$\phi_{QQ}$};
\node [box] (phiQA) at (3,0) {$\phi_{QA}$};
\node [box] (phiQ*A) at (6,0) {$\phi_{Q^*A}$};
\node [box] (phiAA) at (4.5,-2) {$\phi_{AA}$};
\node [slantedbox = $\xi$, fit = (phiQQ)(phiQA)(phiQ*A)(phiAA), minimum height = 2cm] at (3,-1) (xi) {};
\end{tikzpicture}
\end{document}