如何更改文档中的无衬线字体?

如何更改文档中的无衬线字体?

我正在使用 scrbook 类在 Latex 中编写文档,并且已将主字体更改为 Palladio。问题是现在我不喜欢默认的无衬线字体,我想更改它。我该如何实现?我只想更改无衬线字体,我尝试过类似以下方法:

\documentclass[a4paper,10pt,twoside, DIV=8]{scrbook}
\usepackage[sc]{mathpazo}
\usepackage[defaultsans]{venturis}
\linespread{1.05}         % Palladio needs more leading (space between lines)%
\usepackage[T1]{fontenc}

但它不起作用,“defaultsans”似乎是“venturis”的未知选项,我得到了一个错误(并且整个文档都变成了无衬线字体,这是我不想要的)。我实际上想尝试 Venturis 和 Epigraphica。关于如何实现这一点有什么建议吗?

(此外,如果您对哪种无衬线字体与 Palladio 最相配有任何建议……)

答案1

venturis软件包将衬线字体和无衬线字体都设置为相应的 Venturis 变体。它没有仅启用 Venturis Sans 的选项\sffamily

但你也许可以通过改变加载顺序来实现这一点;确实有效。但我认为这不是一个好的选择。

\documentclass[a4paper,10pt,twoside, DIV=8]{scrbook}
\usepackage[T1]{fontenc}

\usepackage{venturis}
\usepackage[sc]{mathpazo}

\linespread{1.05}         % Palladio needs more leading (space between lines)%

\begin{document}

This is in ``MathPaZo''

\textsf{This is in Venturis Sans}

X\textsf{X}a\textsf{a}

\end{document}

在此处输入图片描述

如果下一个问题是如何删除有关 的烦人的信息性消息Font shape T1/yv1/mc/n has incorrect series value `mc',很抱歉:除非软件包维护者修复它,否则你几乎无能为力。

答案2

你也可以使用fontspecfor来执行此操作xelatexlualatex前提是你安装了相关 OTF 版本的字体(TeX Gyre 系列来自这里和文丘里管这里)。

在此处输入图片描述

\documentclass[a4paper,10pt,twoside, DIV=8]{scrbook}
\usepackage{unicode-math}
\setmainfont{TeX Gyre Pagella}
\setmathfont{TeX Gyre Pagella Math}
\setsansfont{VenturisSans ADF}[Scale=MatchLowercase]

\linespread{1.05}         % Palladio needs more leading (space between lines)%

\begin{document}

\section{This title is set in Venturis}

\begin{itemize}
\item This is in \TeX\ Gyre Pagella, with some maths $e=mc^2$.
\item \textsf{This is in Venturis Sans}
\item X\textsf{X}a\textsf{a}
\end{itemize}

\end{document}

笔记

  • unicode-math自动调用fontspec,为您提供三种字体设置命令。

  • 文丘里管比 Palatino 类似管要小一点,所以我使用fontspec[Scale=MatchLowercase]增加X-height 使得 sans 字体与主字体相匹配。

  • 有可能mathpazo提供了一些您无法从中获得的更巧妙的设置unicode-math,但我从未发现过任何设置。

  • 这种方法迫使您使用xelatexlualatex代替pdflatex

如果你想要更“传统”的组合,你可以安装 Helvetica 风格的 OTF 版本,例如 TeX Gyre Heroes,然后更改setsansfont

\setsansfont{TeX Gyre Heros}[Scale=MatchLowercase]

得到这个

在此处输入图片描述

相关内容