在字体之前或之后加载微字体

在字体之前或之后加载微字体

根据给出的答案这里, 这microtype包应该在字体之后加载,因为microtype“需要知道在加载时正在使用哪些字体”。但是,我无法检测到在microtype设置字体之前和之后加载之间的任何差异。我还注意到,在下面的 MWE 中mt-*.cfgEB Garamond已加载 fontspec,即使microtype先加载。

microtype这是否意味着何时加载根本不重要?

\documentclass{article}
\usepackage{microtype,polyglossia}
    \setdefaultlanguage{english}
\usepackage{blindtext,fontspec}
    \setmainfont{EB Garamond}
\begin{document}
\Blinddocument
\end{document}

(simplified and abbreviated output below)
This is XeTeX, Version 3.1415926-2.5-0.9999.3 (TeX Live 2013/W32TeX)
(c:/texlive2013/texmf-dist/tex/latex/microtype/microtype.sty)
(c:/texlive2013/texmf-dist/tex/latex/microtype/microtype.cfg)
(c:/texlive2013/texmf-dist/tex/latex/polyglossia/polyglossia.sty)
(c:/texlive2013/texmf-dist/tex/latex/fontspec/fontspec.sty)
(c:/texlive2013/texmf-dist/tex/latex/fontspec/fontspec.cfg)
(c:/texlive2013/texmf-dist/tex/latex/ebgaramond/mt-EBGaramond.cfg)

答案1

是的,microtype可以随时加载,因为其实际字体设置会推迟到序言结束。在字体之后加载包的限制可以追溯到非常旧的microtype版本(早于v1.9a (2005/12/05))。(我已经在您链接的答案中修复了这个问题。)

关于加载顺序只有一个警告(参见“提示和警告”),它不适用于您的情况,仅仅为了完整性而提一下:当使用microtypebabel选项加载时,您必须先加载babel(或polyglossia)包。

[编辑:正如@koppor在下面的评论中提到的,fontspec不再需要先加载(因为v2.6)。]

相关内容