这是一个后续问题Context 对 (Unicode) 印度语文字的支持状况如何?
我一直在尝试让 texexec/mkii 与 XeTeX 引擎一起工作,但最终的渲染结果是不正确的——马拉雅拉姆语字符的重新排序不会发生。
通过 XeLaTeX(版本 3.1415926-2.5-0.9998 TeXLive 2012)运行以下最小示例会给出正确的输出:
\documentclass{article}
\usepackage{fontspec}
\setmainfont[Script=Malayalam]{Rachana}
\begin{document}
മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്
\end{document}
正确的渲染截图在这里:
与 ConTeXt“texexec --xetex”(版本 ConTeXt ver: 2012.05.30 11:26 MKII fmt: 2013.1.1 int: english/english)相同,导致渲染不正确。
\usemodule[simplefonts]
\setmainfont[Rachana]
\starttext
മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്
\stoptext
错误渲染截图:
我可能遗漏了什么?使用的字体是 Rachana,可以在 Savannah 下载页面(版本 5.0.1)找到
答案1
您需要定义一个字体特征集来指定您想要使用的字体脚本、语言或任何其他特征。
\usemodule[simplefonts]
\definefontfeature[malayalam][script=mlym]
\setmainfont[Rachana][features=malayalam]
\starttext
മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്
\stoptext
features=malayalam
也可以传递给 typescript,features=default
代替维基百科。传递给的所有功能\definefontfeature
都采用键值语法,因此+liga;-kern
ConTeXt 使用的是 ,而不是原始的 XeTeX 语法liga=yes,kern=no
,但标签是相同的(没有像 那样的用户友好名称fontspec
)。