阿拉伯语中的字母和间距——LuaLaTeX 的 OpenType 布局中存在错误

阿拉伯语中的字母和间距——LuaLaTeX 的 OpenType 布局中存在错误

我认为会出现以下不想要的结果: opentype 引擎的问题

两个问题:

  1. 在第一行中,右边的最后一个单词与右边第二个字母和第三个字母之间有一个不应该存在的小间隙。

  2. 第二行,这个词完全乱了。

我在 2013 年 6 月之前就遇到过第 1 期。我写信给 Khaled Hosny,他告诉我这是

LuaLaTeX 当前使用的 OpenType 布局引擎中存在错误。

2013 年的解决方案是luaotfload通过发行进行更新luaotfload-tool --update

如今,这种方法不再管用了。

那么我该怎么办? 2.5 年后突然再次看到旧错误,我感到非常惊讶。 发生了什么事?

如果有人感兴趣的话,MWE 是这样的:

% !TEX TS-program = lualatexmk
\documentclass{article}
\usepackage{fontspec}
    \newfontfamily\arabicfont[  Script=Arabic,%
                            Numbers=Arabic,%
                            Scale=MatchLowercase%
                                ]{Amiri}%
    \newfontfamily\arabicfontz[ Script=Arabic,%
                            Numbers=Arabic,%
                            Scale=1.6%
                                ]{Arabic Typesetting}%
\newcommand{\arabtext}[1]       % Arabic inside LTR
    {\bgroup\textdir TRT\arabicfont #1\egroup}
\newcommand{\arabtextz}[1]      % Arabic inside LTR
    {\bgroup\textdir TRT\arabicfontz #1\egroup}
\begin{document}
\noindent Font: Amiri => wrong: \arabtext{تعريف}\\
Font: Arabic Typesetting => very wrong: \arabtextz{تعريف}
\end{document}

相关内容