我有一张带有 tikzcd 的图表的一部分,如下所示:
\begin{tikzcd}[column sep=20mm]
A\ar[rd,"a"] & \\
B\ar[rd,"b"]\ar[u,"b"] & C \\
& D\ar[u,"d"]
\end{tikzcd}
并产生以下内容
现在,我想在这个图表中间添加一个文本,并且倾斜度与它相同。我实现这个的唯一方法是将 tikzcd 嵌入 tikzpicture 中:
\begin{tikzpicture}
\node {\begin{tikzcd}[column sep=20mm]
A\ar[rd,"a"] & \\
B\ar[rd,"b"]\ar[u,"b"] & C \\
& D\ar[u,"d"]
\end{tikzcd}};
\node[rotate=-25] {Text};
\end{tikzpicture}
有没有办法在 tikzcd 环境中产生相同的效果?
答案1
使用这个答案没有必要嵌套s,当你将环境放入 的节点tikzpicture
时,你实际上正在做这件事。tikzcd
tikzpicture
\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\[ \begin{tikzcd}[column sep=20mm,
execute at end picture={
\path (\tikzcdmatrixname-1-1) -- (\tikzcdmatrixname-2-1)
coordinate[pos=0.5] (aux1)
(\tikzcdmatrixname-2-2) -- (\tikzcdmatrixname-3-2)
coordinate[pos=0.5] (aux2)
(aux1) -- (aux2) node[midway,sloped]{Text};
}]
A\ar[rd,"a"] & \\
B\ar[rd,"b"]\ar[u,"b"] & C \\
& D\ar[u,"d"]
\end{tikzcd}\]
\end{document}