\xmapsto 在箭头开头显示“7”

\xmapsto 在箭头开头显示“7”

我正在使用 XeTeX,需要在 \mapsto 箭头上方添加文本。所以我在 Google 上搜索并找到了命令。但不幸的是,结果是这样的:

在此处输入图片描述

以下是代码:

\documentclass[a4paper,10pt]{scrartcl}
\usepackage{unicode-math}
\usepackage[leqno]{mathtools}
\begin{document}
\begin{align*}
  F:\;\mathbb{K}^n \xmapsto{A} \mathbb{K}^m
\end{align*}
\end{document}

答案1

如果你愿意使用 LuaLaTeX:

\documentclass[a4paper,10pt]{scrartcl}
\usepackage[leqno]{mathtools}
\usepackage{unicode-math}

\makeatletter
\renewcommand{\xmapsto}[2][]{\mathrel{\mathpalette\xmapsto@{{#1}{#2}}}}
\newcommand{\xmapsto@}[2]{\xmapsto@@{#1}#2}
\newcommand{\xmapsto@@}[3]{%
  \begingroup
  \sbox\z@{$\m@th#1\mathop{}\limits_{\;#2\;}^{\;#3\;}$}%
  \mathop{\Uhextensible width \wd\z@ 0 "27FC}_{#2}^{#3}%
  \endgroup
}
\makeatother 

\begin{document}
\begin{gather*}
F\colon\mathbb{K}^n \xmapsto{A} \mathbb{K}^m \\
A \xmapsto[aaaaa]{bbbbbbbbbb} B
\end{gather*}
\end{document}

在此处输入图片描述

另一方面,\mapsto通常不用于表示具有定义域和陪域的映射,而是用于表示其对元素的作用。

答案2

所以这对我来说是可行的:

\documentclass[a4paper,10pt]{scrartcl}
\usepackage{unicode-math}
\usepackage[leqno]{mathtools}
\DeclareSymbolFont{pazosymbols}{OMS}{zplm}{m}{n}
\makeatletter
\ExplSyntaxOn %define \xmapsto
\DeclareMathSymbol \c_pazo_minus \mathbin { pazosymbols } 0
\DeclareMathSymbol \c_pazo_mapstochar \mathrel { pazosymbols } { "37 }
\DeclareMathSymbol \c_pazo_rightarrow \mathrel { pazosymbols } { "21 }
\cs_new_protected_nopar:Nn \pazo_relbar: {
  \mathrel {
    \mathpalette \mathsm@sh \c_pazo_minus
  }
}
\cs_set_protected_nopar:Nn \MT_mapsto_fill: {
  \arrowfill@ { \c_pazo_mapstochar \pazo_relbar: } \pazo_relbar: \c_pazo_rightarrow
}
\ExplSyntaxOff
\makeatother
\begin{document}
\begin{align*}
  F:\;\mathbb{K}^n \xmapsto{A} \mathbb{K}^m
\end{align*}
\end{document}

相关内容