有没有什么办法可以让帽子比 widehat 更宽?
为什么不
\widehat{abcdefghijklmnopqrstuvwxyz}
真的要全部检查一遍吗?
答案1
另一种(非常简单的)解决方案是使用包yhmath
(据我从文档中理解,它需要amsmath
包)。
有了这样的包(即yhmath
)只需使用相同的命令即可获得“真正”宽大的帽子
\widehat{}
作为 LaTeX 的初学者,我发现这种可能性更加友好一些。
答案2
问题不是“应该这样做吗?”而是,出于与人类攀登高山相同的原因,“可以这样做吗?”使用 scalerel 包,答案是可以的。因此,我们引入 \reallywidehat [已编辑以在参数下方添加幻影规则,以便结果的基线与原始参数的基线相匹配。已重新\ensuremath
编辑\widthof
(感谢 Thruston)]
另请参阅我的回答\widebar 存在严重问题以寻求相关方法。
新的答案stackengine
这个答案是一个改进,因为它比之前的解决方案更好地处理垂直空间。
\documentclass{article}
\usepackage{scalerel,stackengine}
\stackMath
\newcommand\reallywidehat[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}{\tmpbox}%
}
\parskip 1ex
\begin{document}
$\reallywidehat{zbcdefghijklm}$
$\reallywidehat{zbcdefghijk}$
$\reallywidehat{zbcdefghi}$
$\reallywidehat{zbcdefg}$
$\reallywidehat{zbcde}$
$\reallywidehat{zbc}$
$\reallywidehat{zb}$
$x\cdot\reallywidehat{a_1+a_2}\cdot y$
\end{document}
使用\mathchar"0362
(\widehat
重音)而不是\bigwedge
已编辑以使用\mathchar"0362
而不是正常的克拉重音(\mathchar"305E
)
有评论要求采用这种替代形式,该形式可能比上面给出的形式更佳。
\documentclass{article}
\usepackage{scalerel,stackengine}
\stackMath
\newcommand\reallywidehat[1]{%
\savestack{\tmpbox}{\stretchto{%
\scaleto{%
\scalerel*[\widthof{\ensuremath{#1}}]{\kern.1pt\mathchar"0362\kern.1pt}%
{\rule{0ex}{\textheight}}%WIDTH-LIMITED CIRCUMFLEX
}{\textheight}%
}{2.4ex}}%
\stackon[-6.9pt]{#1}{\tmpbox}%
}
\parskip 1ex
\begin{document}
$\reallywidehat{zbcdefghijklm}$
$\reallywidehat{zbcdefghijk}$
$\reallywidehat{zbcdefghi}$
$\reallywidehat{zbcdefg}$
$\reallywidehat{zbcde}$
$\reallywidehat{zbc}$
$\reallywidehat{zb}$
$x\cdot\reallywidehat{a_1+a_2}\cdot y$
$\widehat{zb}$ is actual widehat
\end{document}
先前的回答array
\documentclass{article}
\usepackage{scalerel}
\newcommand\reallywidehat[1]{\arraycolsep=0pt\relax%
\begin{array}{c}
\stretchto{
\scaleto{
\scalerel*[\widthof{\ensuremath{#1}}]{\kern-.5pt\bigwedge\kern-.5pt}
{\rule[-\textheight/2]{1ex}{\textheight}} %WIDTH-LIMITED BIG WEDGE
}{\textheight} %
}{0.5ex}\\ % THIS SQUEEZES THE WEDGE TO 0.5ex HEIGHT
#1\\ % THIS STACKS THE WEDGE ATOP THE ARGUMENT
\rule{-1ex}{0ex}
\end{array}
}
\begin{document}
$\reallywidehat{zbcdefghijklm}$
$\reallywidehat{zbcdefghijk}$
$\reallywidehat{zbcdefghi}$
$\reallywidehat{zbcdefg}$
$\reallywidehat{zbcde}$
$\reallywidehat{zbc}$
$\reallywidehat{zb}$
$x\cdot\reallywidehat{a_1+a_2}\cdot y$
\end{document}
答案3
虽然我赞同之前回答中表达的观点——“这种东西真的不应该被鼓励”——但我还是忍不住要指出,\widehat
在mtpro2
。请注意,此软件包不是免费的,也不能从 CTAN 下载。但是,它的“精简”子集——这是创建超宽“宽帽”重音所需的全部内容——是免费,可从以下网址下载本网站。
\documentclass{article}
\usepackage[lite]{mtpro2}
\begin{document}
$ \widehat{abcdefghijklmnopqrstuvwxyz} $
\end{document}
答案4
我尝试了其中的一些,除了 {mtpro2},因为它提交的文章可能不被出版商接受!
由于我对上述方法并不满意,我尝试定制另一种方法,您可以应用以下代码,使用比例因子和位置并选择您喜欢的方法。我推荐最后两种,但我自己更喜欢最后一种,我将亲自使用它:
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage[ngerman]{babel}
\usepackage{stackengine}
\usepackage{scalerel}
\begin{document}
\[\widehat{ABCDEF}\]
\[\stackon[0pt]{ABCDEF}{\hstretch{7.0}{\wedge}}\]
\[\stackon[-8pt]{ABCDEF}{\vstretch{1.5}{\hstretch{9.0}{\widehat{\phantom{\;}}}}}\]
\[\stackon[-8pt]{ABCDEF}{\vstretch{1.5}{\hstretch{2.4}{\widehat{\phantom{\;\;\;\;\;\;\;\;}}}}}\]
\end{document}
结果可能是这样的: