如何为单词中的阿拉伯字母着色而不增加额外的长度或 Tatweel?

如何为单词中的阿拉伯字母着色而不增加额外的长度或 Tatweel?

我想用 xelatex 给单词中的一个字母涂上颜色。

\documentclass[14pt,letterpaper]{memoir}
\usepackage{xcolor}
\usepackage[utf]{arabxetex}
\linespread{1.6}
\newfontfamily\arabicfont[Script=Arabic]{KFGQPC HAFS Uthmanic Script}
\begin{document}
\begin{arab}
الْ\char"200D\textcolor{red}{\char"200Dقَ\char"200D}\char"200Dلَمُ
\end{arab}
\end{document}

它为 Qaf 字母着色,但也为字母的两侧增加了一些长度。我认为那是 Tatweel 或 Kashidah:

在此处输入图片描述

但我想要的结果是这样的:

在此处输入图片描述

那么,我该如何实现这个目标呢?

谢谢!

答案1

我无法使用 xelatex 解决这个问题。因此,我决定使用 lualatex,如下所示:https://tex.stackexchange.com/a/529184/209245

\documentclass[14pt,letterpaper]{memoir}
\usepackage[bidi=basic,layout=lists.tabular]{babel}
\babelprovide[import=ar,mapdigits,main]{arabic}
\babelfont[arabic]{rm}{KFGQPC HAFS Uthmanic Script}
\usepackage{xcolor}
\usepackage{luacolor}
\begin{document}
ٱﻝْ\textcolor{red}{ﻕَ}ﻞَﻣُ
\end{document}

其结果如下:

在此处输入图片描述

相关内容