KOMAScript 中标题的 EBGaramond 内衬数字

KOMAScript 中标题的 EBGaramond 内衬数字

我在用着KOMA 脚本使用pdflatex(可能最终会切换到lualatex)来排版我的论文,并希望使用 EBGaramond 作为字体。为此,我正在加载ebgaramond-maths包,然后加载ebgaramond包。后者提供了各种字体样式,包括不同的数字。我非常喜欢正文中的默认旧式数字,但我认为它们不太适合标题。所以我想更改数字样式仅在标题和目录中。 这ebgaramond README为我们提供以下选择样式的方法:

要使用,请将其添加\usepackage{ebgaramond}到文档的序言中。选项包括:

  • oldstyleosf 旧式数字
  • lining, nf,lf 衬线数字

[…] 命令\oldstylenums{...}\liningnums{...}分别被定义为允许本地使用旧式数字或衬线数字。

全局改变样式不是一个选择,所以我们只能使用\liningnums{}如何正确使用它与 KOMA-Script?

我尝试过各种方法,但均未成功:

  1. 第一个直觉是使用\addtokomafont
\addtokomafont{disposition}{\rmfamily\liningnums{}}

\rmfamily因为我想要衬线样式的标题)。这适用于\chapters 但不适用于\sectionMWE 中的 s,但它在我的实际文档中不起作用,并且抛出

! Paragraph ended before \text@command was complete.

我不知道这是怎么回事,但它也是KOMA-Script 文档 (第 3.6 节) 不鼓励这样做

有时,虽然不建议这样做,但元素的字体设置会用于与字体实际上无关的设置。[…] 但是,您不应将这些命令视为在元素的字体设置中插入任意命令的合法性。这样做会很快导致错误(请参阅第 21.5 节,第 476 页)。

  1. 根据这个相关答案,应该改变\chapterlinesformat等等
\renewcommand\chapterlinesformat[3]{\liningnums{#2#3}}
\renewcommand\sectionlinesformat[3]{\liningnums{#2#3}}
% ...

但这也不起作用。当我只设置\chapterlinesformat它时,它适用于\chapters,但会弄乱字体样式。在目录中,\chapter字体设置为无衬线 Computer Modern,而\section和则\subsection保留衬线 Garamond。然而在主文档中,情况恰恰相反:\chapter具有正确的衬线数字,并正确排版为 Garamond,但现在\section\subsection是无衬线 Computer Modern。如果我敢添加该sectionlinesformat行,我会收到错误

! You can't use `\glueexpr' in horizontal mode.

我如何正确地告诉 KOMA-Script 用于liningnums{}正文和目录中的标题?请不要使用黑客手段,我想要一个干净的 KOMA-Scriptonic 解决方案。


最小(不)工作示例:

\documentclass{scrreprt}
    %\addtokomafont{disposition}{\rmfamily\liningnums}
    \renewcommand\chapterlinesformat[3]{\liningnums{#2#3}}
    %\renewcommand\sectionlinesformat[3]{\liningnums{#2#3}}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{ebgaramond-maths}

\begin{document}
    \tableofcontents
    \chapter{Chapter}
    \section{Section}
    \subsection{Subsection}
\end{document}

答案1

您可以将字体系列切换为衬线字体:

\documentclass{scrreprt}
\addtokomafont{disposition}{\fontfamily{EBGaramond-LF}\selectfont}
\AfterTOCHead{\renewcommand\rmdefault{EBGaramond-LF}\normalfont} %for the toc
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{ebgaramond-maths}

\begin{document}
    \tableofcontents
\setcounter{chapter}{88}
    \chapter{Chapter 89}
    0123456789
    \section{Section 89}
    \subsection{Subsection}
\end{document}

在此处输入图片描述

相关内容