这可能是一个非常愚蠢的问题,但它让我发疯。
我有三个用箭头链接的 tcolorbox。第二行框位于 minipage 环境中,我希望一个框与第一个框对齐,另一个框位于第一个框下方的中心。
这是我的代码:
\begin{center}
\begin{tcolorbox}[enhanced, overlay, width=1.5in, halign = flush center, remember as=ci]
Circuit Imprimé
\end{tcolorbox}
\begin{minipage}{.5\linewidth}
\begin{flushleft}
\begin{tcolorbox}[enhanced, overlay, width=1.3in, halign = flush center, remember as=pm]
Procédés\\ Métallurgiques
\end{tcolorbox}
\end{flushleft}
\end{minipage}%
\begin{minipage}{.3\linewidth}
\begin{tcolorbox}[enhanced, overlay, width=1.8in, halign = flush center, remember as=adm]
Analyse des matériaux
\end{tcolorbox}
\end{minipage}
\end{center}
\begin{tikzpicture}[overlay,remember picture,line width=0.5mm,draw=red!75!black]
\draw[->, rounded corners] (ci.east) -- ++(1.5,0) |- (adm.east);
\end{tikzpicture}
\begin{tikzpicture}[overlay,remember picture,line width=0.5mm,draw=red!75!black]
\draw[->, rounded corners] (adm.west) to (pm.east);
\end{tikzpicture}
编辑:说实话,我正在尝试以更风格化的方式为一个项目重新制作此图表。但由于我是 tikz 和 tcolorbox 的新手,所以这并不容易:
答案1
Your `tikzpicures` replace width:
\begin{tikzpicture}[overlay,remember picture,
line width=0.5mm, draw=red!75!black,
rounded corners]
\draw[->] (ci.east) -- +(5,0) |- (adm);
\draw[->] (adm) -- (pm);
\end{tikzpicture}
你将获得:
我想知道,为什么要用如此复杂的方式绘制这幅图像,直接在 TikZ 中绘制会更简单且更容易“控制”:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usetikzlibrary{arrows.meta,positioning}
\usepackage[many]{tcolorbox}
\begin{document}
\begin{tikzpicture}[
node distance = 5mm and -3mm,
mynode/.style = {draw=gray, ultra thick, fill=gray!20,
rounded corners, align=center,
minimum height= 12mm, inner sep=2mm,
text width = #1},
arrow/.style = {draw=red!75!black, line width=1mm,
-{Triangle[]} }
]
\node (ci) [mynode=1.5in] {Circuit Imprimé};
\node (pm) [mynode=1.3in,
below left=of ci] {Procédés\\ Métallurgiques};
\node (adm) [mynode=1.3in,
below right=of ci] {Analyse\\ des Matériaux};
%
\draw[arrow] (ci.east) -- +(5,0) |- (adm);
\draw[arrow] (adm) -- (pm);
\end{tikzpicture}
\end{document}
这使:
可以看出,上面的解决方案不需要 minipages,tcolorbox
-es you 的内容写入节点,节点彼此相对定位。距离由 控制node distance
。只有 car 是确定节点ci
和之间箭头的偏移量adm
。
请注意,在第一张图片中我没有使用utf8
编码,因此缺少了一些字母。