当尝试使用 TeXmaker(带有 MiKTeX)中的命令编译我的.tex
文件时xelatex
,我收到此错误消息:
!fontspec 错误:“font-not-found”
!!
找不到字体“Linux Libertine O”。
!!
有关更多信息,请参阅 fontspec 文档。
我已查看过fontspec
文档,但没有发现任何有用的内容。
我的.tex
文件如下所示:
\documentclass[11pt]{article}
\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{Linux Libertine O}
\begin{document}
\section{Unicode support}
\subsection{English}
All human beings are born free and equal in dignity and rights.
\subsection{Íslenska}
Hver maður er borinn frjáls og jafn öðrum að virðingu og réttindum.
\section{Ligatures}
\fontspec[Ligatures={Common, Historical}]{Linux Libertine O Italic}
Questo è strano assai!
\section{Numerals}
\fontspec[Numbers={OldStyle}]{Linux Libertine O}Old style: 1234567\\
\fontspec[Numbers={Lining}]{Linux Libertine O}Lining: 1234567
\end{document}
有人知道如何解决这个问题吗?
答案1
为字体选择正确的名称有时很难。规范
\setmainfont[Ligatures=TeX]{Linux Libertine O}
如果系统字体中有该字体,则应该可以工作。但是 XeTeX 还可以使用 TeX 树中存在的字体,而不是系统字体。
对于 Linux Libertine,调用应该是这样的
\setmainfont
[ Ligatures = TeX,
Extension = .otf,
SmallCapsFeatures={Letters=SmallCaps},
UprightFont = *_R,
ItalicFont = *_RI,
BoldFont = *_B,
BoldItalicFont = *_BI,
] {LinLibertine}
该软件包libertine
可让您摆脱这一负担。查看软件包文档,了解可以传递给调用的选项
\usepackage[...]{libertine}
其中...
代表零个或多个选项,例如oldstyle
或lining
在两种图形样式之间进行选择。