请看以下例子:
当我将字体大小更改为\Huge
上标时,相对于 x 来说太大了。
但是当我设置与命令相同的字体大小时\Huge
,\fontsize
这个问题就不会出现。
这里发生了什么事?
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{TeX Gyre Pagella}
\setmathfont[math-style=upright]{TeX Gyre Pagella Math}
\begin{document}
Compare the size of the superscripts with the $x$.
\string\normalsize~(OK):
\[ x³ \]
\string\Huge~(The superscript is too big. Why?):
\Huge
\[ x³ \]
\normalsize
The same fontsize as \string\Huge, but selected by the \string\fontsize~command (OK):
\fontsize{25}{30}\selectfont
\[ x³ \]
\end{document}
答案1
如果你使用,\Huge
那么数学文本和脚本字体是
> \TU/TeXGyrePagellaMath(0)/m/n/24.88 .
l.17 \showthe\textfont0
?
> \TU/TeXGyrePagellaMath(0)/m/n/20.74 .
l.18 \showthe\scriptfont0
如果你使用,\fontsize{25}{30}\selectfont
那么字体是
> \TU/TeXGyrePagellaMath(0)/m/n/25 .
l.24 \showthe\textfont0
?
> \TU/TeXGyrePagellaMath(0)/m/n/17.49992 .
l.25 \showthe\scriptfont0
第二组使用unicode-math
默认设置,将脚本字体设置为文本字体大小的0.7。
\Huge
是 24.88pt 而不是 25pt,并且 latex 格式设置
\DeclareMathSizes{\@xxvpt}{\@xxvpt}{\@xxpt}{\@xviipt}
\@xxvpt
因此(24.88pt)的脚本大小\@xxpt
是 20.74pt。