Unicode 范围替换不起作用

Unicode 范围替换不起作用

我使用 unicode-math 进行排版,我的主要字体是 ArnoPro 和 GilSans(用于文本)、STIX Two(用于数学),我还创建了一个用于书法的特殊字体。我将其称为 Math Caligraphic Alphabet。

因此我用 STIX Two cal 字形替代了我的字形:

\setmathfont{Math Caligraphic Alphabet}[Scale=MatchLowercase,range={scr,bfscr}]

这很完美。

然而,后来我决定在 STIX 中更改 BlackBoard 字形(主要是因为它们是无衬线的),并且我将字体衬线黑板字形添加到它们的 Unicode 位置,就像我之前对 cal 字形所做的那样,然后我添加了:

\setmathfont{Math Caligraphic Alphabet}[Scale=MatchLowercase,range={scr,bfscr,bb}]

例子:

$\mathscr{A}\mathscr{B}\mathscr{C}$ % my cal letters

$\mathbb{A}\mathbb{B}\mathbb{C}$   % STIX Two bb letters

在此处输入图片描述

因此,我修改了代码,添加了一行新代码,只是为了看看字体是否能与我的 bb 字形配合良好

\setmathfont{Math Caligraphic Alphabet}[range="211D]

和完美

在此处输入图片描述

然后,我尝试了两个 bb 字形:

\setmathfont[range="211D,"2124]{Math Caligraphic Alphabet}

unicode-math给了我以下错误信息:

! The key 'fontspec-opentype/"2124' is unknown and is being ignored.
! 
! See the LaTeX3 documentation for further information.
! 
! For immediate help type H <return>.
!...............................................  

l.108 ...e="211D,"2124]{Math Caligraphic Alphabet}

就是这样。我无法让我的所有 bb 字形都正常工作,尽管我可以让其中一个正常工作。

答案1

我相信您需要添加如图所示的括号,因为 unicode-math 将单个逗号解释为分隔连续的键:

\setmathfont[range={"211D,"2124}]{Math Caligraphic Alphabet}

相关内容