我在 Windows 8 上使用 XeTeX,版本 3.1415926-2.4-0.9998(TeX Live 2012/W32TeX)。我正在尝试使用 Windows 8 捆绑提供的三种天城体字体:Arial Unicode MS、Mangal 和 Nirmala UI。
我发现 XeTeX 无法正确呈现以辅音 र 结尾的梵文连词(适用于 Mangal 和 Nirmala UI),尽管它可以为 Arial Unicode MS 做到这一点。下面的 MWE 适用于四个连词(प्र、क्र、त्र 和 ह्र)。
代码
\documentclass{article}
\usepackage{polyglossia}
\usepackage{fontenc}
\usepackage[top=1.25in,bottom=0.75in,left=0.75in,right=0.75in]{geometry}
\setmainfont{Arial}
\newfontfamily\devfontone[Script=Devanagari]{Arial Unicode MS}
\newfontfamily\devfonttwo[Script=Devanagari]{Mangal}
\newfontfamily\devfontthree[Script=Devanagari]{Nirmala UI}
\begin{document}
\fontsize{16}{24}\selectfont
\section{Arial Unicode MS}
\noindent {\devfontone प्र क्र त्र ह्र}
\section{Mangal}
\fontsize{14}{21}\selectfont
\noindent {\devfonttwo प्र क्र त्र ह्र}
\section{Nirmala UI}
\fontsize{14}{21}\selectfont
\noindent {\devfontthree प्र क्र त्र ह्र}
\end{document}
输出
这三种字体在 MS Word 中都可以正常工作,如下面的快照所示
这可能是 XeTeX 版本的问题吗?或者是字体 GSUB 表的问题?我还没有尝试过最新的 TexLive 发行版。
梵语中已证实的连词的完整列表可供查阅这里,其中以辅音 र 结尾的有 112 个: क्स्त्र ङ्क्त्र त्स्त्र त्स्प्र न्त्स्र न्स्त्र र्त्त्र क्क्र क्त्र क्प्र क्श्र क्ष्र क्स्र ग्ग्र ग्घ्र ग्द्र ग्ध्र ग्ब्र ग्भ्र ग्व्र ङ्क्र ङ्ग्र ङ्घ्र ङ्त्र ङ्न्र ङ्प्र ङ्व्र च्छ्र ञ्छ्र ञ्श्र ट्क्र ट्त्र ट्प्र ट्श्र ड्ग्र ड्घ्र ड्ब्र ड्भ्र ण्ड्र ण्ढ्र त्क्र त्त्र त्प्र त्स्र द्ग्र द्घ्र द्द्र द्ध्र द्ब्र द्भ्र द्व्र ध्व्र न्क्र न्ग्र न्घ्र न्त्र न्द्र न्ध्र न्प्र न्ब्र न्भ्र न्म्र न्स्र न्ह्र प्प्र ब्ग्र ब्ब्र म्प्र म्ब्र म्भ्र म्म्र र्ग्र र्घ्र र्त्र र्द्र र्ध्र र्ब्र र्भ्र र्म्र र्व्र र्स्र र्ह्र ष्क्र ष्ट्र ष्प्र स्क्र स्त्र स्प्र क्र ग्र घ्र ङ्र च्र ज्र ड्र ढ्र त्र थ्र द्र ध्र艾特里公园 是 一个 非常 受欢迎的公园。
编辑 1 于 20151128 0600 IST
确认上述代码在 Texworks 中使用 XeLaTeX 选项在 Windows 8 版 XeTeX 引擎版本 3.1415926-2.4-0.9998 (TeX Live 2012/W32TeX) 上编译时会产生第一张图所示的输出。下图显示了这一点。即使不包括 fontenc,输出也是相同的。
20151128 1140 IST 上编辑 2
今天早上我将 TeX 发行版更新为 TeX Live 2015,现在我使用的是 XeTeX,版本 3.14159265-2.6-0.99992 (TeX Live 2015/W32TeX)。Mangal 字体的问题现在已经解决,但 Nirmala UI 的问题仍然存在。我不知道为什么尽管这三种字体都来自微软,但它们的 GSUB 表或编码还是存在一些差异。