字体格式顺序

字体格式顺序

我想chapterprefixscrbook课堂设置字体。我想做的是:

\setkomafont{chapterprefix}{\centering\Huge\rmfamily\mdseries\scshape}

LaTeX然而,当我写这篇文章的时候,我问自己,我给出命令的顺序是否有任何不同。正确的按照顺序执行此操作?我应该先选择位置 ( \centering)、家庭 ( \rmfamily)、形状 ( \scshape)、重量 ( \mdseries)、尺寸 ( \Huge)... 吗?

答案1

随着 LaTeX2e 的成为标准的新字体选择方案 (NFSS) 沿 4 个正交轴(如果还计算字体编码,则为 5 个)识别字体:

  • 字体系列(通过诸如、等命令\rmfamily\sffamily通过更通用的\fontfamily{<name>}\selectfont
  • 字体系列,是粗细和宽度的组合,例如“粗体扩展”,如\bfseriesetc 或更通用的\fontseries{<name>}\selectfont
  • 字体形状,类似于“正常”、斜体,但也包括“小写字母”(不太正确,见下文)。命令是\itshape\scshape等,或更通用的\fontshape{<name>}\selectfont
  • 字体大小由\small\large等或更通用的\fontsize{<size>}{<baselineskip>}\selectfont

如果其中一个轴上的选择发生变化,其他轴的选择将不会改变,因此在这方面顺序无关紧要。

然而,有一些事情需要考虑:

  • 如果一组高级命令(例如)\rmfamily \scshape \mdseries \Huge被依次执行,则每个命令都会在内部发出一个,\selectfont以便所有中间选择都实际被加载。根据您给出的顺序,加载的字体可能不同(即使从未实际用于排版)。
  • 只要这些临时字体确实存在,除了不必要地加载某些字体外,其他都没有什么关系。但是,如果任何中间组合都不可用,NFSS 将被迫应用某种替代,并且根据命令的顺序,替代可能会有所不同。
  • 一般来说,选择字体(尤其是加载字体)需要时间,因此对于样式设置,使用更通用的低级命令后跟一个 会更有效\selectfont。例如,您的示例可以写成

    \fontfamily{\rmdefault}\fontshape{\scdefault}\fontseries{\mddefault}\Huge

    \Huge最后发出。\selectfont或者,如果您想要一些非常具体的字体,也可以使用明确的名称来完成,例如,

    \fontfamily{cmr}\fontshape{sc}\fontseries{md}\fontsize{24pt}{30pt}\selectfont

事实上,还有一个\usefont命令可以让你一次性设置编码、系列、系列、形状(需要单独指定大小),这样就会像

\fontsize{24}{30}\usefont{T1}{cmr}{md}{sc}

相关内容