Fontspec 错误:无法识别我最喜欢的字体

Fontspec 错误:无法识别我最喜欢的字体

我正在尝试将波斯语文本添加到我的文档中,但是无法识别我最喜欢的字体(已在 Windows 10 上安装并且我在 Microsoft Word 上使用它们)。

! fontspec error: "font-not-found"!! The font "XB Niloofar" cannot be found.!!
! fontspec error: "font-not-found"!! The font "Yas" cannot be found.!!
! fontspec error: "font-not-found"!! The font "IranNastaliq" cannot be found.!!

这是我正在尝试编译的文档:

‎\documentclass[11pt]{exam}‎
‎\usepackage{xepersian}‎

‎\settextfont[Scale=1]‎{XB Niloofar}‎
‎\setdigitfont[Scale=1]{Yas}‎
‎\setlatintextfont[Scale=0.9]{Times New Roman}‎
\defpersianfont\nastaliq[Scale=1]{IranNastaliq}‎

‎\begin{document}‎ 
\textbf{سلام}‎
‎\end{document}‎

答案1

推荐fontspec通过文件名加载字体。你可以尝试:

\settextfont[Scale = 1.0 ,
             BoldFont = *Bd ,
             ItalicFont = *It ,
             BoldItalicFont = *BdIt ,
             Extension = .ttf
            ]{XB Niloofar} 

如果您的字体名为XB Niloofar.ttfXB NiloofarBd.ttf等。

如果这仍然不起作用,看看\setmainfont使用相同选项是否可行。这可能不是您想要的,但它可以确认问题是否出在fontspec

您可以运行fc-match "XB Niloofar"看看 XeTeX 是否可以找到该字体,luaotfload-tool --find "XB Niloofar"看看 LuaTeX 是否可以。

还要确保%WINDIR%\Fonts\目录中为所有用户安装了字体。另外,如果您在 中有任何本地字体缓存%HOMEDRIVE%%HOMEPATH%\.texlive2019\texmf-var\,请将其删除。

相关内容