由于某些原因,天城文文档的数学部分(如 sin、cos 等)也使用天城文。以下是一个例子:
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{AnnapurnaSIL-Regular.ttf}%
[Script=Devanagari,Mapping=velthuis,
BoldFont=AnnapurnaSIL-Bold.ttf]
\setmathfont{STIX2Math.otf}[Scale=MatchUppercase]
\setmathfont{STIX2Math.otf}[Scale=1.2,range=it/{num,Latin,latin}]
\setmathfont{STIX2Math.otf}[Scale=1.2,range=up/{num,Latin,latin}]
\begin{document}
saMkriyaa $\bigtriangledown$ jo $x\bigtriangledown y=x \sin y$ dvaaraa paribhaa.sit hai|
\(\sin^2\theta+\cos^2\theta=1\)
\end{document}
输出为
正如我们所见,\sin
和\cos
以天城文而不是英语出现。
答案1
使用\setmathrm
:
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{Kohinoor Devanagari}[Script=Devanagari,Mapping=velthuis]
\setmathfont{STIX2Math.otf}[Scale=MatchUppercase]
\setmathrm{STIX2Math.otf}[Scale=MatchUppercase]
\begin{document}
saMkriyaa $\bigtriangledown$ jo $x\bigtriangledown y=x \sin y$ dvaaraa paribhaa.sit hai|
\(\sin^2\theta+\cos^2\theta=1\)
\end{document}
改回天城体字体,我在我的系统上使用了一种。
答案2
这是因为操作员字体默认为\mathrm
,即默认情况下\rmfamily
,您设置它将拉丁字母映射到天城文。
就像 egreg 所说,你可以用 来解决这个问题\setmathrm
,尽管unicode-math
也有一个\setoperatorfont
命令。例如,要使用拉丁文脚本的无衬线运算符名称:
\setmathsf{NewComputerModernSans}[Scale=MatchLowercase] % For example.
\setoperatorfont\mathsf