[XeTeX] Palatino and mapping error?

Jonathan Kew jonathan_kew at sil.org
Sun Jul 29 21:05:04 CEST 2007


On 29 Jul 2007, at 6:24 pm, Alex Hamann wrote:

> I run into a problem with Palatino and correct mapping. In the
> minimal example provided below I am unable to get the correct
> mapping. the hyphen will always end up on the second "t" unless I
> deactivate Mapping - but then I do not get any mapping at all which
> is not what I want.
> I also know that the Ligatures are not the cause for the problem
> since swichting them all off (Ligatures=
> {Required,Common,Rare,Logos,Rebus,Diphthong,Squared,AbbrevSquared,Icel 
> an
> dic}) does not solve the problem.
>
> Any help is greatly appreciated,
>
>
> alex
>
>
> %%%%%%%%%%%%
> \documentclass[a4paper, 12pt, oneside]{article}
>
> \usepackage[english, german]{babel}
> \usepackage{xunicode, fontspec}
>
> \setmainfont[Mapping=tex-text]{Palatino}
>
> \begin{document}
> im Klett--Cotta Verlag
> \end{document}
> %%%%%%%%%%%%

How odd. Yes, I see the same issue. And you get the same result if  
you don't use the tex-text mapping, but instead put a literal en-dash  
in the source text. (Em-dash is fine, however.)

I guess there is something about the Palatino font that is leading to  
this behavior. What version are you using? Mine is an old Apple- 
supplied one from Mac OS 9 days, I think.

A workaround is to put the dash into a box:

    im Klett\mbox{--}Cotta Verlag

will print the dash properly. But it's a nuisance to clutter your  
document like this, obviously.

Another workaround is to use the ICU renderer rather than ATSUI, by  
loading the font using

    \setmainfont[Mapping=tex-text,Renderer=ICU]{Palatino}

This seems to work fine (though you won't have access to any AAT  
features). The problem is apparently caused by something in the AAT  
tables in that version of Palatino.

JK



More information about the XeTeX mailing list