我想使用NewCM10-Regular.otf
。当像这样加载时,它可以与两个 Unicode 引擎完美配合:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{NewCM10-Regular.otf}
\begin{document}
hello world
\end{document}
如果我将其嵌入到 sty 文件中并像这样加载它,它也会起作用:
\documentclass{article}
\usepackage{foo}
\begin{document}
hello world
\end{document}
而foo.sty
有这个:
\ProvidesPackage{foo}
\RequirePackage{fontspec}
\setmainfont{NewCM10-Regular.otf}
但如果我使用自定义.fontspec
文件,这会失败。假设 sty 文件包含:
\ProvidesPackage{foo}
\RequirePackage{fontspec}
\setmainfont{myfont}
.tex
并且在我的和所在的同一文件夹中.sty
,如果我myfont.fontspec
使用以下代码创建一个:
\defaultfontfeatures[myfont]{UprightFont = {NewCM10-Regular.otf}}
它适用于lualatex
,但不能xelatex
。有趣的是,如果我将字体从 更改为NewCM10-Regular.otf
,CharisSIL
它又可以适用于这两个引擎。那么xelatex
、.fontspec
文件和到底有什么问题NewCM10-Regular.otf
?
附言:我在 GNU/Linux 上使用完全更新的 TL2022。