考虑以下示例,我认为 似乎\widehat
对于单个字母来说太小了。使用 时\widehat
,人们通常会期望即使是对于单个字母也会得到更宽的帽子(因为对于窄帽子,已经有 了\hat
)。虽然可以通过添加水平空间来触发真正的宽帽子,但对于字母C
,如果我\,
在字母周围添加 ,\widehat
就会有点太大。
\documentclass{article}
\usepackage{kpfonts-otf}
\begin{document}
\[
\hat{c} \hat{C} \hat{\mathcal{C}}
\]
\[
\widehat{c} \widehat{C} \widehat{\mathcal{C}}
\]
\[
\widehat{c\,} \widehat{C\,} \widehat{\mathcal{C}\,}
\]
\[
\widehat{\,c\,} \widehat{\,C\,} \widehat{\,\mathcal{C}\,}
\]
\end{document}
同样的问题也发生在\widetilde
:
\documentclass{article}
\usepackage{kpfonts-otf}
\begin{document}
\[
\widehat{C} \widehat{\mathcal{C}} \widehat{U}
\]
\[
\widetilde{C} \widetilde{\mathcal{C}} \widetilde{U}
\]
\end{document}
答案1
您unicode-math-table.tex
可以找到(为方便阅读删除了几个空格)
\UnicodeMathSymbol{"00302}{\hat }{\mathaccent}{circumflex accent}%
\UnicodeMathSymbol{"00302}{\widehat }{\mathaccentwide}{circumflex accent}%
\UnicodeMathSymbol{"00303}{\tilde }{\mathaccent}{tilde}%
\UnicodeMathSymbol{"00303}{\widetilde }{\mathaccentwide}{tilde}%
\UnicodeMathSymbol{"00304}{\bar }{\mathaccent}{macron}%
\UnicodeMathSymbol{"00305}{\overbar }{\mathaccent}{overbar embellishment}%
\UnicodeMathSymbol{"00305}{\wideoverbar}{\mathaccentwide}{stretchy overbar embellishment}%
这意味着\hat
和\widehat
指向同一个位置,不同之处在于它将\widehat
“测量”重音符号并选择更适合覆盖它的变体字形。
如果加载unicode-math
而不是kpfonts-otf
,您会看到在所有情况下都会选择更宽的变体,但\widehat{I}
或\widetilde{I}
会选择与\hat
或相同的变体\tilde
。
这只是字体大小和字体参数的问题。可能第一个较宽的 U+00302 变体在 KpFonts 中太宽了。但这也是不滥用 ; 的一个很好\widehat
的\widetilde
理由全部您展示的案例,\hat
而且\tilde
更好。