我正在尝试实现取自https://mathoverflow.net/q/64544/101848:
\usepackage{mathabx,epsfig}
\def\acts{\mathrel{\reflectbox{$\righttoleftarrow$}}}
这样就G\acts X
可以得到
问题是,加载mathabx
会产生从 mathabx 导入所有符号的副作用。例如,它会更改默认的 LaTeX \to
,即,符号。类似的变化也发生在默认的 LaTeX 上\mapsto
,并且它还改变了默认的 LaTeX \in
。
\acts
如果不加载其余符号,我怎样才能执行该命令所做的事情mathabx
?
答案1
\acts
可以改进导入代码,以便使用任意大小的字体。还可以改进的定义,以便制作一个可以正确缩放下标和上标的符号。
\documentclass{article}
\usepackage{amsmath,graphicx}
\DeclareFontFamily{U}{mathb}{}
\DeclareFontShape{U}{mathb}{m}{n}{
<-5.5> mathb5
<5.5-6.5> mathb6
<6.5-7.5> mathb7
<7.5-8.5> mathb8
<8.5-9.5> mathb9
<9.5-11> mathb10
<11-> mathb12
}{}
\DeclareSymbolFont{mathb}{U}{mathb}{m}{n}
\DeclareMathSymbol{\lefttorightarrow}{3}{mathb}{"FC}
\DeclareMathSymbol{\righttoleftarrow}{3}{mathb}{"FD}
\makeatletter
\DeclareRobustCommand{\looparrow}[1]{%
\mathrel{\mathpalette\looparrow@{#1}}%
}
\newcommand{\looparrow@}[2]{\reflectbox{$\m@th#1#2$}}
\makeatother
\newcommand{\acts}{\looparrow{\righttoleftarrow}}
\newcommand{\foo}{\looparrow{\lefttorightarrow}}
\begin{document}
$G\acts X$
$X\foo G$
$A_{G\acts X}$
\end{document}
也许您不需要反向符号,但它几乎是免费的。
不要使用\def
,你会更快乐。
答案2
⟳ 符号(顺时针有间隙的圆形箭头)也出现在unicode-math
(以及旧包stix
和stix2
)中\cwgapcirclearrow
。因此,您可以使用:
\documentclass{article}
\usepackage{unicode-math}
\setmathfont{STIX Two Math}
\begin{document}
\[ G \cwgapcirclearrow X \]
\end{document}
要从具有该符号的字体(例如 STIX Two Math、XITS Math 或 New Computer Modern Math)中仅导入这一个符号,您可以使用range=
以下选项\setmathfont
:
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{Erewhon}
\setmathfont{Erewhon Math}
\setmathfont{STIX Two Math}[ range = \cwgapcirclearrow,
Scale = MatchUppercase ]
\begin{document}
\[ G \cwgapcirclearrow X \]
\end{document}
答案3
模仿https://tex.stackexchange.com/a/14388/150120,我给出了以下解决问题的序言代码:
\DeclareFontFamily{U}{mathb}{\hyphenchar\font45}
\DeclareFontShape{U}{mathb}{m}{n}{
<5> <6> <7> <8> <9> <10> gen * mathb
<10.95> mathb10 <12> <14.4> <17.28> <20.74> <24.88> mathb12
}{}
\DeclareSymbolFont{mathb}{U}{mathb}{m}{n}
\DeclareMathSymbol{\righttoleftarrow}{3}{mathb}{"FD}
\def\acts{\mathrel{\reflectbox{$\righttoleftarrow$}}}
前六行代码取自mathabx.sty
CTAN 上的文件:https://www.ctan.org/tex-archive/fonts/mathabx/texinputs。
在文件中寻找它时找到了"FD
代码(最后一个链接中也可用)。\righttoleftarrow
mathabx.dcl
我之所以发布此答案,是因为上面的前六行代码与引用的 TSE 答案中的代码并不完全相同。这里的代码是 ,mathb
而其他 TSE 答案中的代码是matha
。我最初复制了其他 TSE 答案中的代码,花了一段时间才意识到需要进行一些更改。