中间带有垂直线的箭头(Tikz-cd)

中间带有垂直线的箭头(Tikz-cd)

我需要一个中间有垂直条的箭头,如下所示:

----|---->

在交换图中。据我所知,Tikzcd 没有直接支持这样的箭头。

关于如何做到这一点,您有什么想法吗?理想情况下,我希望仍然能够拥有标签。

我找到了一种在数学环境中使用 \mathclap 和 + 执行此操作的方法,如下所示箭杆中间有一条短垂直线的箭头代码(不完美但足够好)但这在交换图中不能很好地工作。

答案1

tikz-cd支持标记。

\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}[]
    a \arrow[r,"|" marking] & b
\end{tikzcd}
\end{document}

在此处输入图片描述

如果你想全面掌控酒吧的各个方面,你可以使用 TiZy 装饰。

\documentclass{article}
\usepackage{tikz-cd}
\usetikzlibrary{decorations.markings}
\tikzset{mid vert/.style={/utils/exec=\tikzset{every node/.append style={outer sep=0.8ex}},
postaction=decorate,decoration={markings,
mark=at position 0.5 with {\draw[-] (0,#1) -- (0,-#1);}}},
mid vert/.default=0.75ex}
\begin{document}
\begin{tikzcd}[]
    a \arrow[r,mid vert,"pft"] & b \arrow[r,"pht"] & c
\end{tikzcd}
\end{document}

在此处输入图片描述

在这个版本中,参数是箭头的长度,默认为2*0.75ex,但您也可以调整其他参数。

相关内容