使用 Linux Libertine 的斜体数字

使用 Linux Libertine 的斜体数字

我正在尝试使用主字体 Linux Libertine 排版文档xelatex。以下是最小的工作示例:

\documentclass{article}
\usepackage{fontspec}
\setromanfont[
  Ligatures      = TeX,
  BoldFont       = {Linux Libertine Bold},
  ItalicFont     = {Linux Libertine Italic},
  BoldItalicFont = {Linux Libertine Bold Italic}
]{Linux Libertine}
\begin{document}
\textit{1 foo}
\textbf{\emph{1 foo}}
\textbf{1 foo}
\end{document}

编译时,第二和第三个“1 foo”按应有的方式出现,但是第一个“1 foo”中缺少“1”,如下所示:

缺少斜体“1”

似乎 Linux Libertine不支持斜体数字

我在这里做错了什么? 有什么方法可以xelatex支持 Linux Libertine 字体,从而实现斜体数字吗?

如果有帮助的话,我在运行 Windows 8.1 的 HP 上使用 TeXWorks。

编辑:日志文件中出现的唯一奇怪的事情是一个警告:

* LaTeX warning: "xparse/redefine-command"
* 
* Redefining document command \oldstylenums with arg. spec. 'm' on line 144.

编辑2:当我调整文档使得唯一的内容是时\textit{0123456789},编译xelatex失败,并输出以下错误:

** WARNING ** Invalid CMap
** ERROR ** pdf_ref_obj(): passed invalid object.

在日志文件的末尾附近,有一堆如下所示的警告:

Missing character: There is no   in font Linux Libertine Italic/OT:script=latn;
language=DFLT;mapping=tex-text;mapping=tex-text;!
Missing character: There is no 0 in font Linux Libertine Italic/OT:script=latn;
language=DFLT;mapping=tex-text;mapping=tex-text;!

答案1

这两种.ttf字体(称为Linux Libertine)和.otf称为 的字体Linux Libertine O)在我的 Windows 7 系统上都可以正常工作。

\documentclass{article}
\usepackage{fontspec}
\setromanfont[
  BoldFont       = {Linux Libertine Bold},
  ItalicFont     = {Linux Libertine Italic},
  BoldItalicFont = {Linux Libertine Bold Italic}
]{Linux Libertine}
\begin{document}
\textit{1 foo}
\textbf{\emph{1 foo}}
\textbf{1 foo}
\end{document}

在此处输入图片描述

\documentclass{article}
\usepackage{fontspec}
\setromanfont[
  BoldFont       = {Linux Libertine O Bold},
  ItalicFont     = {Linux Libertine O Italic},
  BoldItalicFont = {Linux Libertine O Bold Italic}
]{Linux Libertine O}
\begin{document}
\textit{1 foo}
\textbf{\emph{1 foo}}
\textbf{1 foo}
\end{document}

在此处输入图片描述

您安装字体时可能出现问题,因此我建议您重新安装它们并重试。

答案2

您的代码运行良好。我得到以下结果

浪荡子

答案3

使用

\documentclass{article}
\usepackage{libertine}% detects itself the used engine pdftex, xetex, luatex
\begin{document}
\textit{1 foo}
\textbf{\emph{1 foo}}
\textbf{1 foo}
\end{document}

该软件包libertine会为您进行正确的字体设置。从 CTAN 安装软件包以及字体。然后,您就一切就绪了。

相关内容