我从 2009 升级到 mactex 2011,使用阿拉伯语时,xelatex(XeTeX,版本 3.1415926-2.3-0.9997.5(TeX Live 2011))不再产生相同的输出。pdf 输出中缺少元音(阿拉伯语中称为 harakaat)。它们以前在 mactex 2009 中显示正常,但在 2011 中不再显示。任何帮助我都会很感激。这是一个最小的例子。
\documentclass{article}
\usepackage{fontspec}
\usepackage{arabxetex}
\usepackage{fullpage}
\newfontinstance\farsifont[Script=Arabic,Scale=1.6,WordSpace=2]{mylotus}
\newfontinstance\arabicfont[Script=Arabic,Scale=1.6,WordSpace=2,Mapping=arabicdigits]{mylotus}
\setromanfont[Mapping=tex-text]{Verdana}
\begin{document}
\begin{enumerate}
\item{There are many languages in the world.\\
\textarab{في العالمِ لغةٌ كثيرةٌ.}\\
}
\end{enumerate}
\end{document}
编辑:
这是示例的实际输出:
此输出显示缺失的元音:
另外,xelatex 编译的日志是http://pastebin.com/raw.php?i=9Hraw83d
答案1
似乎你必须告诉arabxetex
你你正在直接输入 Unicode 阿拉伯字符。使用
\textarab[utf]{في العالمِ لغةٌ كثيرةٌ.}
给出所需的输出(另见使用阿拉伯文字排版文档)。
或者,由于您不使用的拉丁输入编码功能arabxetex
,您可以使用polyglossia
:
\documentclass{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{english}
\setotherlanguage{arabic}
\newfontfamily\arabicfont[Script=Arabic,Scale=1.6,WordSpace=2,Mapping=arabicdigits]{Scheherazade}
\setromanfont[Mapping=tex-text]{Linux Libertine O}
\begin{document}
\begin{enumerate}
\item
There are many languages in the world.\\
\textarabic{في العالمِ لغةٌ كثيرةٌ.}
\end{enumerate}
\end{document}