当我们这样做的时候,LuaLaTex OpenType 布局代码中还有另一个可能的错误:几个非打印字符(例如 200c、200d、200e 200f 等)确实出现在 pdf 中,尽管它们不应该出现。到目前为止,我习惯于\catcode"200E=9
忽略它们。对于 200e 和 200f 来说,这没问题,但对于 200c 和 200d 来说则不行,因为忽略它们也会失去效果,对于 200c 和 200d 来说,效果应该是连接两个字符或将它们分开。
我还意识到并非每种字体都能打印这些字符:例如,Scheherazade 就不能,但这仅仅是因为它本来就没有这些字符作为字形。
我还认为这也许是一个功能而不是一个错误,因为毕竟有时能够将不可见的字符可视化是件好事——但随后也应该能够关闭该功能。
妇女权利委员会:
% !TEX TS-program = lualatexmk
\documentclass{article}
\usepackage{fontspec}
\newfontfamily\arabicfont[ Script=Arabic,%
Numbers=Arabic,%
Scale=MatchLowercase%
]{ArabicTypesetting}%
\newcommand{\arabtext}[1] % Arabic inside LTR
{\bgroup\textdir TRT\arabicfont #1\egroup}
\begin{document}
\arabtext{خانهای}
\end{document}