附加箭头

附加箭头

我想在 LaTeX 中绘制附加箭头,即如下所示:

可能,我还想能够命名箭头(但如果不行,我可以使用 \stackrel 或类似命令)。是否有包含此符号的包?

答案1

这是一种可能性,中间有一个非常小的符号。

\documentclass{article}
\usepackage{amsmath}
\usepackage{pict2e}

\makeatletter
\newcommand{\adjunction}[4]{%
  % #1 : #2 <arrows> #3 : #4
  #1\colon #2%
  \mathrel{\vcenter{%
    \offinterlineskip\m@th
    \ialign{%
      \hfil$##$\hfil\cr
      \longrightharpoonup\cr
      \noalign{\kern-.3ex}
      \smallbot\cr
      \longleftharpoondown\cr
    }%
  }}%
  #3 \noloc #4%
}
\newcommand{\longrightharpoonup}{\relbar\joinrel\rightharpoonup}
\newcommand{\longleftharpoondown}{\leftharpoondown\joinrel\relbar}
\newcommand\noloc{%
  \nobreak
  \mspace{6mu plus 1mu}
  {:}
  \nonscript\mkern-\thinmuskip
  \mathpunct{}
  \mspace{2mu}
}
\newcommand{\smallbot}{%
  \begingroup\setlength\unitlength{.15em}%
  \begin{picture}(1,1)
  \roundcap
  \polyline(0,0)(1,0)
  \polyline(0.5,0)(0.5,1)
  \end{picture}%
  \endgroup
}
\makeatother

\begin{document}

\[
\adjunction{F}{\mathcal{C}}{\mathcal{D}}{G}
\]

\end{document}

在此处输入图片描述

\adjunction*您可以选择使用 将标签放置在上方和下方的版本。

\documentclass{article}
\usepackage{amsmath}
\usepackage{pict2e}

\makeatletter
\newcommand{\adjunction}{\@ifstar\named@adjunction\normal@adjunction}
\newcommand{\normal@adjunction}[4]{%
  % #1 : #2 <arrows> #3 : #4
  #1\colon #2%
  \mathrel{\vcenter{%
    \offinterlineskip\m@th
    \ialign{%
      \hfil$##$\hfil\cr
      \longrightharpoonup\cr
      \noalign{\kern-.3ex}
      \smallbot\cr
      \longleftharpoondown\cr
    }%
  }}%
  #3 \noloc #4%
}
\newcommand{\named@adjunction}[4]{%
  % #1 : #2 <arrows> #3 : #4
  #2%
  \mathrel{\vcenter{%
    \offinterlineskip\m@th
    \ialign{%
      \hfil$##$\hfil\cr
      \scriptstyle#1\cr
      \noalign{\kern.1ex}
      \longrightharpoonup\cr
      \noalign{\kern-.3ex}
      \smallbot\cr
      \longleftharpoondown\cr
      \scriptstyle#4\cr
    }%
  }}%
  #3%
}
\newcommand{\longrightharpoonup}{\relbar\joinrel\rightharpoonup}
\newcommand{\longleftharpoondown}{\leftharpoondown\joinrel\relbar}
\newcommand\noloc{%
  \nobreak
  \mspace{6mu plus 1mu}
  {:}
  \nonscript\mkern-\thinmuskip
  \mathpunct{}
  \mspace{2mu}
}
\newcommand{\smallbot}{%
  \begingroup\setlength\unitlength{.15em}%
  \begin{picture}(1,1)
  \roundcap
  \polyline(0,0)(1,0)
  \polyline(0.5,0)(0.5,1)
  \end{picture}%
  \endgroup
}
\makeatother

\begin{document}

\[
\adjunction{F}{\mathcal{C}}{\mathcal{D}}{G}
\]
\[
\adjunction*{F}{\mathcal{C}}{\mathcal{D}}{G}
\]

\end{document}

在此处输入图片描述

相关内容