有垂直的 \mapsto 符号吗?

有垂直的 \mapsto 符号吗?

垂直符号的 TeX 代码是什么\mapsto?我找过了,但没找到。

我正在绘制交换图,并且想绘制特定符号的映射,因此我在垂直箭头的标签上执行此操作,通过调整标签元素的位置。其余工作正常,我需要的只是一个垂直\mapsto符号。目前我能做的最好的就是使用\downarrow并在稍上方放置一个连字符,但看起来不太好。

\usepackage[all]{xy} 

\xymatrix{
  0 \ar[r] & 
  A_{n+1} \ar[r] \ar[d] &
  B_{n+1} \ar[r] \ar[d] &
  C_{n+1} \ar[r] \ar[d] &
  0 \ar[d]
  \\
  &
  A_n \ar[r] \ar[d] &
  B_n \ar[r] \ar[d]^(0.25){b}^(0.6){d_{n}} &
  C_n \ar[r]^{g_n} \ar[d]_(0.3){c}_(0.44){ \; \; - }_{ \downarrow}_(0.7){0} &
  0 \ar[d]
  \\
  &
  A_{n-1} \ar[r]^(0.2){a} &
  B_{n-1} \ar[r]^{f_{n-1}} &
  C_{n-1} \ar[r] & 0
}

答案1

MnSymbol套餐\upmapsto提供\downmapsto

\documentclass{article}
\usepackage{MnSymbol}

\begin{document}

$\upmapsto\quad\downmapsto$

\end{document}

在此处输入图片描述

但是,使用此包会改变其他一些符号,这可能是不可取的。在这个特殊情况下,由于交换图需要箭头,我建议使用该tikz-cd包及其mapsto箭头选项:

\documentclass{article}
\usepackage{tikz-cd}

\begin{document}

\begin{tikzcd}
A \arrow{r}{\psi} \arrow[mapsto,color=red]{d}
& B  \\
C \arrow[mapsto,color=red]{r}[color=blue]{\eta}
& D \arrow[mapsto,color=red]{u}
\end{tikzcd}

\end{document}

在此处输入图片描述

现在已经对原始问题进行了编辑,包括所需的交换图,这里使用tikz-cd

\documentclass{article}
\usepackage{tikz-cd}

\newcommand\tikzmark[5][0]{%
  \tikz[overlay,remember picture,baseline] \node [rotate=#1,anchor=base,xshift=#4,yshift=#5] (#2) {$\scriptstyle#3$};}

\begin{document}

\begin{tikzcd}
  0 \arrow{r} & 
  A_{n+1} \arrow{r} \arrow{d} &
  B_{n+1} \arrow{r} \arrow{d} &
  C_{n+1} \arrow{r} \arrow{d} &
  0 \arrow{d}
  \\
  &
  A_n \arrow{r} \arrow{d} &
  \tikzmark{s}{b}{14pt}{-9pt}B_n \arrow{r} \arrow{d}{d_n} &
  \tikzmark{s}{c}{-2pt}{-8pt}\tikzmark{e}{0}{-2pt}{-24pt}\tikzmark[270]{a}{\mapsto}{14pt}{-4pt}
  C_n \arrow{r}{g_n} \arrow{d} &
  0 \arrow{d}
  \\
  &
  A_{n-1} \arrow{r}{a} &
  B_{n-1} \arrow{r}{f_{n-1}} &
  C_{n-1} \arrow{r} & 0
\end{tikzcd}

\end{document}

的变体\tikzmark用于定位一些特殊字符;特别是,将选项rotate=270应用于标准时获得了垂直的“downmapsto”箭头\mapsto

在此处输入图片描述

答案2

您可以旋转符号:

\usepackage{graphicx} % for \rotatebox
\usepackage{amsmath}  % for \substack
\newcommand{\downmapsto}{\rotatebox[origin=c]{-90}{$\scriptstyle\mapsto$}\mkern2mu}

并输入相关箭头作为

C_n \ar[r]^{g_n} \ar[d]_{\substack{c\\\downmapsto\\0}} &

添加的填充空间是通过反复试验来计算的,以确保良好的对齐。 在此处输入图片描述

答案3

这个符号叫做U+21A7在 Unicode 中。有很多支持该字体。您可以通过以下方式搜索系统上可能的符号点击这里

在该字体列表的帮助下,我尝试了一些我的机器上可用的符号(这需要 Xe 或 LuaLaTeX):

% arara: lualatex

\documentclass{article}
\usepackage{fontspec}
\usepackage{booktabs}
\newcommand{\test}[1]{\texttt{#1} & {\fontspec{#1}\symbol{"21A7}}}

\begin{document}
    \begin{tabular}{lc}
        \toprule
        Font & Example \\
        \midrule
        \test{arialuni.ttf} \\
        \test{code2000.ttf} \\
        \test{dejavusans.ttf} \\
        \test{mathcadunimath.otf} \\
        \test{osifont-2013-04-18.ttf} \\
        \test{quivira.otf} \\
        \test{symbola.ttf} \\
        \bottomrule
    \end{tabular}
\end{document}

在此处输入图片描述

unicode-math此符号在命令下的包中也有描述\mapsdown。一些可能的符号如下所示:

% arara: lualatex

\documentclass{article}
\usepackage{unicode-math}

\begin{document}
    $\mapsdown$\setmathfont{XITS Math}$\mapsdown$\setmathfont{Asana Math}$\mapsdown$\setmathfont{TeX Gyre Pagella Math}$\mapsdown$
\end{document}

在此处输入图片描述

纳入您的图表中,我会执行以下操作:

% arara: lualatex

\documentclass{article}
\usepackage{tikz-cd}
\usepackage{mathtools}
\usepackage{unicode-math}

\begin{document}
\begin{tikzcd}[row sep = 8ex]
    0 \arrow{r} & A_{n+1} \arrow{r} \arrow{d} & B_{n+1} \arrow{r} \arrow{d} & C_{n+1} \arrow{r} \arrow{d} & 0 \arrow{d} \\
                & A_n \arrow{r} \arrow{d} & B_n \arrow{r} \arrow{d}{d_n} & C_n \arrow{r}{g_n} \arrow[swap]{d}{\substack{c\\[1.1\jot]\mapsdown\\[1.1\jot]0}} & 0 \arrow{d} \\
                & A_{n-1} \arrow{r}{a} & B_{n-1} \arrow{r}{f_{n-1}} & C_{n-1} \arrow{r} & 0
\end{tikzcd}
\end{document}

在此处输入图片描述

答案4

继续使用 xy 包写入

\ar@{|->}[r]

@ 总是表示对箭头的一些修改。然后,在括号内{尾部、轴部、头部的修改}

但如果括号中只有一个符号,例如

 \ar@{|}[r]

它会修改头部。

参见ftp://ctan.unsw.edu.au/tex-archive/macros/generic/diagrams/xypic/xy/doc/xyguide.pdf

相关内容