我正在尝试绘制一个arrow[d]
直接从C
直线出发的图形Y
:
\documentclass{beamer}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}
A \arrow[r] & B + &C \arrow[d]\\
& & Y
\end{tikzcd}
\end{document}
+
然而,这会导致和之间出现很大的空间C
:
减少列数似乎可以解决这个问题,但我无法让arrow[d]
偏离C
。(而是偏离了符号+
):
\documentclass{beamer}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}
A \arrow[r] & B + C \arrow[d]\\
& Y
\end{tikzcd}
\end{document}
我怎样才能从直接\arrow[d]
出发前往?C
Y
答案1
答案2
我不会说这很漂亮,但是以下或多或少作品。
注意:shift left
使用的是 而不是shift right
,因为left
或right
限定符是相对于箭头方向而言的(这里是向下的)。
\documentclass{beamer}
\usepackage{tikz-cd}
\newlength{\myLen}
\newlength{\myLenii}
\begin{document}
\settowidth{\myLenii}{$C$}
\settowidth{\myLen}{$B+C$}
\addtolength{\myLen}{-\myLenii}
\begin{tikzcd}
A \arrow[r] & B + C \arrow[d, shift left=0.5\myLen]\\
& \hspace*{\myLen}Y
\end{tikzcd}
\end{document}