为什么希腊小写字母 o 看起来不成比例地粗体?

为什么希腊小写字母 o 看起来不成比例地粗体?

我正在使用unicode-math并且我决定我真的更喜欢 Latin Modern Math 希腊字母,而不是其他字体的希腊字母。除非这是一种错觉,否则 omicron (o) 似乎总是看起来不成比例地粗体,即使没有明确加粗。这有什么特别的原因吗?否则我会使用 TeX Gyre Schola Math 中的希腊字母,但似乎没有变体\symbfsfup,而且 omicron 看起来也不成比例地粗体。

梅威瑟:

% !TEX TS-program = lualatexmk
% !TEX encoding = UTF-8 Unicode

\documentclass{article}
\RequirePackage[math-style=ISO]{unicode-math}
\setmathfont{TeX Gyre DejaVu Math}
\setmathfont[range=it/{greek,Greek}]{Latin Modern Math}
\setmathfont[range=bfit/{greek,Greek}]{Latin Modern Math}
\setmathfont[range=up/{greek,Greek}]{Latin Modern Math}
\setmathfont[range=bfup/{greek,Greek}]{Latin Modern Math}
\setmathfont[range=bfsfup/{greek,Greek}]{Latin Modern Math}

\begin{document}
\[ 
  \alpha\beta\gamma\delta\epsilon\varepsilon\zeta\eta\theta\vartheta\iota\kappa
  \lambda\mu\nu\xi o\pi\varpi\rho\varrho\sigma\varsigma\tau\upsilon\phi\varphi
  \chi\psi\omega\Delta\Gamma\Theta\Lambda\Xi\Pi\Sigma\Upsilon\Phi\Psi\Omega 
\]
\[ \symbf{% 
  \alpha\beta\gamma\delta\epsilon\varepsilon\zeta\eta\theta\vartheta\iota\kappa
  \lambda\mu\nu\xi o\pi\varpi\rho\varrho\sigma\varsigma\tau\upsilon\phi\varphi
  \chi\psi\omega\Delta\Gamma\Theta\Lambda\Xi\Pi\Sigma\Upsilon\Phi\Psi\Omega}
\]
\[ \symup{% 
  \alpha\beta\gamma\delta\epsilon\varepsilon\zeta\eta\theta\vartheta\iota\kappa
  \lambda\mu\nu\xi o\pi\varpi\rho\varrho\sigma\varsigma\tau\upsilon\phi\varphi
  \chi\psi\omega\Delta\Gamma\Theta\Lambda\Xi\Pi\Sigma\Upsilon\Phi\Psi\Omega}
\]
\[ \symbfup{% 
  \alpha\beta\gamma\delta\epsilon\varepsilon\zeta\eta\theta\vartheta\iota\kappa
  \lambda\mu\nu\xi o\pi\varpi\rho\varrho\sigma\varsigma\tau\upsilon\phi\varphi
  \chi\psi\omega\Delta\Gamma\Theta\Lambda\Xi\Pi\Sigma\Upsilon\Phi\Psi\Omega}
\]
\[ \symbfsfup{% 
  \alpha\beta\gamma\delta\epsilon\varepsilon\zeta\eta\theta\vartheta\iota\kappa
  \lambda\mu\nu\xi o\pi\varpi\rho\varrho\sigma\varsigma\tau\upsilon\phi\varphi
  \chi\psi\omega\Delta\Gamma\Theta\Lambda\Xi\Pi\Sigma\Upsilon\Phi\Psi\Omega}
\]
\end{document}

MWE 输出

更新:以下是 MWE 的使用\omicron和结果输出。使用旧版引擎(如 pdflatex)的 LaTeX 新手可能不知道该unicode-math包定义了\omicron。旧版 TeX/LaTeX 书籍明确指出没有这样的命令,读者可能不知道现代引擎(例如 lualatex)的附加功能和 Unicode 的强大功能。

% !TEX TS-program = lualatexmk
% !TEX encoding = UTF-8 Unicode

\documentclass{article}
\RequirePackage[math-style=ISO]{unicode-math}
\setmathfont{TeX Gyre DejaVu Math}
\setmathfont[range=it/{greek,Greek}]{Latin Modern Math}
\setmathfont[range=bfit/{greek,Greek}]{Latin Modern Math}
\setmathfont[range=up/{greek,Greek}]{Latin Modern Math}
\setmathfont[range=bfup/{greek,Greek}]{Latin Modern Math}
\setmathfont[range=bfsfup/{greek,Greek}]{Latin Modern Math}

\begin{document}
\[ 
  \alpha\beta\gamma\delta\epsilon\varepsilon\zeta\eta\theta\vartheta\iota\kappa
  \lambda\mu\nu\xi\omicron\pi\varpi\rho\varrho\sigma\varsigma\tau\upsilon\phi\varphi
  \chi\psi\omega\Delta\Gamma\Theta\Lambda\Xi\Pi\Sigma\Upsilon\Phi\Psi\Omega 
\]
\[ \symbf{% 
  \alpha\beta\gamma\delta\epsilon\varepsilon\zeta\eta\theta\vartheta\iota\kappa
  \lambda\mu\nu\xi\omicron\pi\varpi\rho\varrho\sigma\varsigma\tau\upsilon\phi\varphi
  \chi\psi\omega\Delta\Gamma\Theta\Lambda\Xi\Pi\Sigma\Upsilon\Phi\Psi\Omega}
\]
\[ \symup{% 
  \alpha\beta\gamma\delta\epsilon\varepsilon\zeta\eta\theta\vartheta\iota\kappa
  \lambda\mu\nu\xi\omicron\pi\varpi\rho\varrho\sigma\varsigma\tau\upsilon\phi\varphi
  \chi\psi\omega\Delta\Gamma\Theta\Lambda\Xi\Pi\Sigma\Upsilon\Phi\Psi\Omega}
\]
\[ \symbfup{% 
  \alpha\beta\gamma\delta\epsilon\varepsilon\zeta\eta\theta\vartheta\iota\kappa
  \lambda\mu\nu\xi\omicron\pi\varpi\rho\varrho\sigma\varsigma\tau\upsilon\phi\varphi
  \chi\psi\omega\Delta\Gamma\Theta\Lambda\Xi\Pi\Sigma\Upsilon\Phi\Psi\Omega}
\]
\[ \symbfsfup{% 
  \alpha\beta\gamma\delta\epsilon\varepsilon\zeta\eta\theta\vartheta\iota\kappa
  \lambda\mu\nu\xi\omicron\pi\varpi\rho\varrho\sigma\varsigma\tau\upsilon\phi\varphi
  \chi\psi\omega\Delta\Gamma\Theta\Lambda\Xi\Pi\Sigma\Upsilon\Phi\Psi\Omega}
\]
\end{document}

修改后的 MWE 输出

答案1

您使用的是拉丁字母o而不是奥密克龙 ( \omicron),这在这里尤其明显,因为这意味着您得到的是似曾相识的数学字符而不是拉丁现代字符。

\omicron在 中定义unicode-math。它在经典 TeX 中不存在,因为经典 TeX 仅限于 127 个字符的 7 位编码,因此省略了在拉丁语和希腊语中看起来相同的任何内容的定义。

相关内容