我想设置默认使用 EB Garamond 字体的文档,并针对特定未能识别字符自动切换到后备字体。我发现使用后备字体是可能的luaotfload
。它对简单的文本效果很好,例如\myfont العَرَبِ
。但我想在整个文档上全局使用它,但它不起作用。正如您在示例中看到的,我正在使用\begin{myfont}
并\end{myfont}
全局应用。但这可能不是正确的解决方案。我正在使用标准内部命令,例如\begin{flushleft}
\Large{العَرَبِ}
,这可能是问题所在。你能帮我如何myfont
全局设置吗?
\documentclass[oneside, 11pt]{memoir}
\usepackage[utf8]{inputenc}
\usepackage{fontspec}
\setmainfont{EB Garamond}
\directlua
{luaotfload.add_fallback
("myfallback",
{
"DejaVuSans:mode=harf;script=grek;color=FF0000;",
"cmuserif:mode=node;script=cyrl;color=00FF00;",
"NotoSansBengali:mode=harf;script=bng2;color=0000FF;",
"NotoColorEmoji:mode=harf;"
}
)
}
\font \myfont ={name:EBGaramond:mode=node;fallback=myfallback;}
\begin{document}
\begin{myfont}
Příliš žluťoučký kůň úpěl ďábelské ódy
\Large{Velký ביץ aaa}\small{Malý aaa טון}
العَرَبِيَّة
\Huge العَرَبِيَّة
答案1
将 fallback 添加为主要字体的功能
\setmainfont{EB Garamond}[RawFeature={fallback=myfallback}]