当我加载多个字体包时,哪一个会获胜?

当我加载多个字体包时,哪一个会获胜?

我没有使用过多个字体包。但我注意到有些人使用多个字体包。简而言之,如果我们加载多个字体包,哪一个会获胜?

加载多个字体包是否有规则?

答案1

这取决于。

一般来说,您获得的字体是您最后指定的字体。因此,当您使用多个字体包时,通常会以最后一个字体包为准。

但是,这取决于包中的实际命令。字体包并不总是与另一个字体包执行相同的操作,有时它们会协同工作。

例如:

\usepackage{times}
\usepackage{utopia}

如果您在文档中使用这两个包,您将看到主字体是 Utopia。您可能会说utopia赢了。但事实并非如此。您可能还会注意到,它\textsf变成了 Helvetica,\texttt变成了 Courier,这就是times包的效果。

当你查看包的代码时,你就会知道原因:

% in times.sty
\renewcommand{\sfdefault}{phv}
\renewcommand{\rmdefault}{ptm}
\renewcommand{\ttdefault}{pcr}

% in utopia.sty
\renewcommand{\rmdefault}{put}
\renewcommand\bfdefault{b}

我们最终得到的结果如下:

% mixed
\renewcommand{\sfdefault}{phv}
\renewcommand{\ttdefault}{pcr}
\renewcommand{\rmdefault}{put}
\renewcommand\bfdefault{b}

相关内容