使用时newpxmath
,数学模式中的重音符号始终为粗体,无论下方的字母是否为粗体:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{newpxtext}
\usepackage{newpxmath}
\begin{document}
\centering
$\hat{a}$ $\tilde{a}$ $\bar{a}$ $\check{a}$ $\dot{a}$ $\acute{a}$ $\grave{a}$ $\breve{a}$
\^a \~a \=a \v a \.a \'a \`a \u a
\textbf{\^a \~a \=a \v a \.a \'a \`a \u a}
\end{document}
上图中,第一行是数学模式(中等),第二行是文本模式(中等),第三行是文本模式(粗体)。可以清楚的看到,数学模式下的重音符号是粗体的。
这是一个错误newpxmath
还是我遗漏了什么?
编辑:符号字体似乎npxsy
已损坏。如果您使用以下方法创建字体表
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{newpxtext}
\usepackage[scaled=1.042]{zlmtt}
\usepackage{newpxmath}
\usepackage{fonttable}
\begin{document}
\xfonttable{LMS}{npxsy}{m}{n}
\pagebreak
\xfonttable{LMS}{npxsy}{b}{n}
\end{document}
您可以看到,位置 158–168 中的重音符号在中等粗细和粗体字重上看起来相同。但是,其他字符具有不同的中等粗细和粗体变体(理应如此)。
(还有另外一个不相关的错误:插槽 11 中的符号以粗体显示。)
newpx
更新:此问题自1.423 版本起已修复。
答案1
更新 2021-06-02
NewPX 1.423 版(发布于 2021-05-31)修复了此问题。摘自 README 文件
1.423 版中的变更
- 修正了常规数学重音的粗细,以粗体显示。
- 修正了粗体符号 circledivide 的粗体粗细。(它莫名其妙地被镜像了。)
OP 的示例现在生成
(我只添加了几个缺失的重音。)
原始答案
这些字符取自字体pxsys
(通过虚拟字体)。在 2019 年至 2020 年之间的某个时间,可能是由于组装字体时出现错误,中的重音符号pxsys
已变为粗体。
在等待修复时,您可以重新定义重音以使用字体operators
(newpx
出于好的理由,我们会尽量避免,但我们这里处于紧急情况)。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{newpxtext}
\usepackage{newpxmath}
\usepackage{amsmath}
\makeatletter
\re@DeclareMathAccent{\grave}{\mathalpha}{operators}{"12}
\re@DeclareMathAccent{\acute}{\mathalpha}{operators}{"13}
\re@DeclareMathAccent{\check}{\mathalpha}{operators}{"14}
\re@DeclareMathAccent{\breve}{\mathalpha}{operators}{"15}
\re@DeclareMathAccent{\bar}{\mathalpha}{operators}{"16}
\re@DeclareMathAccent{\mathring}{\mathalpha}{operators}{"17}
\re@DeclareMathAccent{\hat}{\mathalpha}{operators}{"5E}
\re@DeclareMathAccent{\dot}{\mathalpha}{operators}{"5F}
\re@DeclareMathAccent{\tilde}{\mathalpha}{operators}{"7E}
\re@DeclareMathAccent{\ddot}{\mathalpha}{operators}{"7F}
\makeatother
\begin{document}
\centering
$\hat{a}$ $\tilde{a}$ $\bar{a}$ $\check{a}$ $\dot{a}$ $\acute{a}$
$\grave{a}$ $\breve{a}$ $\ddot{a}$ $\mathring{a}$
\^a \~a \=a \v a \.a \'a \`a \u a \"a \r a
\textbf{\^a \~a \=a \v a \.a \'a \`a \u a \"a \r a}
\end{document}