在 unicode-math 中将单个字符映射到另一个平面

在 unicode-math 中将单个字符映射到另一个平面

在我的文档中,我需要使用缺少大多数数学符号的某种主字体。为了获得最佳效果,我选择坚持使用可用的主字体,例如拉丁字母和数字。此外,与大多数字体一样,PI 字形可用。因此,我选择了以下设置(不是真正的字体):

\documentclass{article}

\usepackage{fontspec}
\usepackage{unicode-math}
\setmainfont{Times New Roman}
\setmathfont{latinmodern-math.otf}
\setmathfont{Times New Roman}[range=\muppi,Color=red]
\setmathfont{Times New Roman}[range=\mitpi,Color=blue]


\begin{document}

$\pi$, $\mitpi$ and $\muppi$

\end{document}

但是,斜体 PI 符号没有显示。据我了解,这是因为尝试\mitpi从缺失的斜体平面中提取字形。我宁愿让它从直立平面中提取字形,并使用斜体字体变体。

在文档中,我读到,对于更一般的情况,可以使用range=it->up,但这会影响所有斜体符号。如何将其限制为仅一个符号?(我尝试了\mitpi->\muppi,但它给出了“缺失数字”错误。

答案1

您将需要一个unicode数学字体 - 它们具有定义的相关查找表。

π

我理解,映射->是为了命名范围。

平均能量损失

\documentclass{article}

%\usepackage{fontspec}
\usepackage{xcolor}
\usepackage{unicode-math}
\setmainfont{Times New Roman}
\setmathfont{Asana-Math}
\setmathfont{TexGyrePagella-Math}[range=\muppi,Color=red]
\setmathfont{TexGyrePagella-Math}[range=\mitpi,Color=blue]


\begin{document}

$\pi$, $\mitpi$ and $\muppi$

\end{document}

然而,使用非数学字体从某种意义上来说是一种“技巧”,其结果是:

作业的顺序很重要 - 最后一个作业才有效。

斜体

斜体最后

平均能量损失

\documentclass{article}

%\usepackage{fontspec}
\usepackage{xcolor}
\usepackage{unicode-math}
\setmainfont{Times New Roman}
\setmathfont{Asana-Math}%[math-style=upright]
\setmathfont{texgyreadventor-regular.otf}[range={"03C0},Color=red]
\setmathfont{texgyreadventor-italic.otf}[range={"03C0,"1D708},Color=blue]






\begin{document}

$\pi$, $\mitpi$ and $\muppi$


$\symsfit{π}+\symsfup{π}$

\end{document}

并且直立:

直立的最后

平均能量损失

\documentclass{article}

%\usepackage{fontspec}
\usepackage{xcolor}
\usepackage{unicode-math}
\setmainfont{Times New Roman}
\setmathfont{Asana-Math}%[math-style=upright]
\setmathfont{texgyreadventor-italic.otf}[range={"03C0,"1D708},Color=blue]
\setmathfont{texgyreadventor-regular.otf}[range={"03C0},Color=red]






\begin{document}

$\pi$, $\mitpi$ and $\muppi$


$\symsfit{π}+\symsfup{π}$

\end{document}

-math-style=但对于同一个字符,不能同时使用这两种方式;无论输入什么,都会有一些与选项规范符号为斜体或直立的交互。


附录

做一个合适的 MWE 可能是值得的,因为希腊斜体必须来自数学字体的 MAS 块中的小写斜体希腊数学字母,或者非数学字体的斜体字体文件的(文本)希腊语和科普特语块 - 因为数学字体(一个文件)具有所有数学字母(> 24)但只有一种文本字体(通常是常规的),而非数学字体将有许多文件(每个文件都有不同的字体,包括斜体)但没有一个文件具有 MAS Unicode 块(根据定义)。

映射 pi

请注意,这math-style仍然有效,因为不同的标准对小写希腊字母和大写希腊字母是否应该相同(直立与斜体)的选择不同。

平均能量损失

\documentclass{article}


\usepackage{xcolor}
\usepackage{unicode-math}
\setmainfont{XITS-Math}[Colour=blue]
\setmathfont{Fira-Math}[Colour=red]%[math-style=upright]


\begin{document}

\par\bigskip
text mode (XITS-Math)


\begin{tabular}{llc}
Greek & upright & ^^^^03c0 αβγ xyz+ΓΔΘXYZ\\
MAS & bold upright & 

相关内容