[XeTeX] Help with XeTeX and Georgia (OTF)
Jonathan Kew
jfkthame at googlemail.com
Fri Nov 13 01:19:47 CET 2009
On 12 Nov 2009, at 23:42, Matthew Mellon wrote:
> I'm a technical writer, and my company just switched standard
> typefaces. For documents destined to both screen and paper, we are
> to use Georgia.
>
> My Windows system has georgia.ttf, and I seem to be able to get
> XeLaTeX to see it... but, when I compile the following document:
>
> \documentclass{article}
> \usepackage{fontspec}
> \usepackage{xunicode}
> \usepackage{xltxtra}
> \setmainfont[Mapping=tex-text]{Georgia}
> \fontspec[Ligatures={Common}]{Georgia}
> \begin{document}
> I like fish.
> \end{document}
>
> I don't get the fi ligature in my output. When I view Georgia in
> Character Map I can see the ligature at address U+FB01. Is there any
> way to tell XeTeX where the ligature is and make it use the glyph?
I believe the older Windows fonts like Georgia don't have any support
for automatic ligatures -- they lack the OpenType tables that would
implement this. So although the glyph exists, there's nothing telling
xetex to use it.
In principle you could enter it as fi (U+FB01) in your text, but I
really wouldn't advise that; besides being awkward to do, it will
thoroughly mess up anything else you want to do with the text such as
spell-checking or other processes.
A better approach would be to use a font-mapping to replace the
character pair "fi" with U+FB01 on the fly. To do this, you could make
a copy of the tex-text.map source file, add a mapping rule for the
"fi" pair, and compile the new mapping to .tec format with
teckit_compile; then load your modified mapping instead of the
existing tex-text.
Alternatively, you can just accept that Microsoft decided not to give
Georgia automatic fi-ligatures.
JK
More information about the XeTeX
mailing list