使用回忆录时我收到以下字体警告:
LaTeX Font Warning: Font shapre `T1/cmss/bx/sc`undefined (Font) using `T1/cmss/bx/n'instead on input line 14
第 14 行指向我\mainmatter
的源文件中的位置。
这是源代码
\documentclass[oneside,12pt]{memoir}
\usepackage{graphicx}
\usepackage[T1]{fontenc}
\usepackage{mathpazo}
\begin{document}
\chapterstyle{madsen}
\frontmatter
\tableofcontents
\mainmatter
\chapter{Introduction}
Introduction
\end{document}
它应该选择 Palatino 字体。
更新
如果我使用以下来自 egreg 的答案的代码片段:
\sbox0{\sffamily x}
\DeclareFontShape{T1}{cmss}{bx}{sc}{<->ssub*cmss/bx/n}{}
\chapterstyle{madsen}
警告消失了,但我得到了一些字体瑕疵:
有了这个,有没有办法强制\chapterstyle{madsen}
使用palatino
?
答案1
这是一个无害的警告。如果你真的想让它消失,那么写
\sbox0{\sffamily x}
\DeclareFontShape{T1}{cmss}{bx}{sc}{<->ssub*cmss/bx/n}{}
\chapterstyle{madsen}
第一行加载无衬线字体系列,第二行声明触发警告的替换应该是静默的。
请注意,为了将 Palatino 作为主文本字体,您应该加载
\usepackage{mathpazo}
(texdoc psnfss
将会阐明这一点)。
要获取 Palatino 中的所有章节标题,请使用以下代码:
\documentclass[oneside,12pt]{memoir}
\usepackage[T1]{fontenc}
\usepackage{mathpazo}
\usepackage{graphicx}
\makechapterstyle{madsenserif}{% requires graphicx package
\chapterstyle{default}
\renewcommand*{\chapnamefont}{%
\normalfont\Large\scshape\raggedleft}
\renewcommand*{\chaptitlefont}{%
\normalfont\Huge\bfseries\raggedleft}
\renewcommand*{\chapternamenum}{}
\renewcommand*{\printchapternum}{%
\makebox[0pt][l]{\hspace{0.4em}%
\resizebox{!}{4ex}{%
\chapnamefont\bfseries\thechapter}%
}%
}%
\renewcommand*{\printchapternonum}{%
\chapnamefont \phantom{\printchaptername \chapternamenum%
\makebox[0pt][l]{\hspace{0.4em}%
\resizebox{!}{4ex}{%
\chapnamefont\bfseries 1}%
}%
}%
\afterchapternum %
}%
\renewcommand*{\afterchapternum}{%
\par\hspace{1.5cm}\hrule\vskip\midchapskip}}
\chapterstyle{madsenserif}