在新环境中无法将字体(与主字体不同的字体系列)设为粗体

在新环境中无法将字体(与主字体不同的字体系列)设为粗体

我的文档正文设置如下:

\renewcommand{\familydefault}{\sfdefault}       % sans serif to default
\usepackage[defaultsans,osfigures,scale=1]{opensans}  % change main font here

因此主体是 Open Sans 字体。我使用 sectsty 将章节标题设置为衬线字体 Computer Modern。我创建了一个新环境,以使文档的某些部分(例如,页码、标题、标题页上的名称)也具有 Computer Modern 风格,并具有以下自定义环境:

\newenvironment{compmod}{\fontfamily{cm}\selectfont}

并且它工作正常。除此之外,我想创建一个像上面那样的新环境,并且也是粗体(或按照我的喜好设置样式),但以下方法不起作用:

\newenvironment{compmod}{\fontfamily{cm}\fontseries{b}\selectfont}

我尝试了其他一些方法,但都无济于事。我的直觉是,因为我将主字体设置为另一个系列(和无衬线字体),所以发生了一些冲突。

任何见解都值得赞赏。

答案1

字体的选​​择似乎存在争议。

\documentclass{article}

\let\CMserif\rmdefault % save the default font family name

\usepackage[defaultsans,osfigures,scale=1]{opensans}  % change main font here
\usepackage{sectsty}

\renewcommand{\familydefault}{\sfdefault}

\allsectionsfont{\serifbold}

\newcommand{\serifbold}{\fontfamily{\CMserif}\bfseries}
\newenvironment{compmod}{\serifbold}{}

\begin{document}

\section{This title is serif}

This text is sans serif, \begin{compmod}and this is serif bold\end{compmod}.

\end{document}

在此处输入图片描述

如果缩小 OpenSans,至少高度是匹配的。

\documentclass{article}

\let\CMserif\rmdefault % save the default family name

\usepackage[defaultsans,osfigures,scale=0.82]{opensans}  % change main font here
\usepackage{sectsty}

\renewcommand{\familydefault}{\sfdefault}

\allsectionsfont{\serifbold} 

\newcommand{\serifbold}{\fontfamily{\CMserif}\bfseries}
\newenvironment{compmod}{\serifbold}{}

\begin{document}

\section{This title is serif}

This text is sans serif, \begin{compmod}and this is serif bold\end{compmod}.

\end{document}

在此处输入图片描述

答案2

通常没有一个cm家族,有cmrcmss家族,而且粗体通常是bx(粗体扩展)而不是b

你没有说,但在终端和日志中,你可能收到了这样的警告

LaTeX Font Warning: Font shape `OT1/cm/b/n' undefined
(Font)              using `OT1/cmr/m/n' instead on input line 5.

相关内容