问题“有没有办法做一个“颠倒的” \widehat?“表示\widecheck
在mathabx
包,但不幸的是,该包也会改变字体样式。
我们能\widecheck
自己定义吗?
答案1
您可以只导入\widecheck
,但导入也是有意义的\widehat
,以获得类似的符号。
\documentclass{article}
\usepackage{amsmath}
\DeclareFontFamily{U}{mathx}{}
\DeclareFontShape{U}{mathx}{m}{n}{<-> mathx10}{}
\DeclareSymbolFont{mathx}{U}{mathx}{m}{n}
\DeclareMathAccent{\widehat}{0}{mathx}{"70}
\DeclareMathAccent{\widecheck}{0}{mathx}{"71}
\begin{document}
$\widehat{abc}+\widecheck{abc}$
$\widehat{abcde}+\widecheck{abcde}$
\end{document}
答案2
我不知道这是否会这么容易,但结果确实如此。我修改了答案非常宽的帽子符号并\reallywidehat
做了两个简单的更改:
我把所有出现的“hat”都改成了“check”
我将最后一个
\stackon
参数从\tmpbox
改为\scalebox{-1}{\tmpbox}
。
就是这样。下面是:
\documentclass{article}
\usepackage{scalerel,stackengine}
\stackMath
\newcommand\reallywidecheck[1]{%
\savestack{\tmpbox}{\stretchto{%
\scaleto{%
\scalerel*[\widthof{\ensuremath{#1}}]{\kern-.6pt\bigwedge\kern-.6pt}%
{\rule[-\textheight/2]{1ex}{\textheight}}%WIDTH-LIMITED BIG WEDGE
}{\textheight}%
}{0.5ex}}%
\stackon[1pt]{#1}{\scalebox{-1}{\tmpbox}}%
}
\parskip 1ex
\begin{document}
$\reallywidecheck{zbcdefghijklm}$
$\reallywidecheck{zbcdefghijk}$
$\reallywidecheck{zbcdefghi}$
$\reallywidecheck{zbcdefg}$
$\reallywidecheck{zbcde}$
$\reallywidecheck{zbc}$
$\reallywidecheck{zb}$
$x\cdot\reallywidecheck{a_1+a_2}\cdot y$
\end{document}
最重要的是,它避免使用mathabx
,这会重置很多数学符号。
答案3
pdfMsym提供广泛的口音(可以任意拉伸),其中包括\varwidecheck
可能适合您的需要:
\input pdfmsym
\pdfmsymsetscalefactor{10}
\begin{gather*}
\varwidecheck{abcdefgijk} \\
\varwidecheck{abcdefg} \\
\varwidecheck{abc}
\end{gather*}
pdfMsym 定义了一个宏\accent@skew
,它设置了重音与放置材料左侧的倾斜度,如果您不喜欢这个,您可以\def\accent@skew{0}
。您可以类似地玩\accent@raise
(它设置了重音和材料之间的垂直差异)。