\textbf 和 \textit 不起作用

\textbf 和 \textit 不起作用

所以我有一个如下所示的 main.tex:

\documentclass[a4paper,11pt]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{hyperref}
\usepackage{graphicx}
\usepackage[danish, english]{babel}
\usepackage{xspace}

\newenvironment{dedication}
{
   %\cleardoublepage
   \thispagestyle{empty}
   \vspace*{\stretch{1}}
   \hfill\begin{minipage}[t]{0.66\textwidth}
   \raggedright
}
{
   \end{minipage}
   \vspace*{\stretch{3}}
   \clearpage
}

\makeatletter
\renewcommand{\@chapapp}{}% Not necessary...
\newenvironment{chapquote}[2][2em]
  {\setlength{\@tempdima}{#1}%
   \def\chapquote@author{#2}%
   \parshape 1 \@tempdima \dimexpr\textwidth-2\@tempdima\relax%
   \itshape}
  {\par\normalfont\hfill--\ \chapquote@author\hspace*{\@tempdima}\par\bigskip}
\makeatother

\title{\Huge \textbf{De Maskerede}}
\author{\textsc{Niklas}}

\begin{document}

\frontmatter
\maketitle
\tableofcontents
\mainmatter

{\fontfamily{times}\selectfont
\chapter{\textit{Prolog}}
\input{Prolog/Post.tex}

\end{document}

我的 post.tex 文件如下所示:

hi this is \textbf{bold}

当我在 main.tex 中执行 \textbf 时,它可以工作(就像 \title 一样),但是当我在某个输入文件中执行 \textbf 时(比如 \input{Prolog/Post.tex}),它不起作用。我不明白为什么。

祝好 Niklas

答案1

您可以使用以下最小示例重现完全相同的问题。

\documentclass{article}

\begin{document}

\fontfamily{times}\selectfont

\textbf{bold}

\textit{italic}

\end{document}

在其上运行 LaTeX 时,您会收到一些警告:

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


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


LaTeX Font Warning: Font shape `OT1/times/m/it' undefined
(Font)              using `OT1/times/m/n' instead on input line 9.

第一个意味着 LaTeX 不了解times字体系列并对其进行默认替换,即使用cmr字体系列。

另外两个警告与同一问题有关。LaTeX定义了一个与固定替代字体对应的字体OT1/times/m/n,但只是作为固定替代字体的别名,并没有设置整个字体系列,因为它对此一无所知。因此后续的字体替代只能指向唯一已知的字体。

如果要在 Times 克隆中排版文档,请添加

\usepackage{newtxtext,newtxmath}

到您的文档序言中。

相关内容