多年来,我一直在使用一个杂乱无章的命令来获取我所在地区高中采用的教科书中使用的弧符号。我对结果并不十分满意:它只是勉强可以忍受。我想这里的社区中可能有人能为我几年来一直在使用的方法提供更好的解决方案。
\documentclass{article}
\usepackage{amsmath,amssymb}
%% my poor man's solution to arc notation
\newcommand{\tarc}{\mbox{\large$\frown$}}
\newcommand{\arc}[1]{\stackrel{\tarc}{#1}}
%%
\pagestyle{empty}
\begin{document}
\begin{align*}
\arc{AC} \\
\arc{BAD}\\
\arc{ICK}
\end{align*}
\end{document}
答案1
类似于 Werner 的解决方案,但避免了它的缺点,首先是依赖于tipa
:
\documentclass{article}
\usepackage{graphicx}
\makeatletter
\DeclareFontFamily{U}{tipa}{}
\DeclareFontShape{U}{tipa}{m}{n}{<->tipa10}{}
\newcommand{\arc@char}{{\usefont{U}{tipa}{m}{n}\symbol{62}}}%
\newcommand{\arc}[1]{\mathpalette\arc@arc{#1}}
\newcommand{\arc@arc}[2]{%
\sbox0{$\m@th#1#2$}%
\vbox{
\hbox{\resizebox{\wd0}{\height}{\arc@char}}
\nointerlineskip
\box0
}%
}
\makeatother
\begin{document}
$\arc{AC}$ $\arc{BAD}$ $\arc{ICK}$ $\arc{GOOD}_{\arc{xyz}}$
\end{document}
使用 yhmath 字体的不同解决方案:
\documentclass{article}
\DeclareFontFamily{OMX}{yhex}{}
\DeclareFontShape{OMX}{yhex}{m}{n}{<->yhcmex10}{}
\DeclareSymbolFont{yhlargesymbols}{OMX}{yhex}{m}{n}
\DeclareMathAccent{\wideparen}{\mathord}{yhlargesymbols}{"F3}
\begin{document}
$\wideparen{AC}$ $\wideparen{BAD}$ $\wideparen{ICK}$ $\wideparen{GOOD}_{\wideparen{xyz}}$
\end{document}
答案2
tipa
看起来\texttoptiebar
有用:
\documentclass{article}
\usepackage{graphicx,tipa}% http://ctan.org/pkg/{graphicx,tipa}
\newcommand{\arc}[1]{{%
\setbox9=\hbox{#1}%
\ooalign{\resizebox{\wd9}{\height}{\texttoptiebar{\phantom{A}}}\cr#1}}}
\begin{document}
\arc{AC}\ \arc{BAD}\ \arc{ICK}\ \arc{GOOD}
\end{document}
答案3
我知道这是一个老问题,但我想我应该添加我的版本。我这样做的原因是因为我使用 KaTeX 进行 Web 开发,因此无法导入特殊包。以下是对原始问题中的代码的修改。它不使用额外的包,而是将弧线移近文本。可以使用可选参数来水平定位弧线。我知道这并不理想,但正如我所说,在 KaTeX 中,加载额外包不是一种选择。
\documentclass{article}
\usepackage{amsmath,amssymb}
%% modified solution to arc notation
\newcommand{\tarc}{\mbox{\large$\frown$}}
\newcommand{\arc}[2][-3ex]{{#2}{\kern #1{\raisebox{1.5ex}{\tarc}}}}
%%
\pagestyle{empty}
\begin{document}
\begin{align*}
&\arc{AC} \\
&\arc[-4ex]{BAD}\\
&\arc[-4ex]{ICK}
\end{align*}
\end{document}