我刚刚从 切换babel
到polyglossia
,惊讶地发现我的 san-serif 中文字体发生了变化。请考虑以下示例:
%! TEX program = xelatex
\documentclass{article}
\RequirePackage{ctex}
\usepackage{polyglossia}
\begin{document}
\sffamily
你好
\end{document}
中文无衬线字体已重置为主字体(英文字体不受影响)。
如果没有的话就没问题了polyglossia
,所以我想知道里面是什么polyglossia
导致了这种行为?
(这,连同我之前的问题,表明polyglossia
目前与中文的交互效果较差。因此,至少目前,我将遵循@UlrikeFischer 的建议,考虑切换回更稳定的babel
。)
答案1
该\sffamily
命令有一个钩子,这个钩子被 ctex 用来注入它所需要的字体变化。
polyglossia
重新定义\sffamily
并因此破坏这个钩子。
这已经被报道过了:https://github.com/reutenauer/polyglossia/issues/471