章节标题中的字体形状未定义

章节标题中的字体形状未定义

我得到了一个Font shape '...' undefined一个非常具体设置,但我不知道为什么。这是 MWE。

下面的代码才不是会导致警告。但是,当您更改\lipsum[1-3]为时\lipsum[1-4],第一页已满,不知何故这会触发它。

\documentclass{book}
\usepackage{LobsterTwo}
\renewcommand{\familydefault}{lmr}
\usepackage{lipsum}
\begin{document}
\chapter{\LobsterTwo Test}
\lipsum[1-3] % change this line to \lipsum[1-4]
\end{document}

这个想法是使用默认lmodern字体,但也用字体突出显示章节标题中的某些特殊单词LobsterTwo。完整警告是Font shape 'OT1/LBSTR-LF/m/sl' undefined(Font) using 'OT1/cmr/m/n' instead。我正在使用pdflatex

请注意,我实际上没有在输出中看到问题,但我认为忽略警告不是一个好主意,所以我想了解为什么会发生这种情况以及如何解决它。

答案1

当生成第二页时会发出警告,因为该类book使用倾斜类型和大写字母作为页眉。

由于\LobsterTwo简单定义为

\def\LobsterTwofamily{Lbstr-LF}
\newcommand*\LobsterTwo{\fontfamily{\LobsterTwofamily}\selectfont}

\MakeUppercase也会将Lbstr-LF字符串大写。实际上,警告是关于

OT1/LBSTR-LF/m/sl

而姓氏是Lbstr-LF

我不会加载 LobsterTwo 包,提供更简单的强壮的自己定义。

\documentclass{book}
\usepackage{lipsum}

\DeclareRobustCommand*\LobsterTwo{\fontfamily{Lbstr-LF}\selectfont}
\DeclareTextFontCommand{\LTtext}{\LobsterTwo}

\begin{document}

\chapter{\LTtext{Test} and normal type}
\section{Test section}
\lipsum[1-20]

\end{document}

这样斜体字型就可以代替斜体字型了。\LobsterTwo如果你愿意,你也可以使用,但我不会。

在此处输入图片描述

在此处输入图片描述

相关内容