使用 tikzcd 我可以(粗略地)生成我想要的东西:
\begin{tikzcd} [column sep = small]
a \ar[r, "\bullet" {description, inner sep=0, outer sep=0}] & b
\end{tikzcd})
屈服
但是,a) 每次我想画这个箭头时都必须打开 tikzcd 环境,这很不方便;b) 出于一致性的原因,如果“子弹箭头”的行为与箭头完全相同,那就太好了\to
。(上面的箭头比例如略长\to
)。
如果该解决方案可以推广到,那就太好了\xrightarrow
。
答案1
您也可以将子弹堆叠在由 产生的箭头\to
上\xrightarrow
。
\documentclass{article}
\usepackage{amsmath}
\newcommand*{\bulletto}{\mathrel{\ooalign{\(\to\)\cr\>\(\bullet\)}}}
\newlength{\arrowlength}
\newcommand*{\xbulletto}[1]{%
\settowidth{\arrowlength}{\(\xrightarrow{#1}\)}%
\mathrel{\ooalign{\(\xrightarrow{#1}\)\cr\makebox[\arrowlength][c]{\(\bullet\)}}}%
}
\begin{document}
\(a \to b \quad a \xrightarrow{xyz} b\)
\(a \bulletto b \quad a \xbulletto{xyz} b\)
\end{document}