我正在写一份几百页的文档,注意到一些故障使用我使用的选定字体。我使用的是我所在机构提供的模板。我选择的字体是libertine
。
这是我能分解的最小值在职的Libertine 的实际示例:
\documentclass{article}
\usepackage{libertine}
\begin{document}
\noindent This text is \textbf{bold}.
\section{Minimal working example}
This text \textit{isn't}.
\end{document}
但是,现在我的模板的类定义文件是否包含另一个我无法理解的语句,并且 - 破坏了与字体相关的所有内容:
\renewcommand*{\rmdefault}{fxlj}
这会导致默认字体重置为罗马,这不是我想要的。有时字体不是默认的 Roman,而是 Libertine。但是,粗体和斜体 Libertine 不再起作用。
这是最基本的不工作我想到的例子是:
\documentclass{article}
\usepackage{libertine}
\renewcommand*{\rmdefault}{fxlj}
\begin{document}
\noindent This text is \textbf{bold}.
\section{Minimal not working example}
This text \textit{isn't}.
\end{document}
现在,我想了解该\renewcommand*{\rmdefault}{fxlj}
命令到底做了什么,以及——重要的是——它的意图是什么。简单地删除它似乎可以解决我的问题,但我不能这样做,除非我理解含义。
答案1
这是在文档而不是包中使用低级命令的结果。
编译文档时,您会收到警告
LaTeX Font Warning: Font shape `OT1/fxlj/m/n' undefined
(Font) using `OT1/cmr/m/n' instead on input line 4.
LaTeX Font Warning: Font shape `OT1/fxlj/b/n' undefined
(Font) using `OT1/fxlj/m/n' instead on input line 5.
LaTeX Font Warning: Font shape `OT1/fxlj/m/it' undefined
(Font) using `OT1/fxlj/m/n' instead on input line 7.
第一个警告告诉您,该系列fxlj
不对应.fd
OT1 编码的文件,因此将使用标准cmr
系列进行默认替换。如果不考虑 LaTeX 已经决定将其fxlj
变为的事实cmr
,其他两个警告可能会产生误导。
命名方案建议fxlj
使用旧式数字(尾随)指向 Linux Libertine j
,但该系列名称已随时间而改变。如今,Linux Libertine 的字体系列被称为
LinuxLibertineT-<suffix>
后缀可以是
TLF
TOsF
LF
OsF
其中LF
代表“线条数字”,OsF
代表“老式数字”;T
代表“表格数字”,如果不存在则表示使用比例数字。
因此,使用 Linux Libertine 时,直接设置家族名称不是一个好主意:最好使用更高级别的调用:
\usepackage[
%tabular,
%proportional,
%lining,
%oldstyle,
]{libertine}
取消注释您需要的键。