如何正确使用luaotfload fallback?

如何正确使用luaotfload fallback?

我想设置默认使用 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}]

相关内容