[XeTeX] arabic
Ross Moore
ross.moore at mq.edu.au
Mon Oct 25 02:08:06 CEST 2010
Hi Kamal,
On 25/10/2010, at 6:05 AM, Kamal Abdali wrote:
> Thanks, Ross, for your effort to tame makeindex for the Arabic script.
>
> I also came across an interesting Persian sample that uses xepersian and makeindex. The pdf and tex source are at
> http://www.parsilatex.com/joomla/attachments/vahid-seminar.pdf
> http://www.parsilatex.com/joomla/attachments/vahid-seminar.tex
> Missing some of the source components, I couldn't reproduce the pdf exactly. But lo and behold, the index was generated without fuss and in the desired order of entries. I am still mystified why the letters are disconnected in the text, but that's another debugging chore.
The \index entries in that document result in the following kinds
of line within the .idx file:
\indexentry{$ \uparrow \left\lbrace x\right\rbrace $|hyperpage}{3}
\indexentry{قییی@کران بالا|hyperpage}{3}
This is another way to apply a macro to the page-number;
in this case \hyperpage is applied, due to the 'pagebackref'
option when hyperref is loaded. It is done by a redefinition
of the \index command, or of a LaTeX internal that it calls.
The arabic page numbering must be due to the font that is being used,
with a language setting. This is because XeTeX just receives the numbers
as ordinary western digits, but is outputting in the Hex range
x01d0 --> x01d9 .
The font "XB Niloofar" is accompanied by CMap bfrange transformations,
as follows:
<01D0> <01D2> <0661>
<01D3> <01D5> <06F4>
<01D6> <01D8> <0667>
These map into the arabic-indic digits part of Unicode.
Thus Copy/Paste from the PDF recovers the digits in this form.
> Kamal Abdali
Hope this helps,
Ross
------------------------------------------------------------------------
Ross Moore ross.moore at mq.edu.au
Mathematics Department office: E7A-419
Macquarie University tel: +61 (0)2 9850 8955
Sydney, Australia 2109 fax: +61 (0)2 9850 8114
------------------------------------------------------------------------
More information about the XeTeX
mailing list