后续问题“xetex 中 \mathbf 的问题”(问题 522628)

后续问题“xetex 中 \mathbf 的问题”(问题 522628)

这是一个后续问题xetex 中的 \mathbf 问题

我尝试了 Micos 解决方案。它有效。我现在又遇到了一个问题。整个文本似乎都以粗体显示。我找不到问题所在。以下是 MWE:

\documentclass{article}
\usepackage{amssymb}
\usepackage{unicode-math}
\defaultfontfeatures{Path=/usr/share/fonts} % change this as needed
\setmainfont{AnnapurnaSIL-Regular.ttf}%
[Path=/usr/share/fonts/truetype/annapurna/,Script=Devanagari,Mapping=velthuis,
BoldFont=AnnapurnaSIL-Bold.ttf]
\setmathfont{STIX2Math.otf} % or some other Times-compatible math font
[Path=/opt/texlive/2018/texmf-dist/fonts/opentype/public/stix2-otf/,Scale=MatchUppercase]
\newfontfamily\eng{Times_New_Roman.ttf}%
[Path=/usr/share/fonts/truetype/msttcorefonts/, % change this as needed
Scale=MatchUppercase,
BoldFont=Times_New_Roman_Bold.ttf,
ItalicFont=Times_New_Roman_Italic.ttf,
BoldItalicFont=Times_New_Roman_Bold_Italic.ttf]
\newfontface\Bigdn{AnnapurnaSIL-Bold.ttf}[Script=Devanagari,Mapping=velthuis-roman-numerals,Scale=1.4,Path=/usr/share/fonts/truetype/annapurna/]
\begin{document}
        {\Bigdn yah ek udaaharan hai||}
    {\bfseries yah ek udaaharan hai||}
    1
        {yah ek udaaharan hai||}
    {\eng This is a MWE.}
    $\symbf{i}$, $i$ $x^2+2x$ 
\end{document}

编辑我正在发布另一个没有路径的 MWE:

\documentclass{article}
\usepackage{amssymb}
\usepackage{unicode-math} % change this as needed
\setmainfont{AnnapurnaSIL-Regular.ttf}%
[Script=Devanagari,Mapping=velthuis-roman-numerals,
BoldFont=AnnapurnaSIL-Bold.ttf]
\setmathfont{STIX2Math.otf}[Scale=MatchUppercase]
\newfontfamily\eng{Times_New_Roman.ttf}%
[Scale=MatchUppercase,
BoldFont=Times_New_Roman_Bold.ttf,
ItalicFont=Times_New_Roman_Italic.ttf,
BoldItalicFont=Times_New_Roman_Bold_Italic.ttf]
\newfontface\Bigdn{AnnapurnaSIL-Bold.ttf}[Script=Devanagari,Mapping=velthuis-roman-numerals,Scale=1.4]
\begin{document}
        {\Bigdn yah ek udaaharan hai||}
    {\bfseries yah ek udaaharan hai||}
    1
        {yah ek udaaharan hai||}
    {\eng This is a MWE.}
    $\symbf{i}$, $i$ $x^2+2x$ 
\end{document}

问题是,无论有没有 \bfseries 命令,文本“yah ek udaharan hai”看起来都一样。 编辑我使用自定义地图文件来获取罗马数字而不是梵文数字。我已将其替换为标准地图文件。这样就可以重现结果。

答案1

没有答案:如果我这样做,会fontspec自动选择子字体:

平均能量损失

\documentclass[varwidth,border=6pt]{standalone}
\usepackage{amssymb}
\usepackage{unicode-math} % change this as needed
\setmainfont{Annapurna SIL}%
[Script=Devanagari,Mapping=velthuis-roman-numerals,
]
\setmathfont{XITS Math}[Scale=MatchUppercase]
\newfontfamily\eng{Noto Serif}%
[Scale=MatchUppercase,]
\newfontface\Bigdn{AnnapurnaSIL-B.ttf}[Script=Devanagari,Mapping=velthuis-roman-numerals,Scale=1.4]
\begin{document}
        {\Bigdn yah ek udaaharan hai||}

    {\bfseries yah ek udaaharan hai||}

    { yah ek udaaharan hai||}

    1
        {yah ek udaaharan hai||}

    {\eng This is a MWE.}

    $\symbf{i}$, $i$ $x^2+2x$ 
\end{document}

我明白了:

粗体和不粗体都可以

我无法使用我的字体(Windows)重现该问题;使用Annapurna SIL BoldAnnapurnaSIL-B.ttf会产生相同的结果\Bigdn

相关内容