我正在尝试将波斯语文本添加到我的文档中,但是无法识别我最喜欢的字体(已在 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.ttf
、XB NiloofarBd.ttf
等。
如果这仍然不起作用,看看\setmainfont
使用相同选项是否可行。这可能不是您想要的,但它可以确认问题是否出在fontspec
。
您可以运行fc-match "XB Niloofar"
看看 XeTeX 是否可以找到该字体,luaotfload-tool --find "XB Niloofar"
看看 LuaTeX 是否可以。
还要确保%WINDIR%\Fonts\
目录中为所有用户安装了字体。另外,如果您在 中有任何本地字体缓存%HOMEDRIVE%%HOMEPATH%\.texlive2019\texmf-var\
,请将其删除。