我正在编写一份包含越来越多不同书写系统的代表的文档。它主要是一份英文文档,我一直在使用以下内容来确保 CJK 字符、韩语 Hangul 和 IPA 得到全面支持:
\usepackage[fallback]{xeCJK}[2011/05/01 v2.3.19]
\usepackage{fontspec}
\defaultfontfeatures{Mapping=tex-text}
\setromanfont{TeX Gyre Termes}
\setsansfont[Scale=MatchLowercase]{Doulos SIL}
\setCJKmainfont{HAN NOM A}
\setCJKfallbackfamilyfont{\CJKrmdefault}{HAN NOM B} % goes with Han Nom A
\setCJKfamilyfont{korm}{Arial Unicode MS}
\newcommand\Korean{\renewcommand\CJKrmdefault{korm}\CJKspace\normalfont}
我可以通过普通的 LaTeX 方式获得西欧使用的罗马字母和希腊字母的主要特殊变体。但现在我必须添加一些西里尔字母,由于 Arial Unicode MS 包含字形,所以我添加了一行
\newfontfamily\utf{Arial Unicode MS}
到序言并标记西里尔文文本\utf{}
,这产生了令人满意的结果。(为了满足多种系统字体的要求,我通常使用 XeLaTeX 进行编译)。
我的问题不仅仅是如何在当今的环境中处理西里尔文,更大的问题是,当需要时,如何最轻松地在其他 Unicode 平面中添加材料。现在是否有一个全面的解决方案可以处理我拥有的字体的所有书写系统,即使需要特殊的变音符号、字距调整和方向行为?