使用 mathpazo 在目录中使用衬线图形,在文本中使用旧式图形

使用 mathpazo 在目录中使用衬线图形,在文本中使用旧式图形

我使用mathpazo带有osf选项的软件包来获取 Palatino 字体和旧式图形。但是,我希望在标题页和目录中使用内衬图形。我已经找到了一种在标题页上使用内衬图形的方法,方法是使用以下命令:

\fontfamily{pplx}\selectfont

我也尝试过在我的目录页面上使用它,但是收效甚微:

{
    \fontfamily{pplx}\selectfont
    \thispagestyle{empty}
    \tableofcontents
}

这将修复章节编号,但不会修复右侧的页码。我该如何实现?这是一个最小的失败示例:

\documentclass{scrartcl}

\usepackage[T1]{fontenc}
\usepackage[scaled]{helvet}
\usepackage[sc,osf]{mathpazo}
\usepackage[onehalfspacing]{setspace}

\usepackage{blindtext}


\begin{document}

\begin{titlepage}
    \fontfamily{pplx}\selectfont
    \begin{center}
        Lining figures on the title page: 1234567890
    \end{center}
\end{titlepage}

\pagebreak
{
    \fontfamily{pplx}\selectfont
    \thispagestyle{empty}
    \tableofcontents
}

\pagebreak
\setcounter{page}{1}
\blinddocument

\end{document}

目录如下所示:

在此处输入图片描述

答案1

令人惊讶的是,Koma 样式并没有提供一种简单的方法来将目录中的所有条目连接到这一点。有用于sectionentrypagenumber章节页码的样式(以及用于章节和部分的相应样式),但没有用于较低级别条目的样式。深入研究代码会发现,底部是标准的 LaTeX 命令,\@dottedtocline它将页码(其第 5 个参数)放在构造为

\hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}

具体来说,调用的字体是\normalfont。因此,要按照您要求的方式更改样式,我们需要设置\familydefault,例如通过

\renewcommand{\familydefault}{pplx}

在目录中的本地执行此操作,我们可以用以下内容替换您的\selectfont内容\normalfont

示例输出

\documentclass{scrartcl}

\usepackage[T1]{fontenc}
\usepackage[scaled]{helvet}
\usepackage[sc,osf]{mathpazo}
\usepackage[onehalfspacing]{setspace}

\usepackage{blindtext}


\begin{document}

\begin{titlepage}
    \fontfamily{pplx}\selectfont
    \begin{center}
        Lining figures on the title page: 1234567890
    \end{center}
\end{titlepage}

\pagebreak
{
  \renewcommand{\familydefault}{pplx}\normalfont
  \thispagestyle{empty}
  \tableofcontents
}

\pagebreak
\setcounter{page}{1}
\blinddocument

\end{document}

相关内容