普通子对象的“xypic”箭头

普通子对象的“xypic”箭头

在 中xypic,我想制作一个箭头,类似于 给出的普通子对象的符号\vartriangleleft。我希望箭头看起来或多或少像下图中的箭头。

我怎样才能制作出这样的箭?

在此处输入图片描述

答案1

\vartriangleleft在箭头中间排版符号的一个选项是:

\[
\xymatrix{A\ar[r]|-{\vartriangleleft} & B}
\]

问题是符号不会随箭头旋转。具体来说,此方法不适用于垂直或对角箭头。

答案2

\xymatrix如果您不需要使用,这里有一个解决方案tikz-cd

PS = 感谢 Symbol 1 提供的解决方案这里

\documentclass[a4paper]{article}
\usepackage{amsmath,amssymb}
\usepackage{tikz-cd}
\usepackage{stackengine}
\newcommand{\mytri}{\stackinset{c}{}{c}{}{$\vartriangleleft$}{\textcolor{white}{$\blacktriangleleft$}}}
\tikzcdset{%
    triarrow/.style ={rightarrowtail, "\mytri" {description, inner sep=-2pt}, sloped, allow upside down},
}

\begin{document}
    \begin{center}
        \begin{tikzcd}[column sep=large, row sep=large]
            A \arrow[r,  triarrow] 
            \arrow[d, triarrow] & 
            B \arrow[dr, triarrow] \\
            C \arrow[ur, triarrow] &
            D \arrow[l, triarrow]
            \arrow[u, triarrow] & 
            E
        \end{tikzcd} 
    \end{center}
\end{document}

在此处输入图片描述

相关内容