我正在尝试用梵语打印,但数学环境不会以分数形式打印梵语。
我正在使用这个 $\dfrac{/जी.श}{५}$,也尝试过其他简写。梵文文本在数学环境之外显示良好,同一文档中的数学环境中的英语文本也运行良好,只是梵文文本无法在数学环境中打印
答案1
\text
从amsmath
允许正确大小的文本(即使对于拉丁文字,也需要类似的东西)
\documentclass{article}
\usepackage{amsmath}
\usepackage{fontspec}
\newfontfamily\devanagarifont[Script=Devanagari]{Lohit-Devanagari.ttf}
\begin{document}
\devanagarifont
$\frac{\text{/जी.श}}{\text{५}}$
\[\frac{\text{/जी.श}}{\text{५}}\]
\end{document}
\begin{document}
\devanagarifont
$\frac{\text{/जी.श}}{\text{५}}$
\[\frac{\text{/जी.श}}{\text{५}}\]
\end{document}
答案2
如果您想在数学中使用文本,则需要将其指定为文本。另一方面,您可以定义梵文数字以在文本和数学中工作,而无需进一步麻烦。
\documentclass{article}
\usepackage{amsmath}
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{sanskrit}
\setmainfont{ITF Devanagari}[NFSSFamily=devn]
\newfontfamily{\latinfont}{Latin Modern Roman}
\DeclareSymbolFont{sanskritdigits}{\encodingdefault}{devn}{m}{n}
\Umathcode`०="7 \symsanskritdigits "0966
\Umathcode`१="7 \symsanskritdigits "0967
\Umathcode`२="7 \symsanskritdigits "0968
\Umathcode`३="7 \symsanskritdigits "0969
\Umathcode`४="7 \symsanskritdigits "096A
\Umathcode`५="7 \symsanskritdigits "096B
\Umathcode`६="7 \symsanskritdigits "096C
\Umathcode`७="7 \symsanskritdigits "096D
\Umathcode`८="7 \symsanskritdigits "096E
\Umathcode`९="7 \symsanskritdigits "096F
\begin{document}
$\dfrac{\text{जी.श}}{५}$ $\dfrac{३४५}{८९}$
{\latinfont Text:} ०१२३४५६७८९
{\latinfont Math:} $०१२३४५६७८९$
\end{document}