[XeTeX] Accessing ligatures from FontForge

John Was john.was at ntlworld.com
Wed Feb 23 09:19:24 CET 2011


Thanks to everyone for the advice.

I don't use XeLaTeX so don't employ commands such as \defaultfontfeatures - 
this isn't how I access fonts in plain XeTeX.

It's obvious (I think!) that I need to learn how to set up a liga table in 
FontForge, and indeed I thought I'd done just that, but it's not picking up 
the information.  I'll have another look but since I can access the 
characters by \char" I believe I can see a way forward from within TeX 
(making the five characters active so that they invoke the required 
\discretionary commands to generate correct hyphenation).  The only down 
side to that, which is not a great inconvenience, will be globally searching 
on ffi, ffl, etc. to replace them with the Unicode characters.

But I hadn't realized that FB00 - FB04 were deplored as the positions for 
these characters, and that may be part of the problem.  (However, I have 
examined my Monotype Baskerville outline font, and it does have the five 
ligatures in those slots.)

I'm sure all this is just the usual floundering of a newbie - I expect/hope 
it will all become clear after I've climbed the learning curve.

Best


John





----- Original Message ----- 
From: "Andy Lin" <kiryen at gmail.com>
To: "Unicode-based TeX for Mac OS X and other platforms" <xetex at tug.org>
Sent: 23 February 2011 07:11
Subject: Re: [XeTeX] Accessing ligatures from FontForge


I agree, it's not a good solution. I've seen it break small caps (so
\textsc{first} yields fiRST, where RST is small caps, but fi is the
lowercase ligature), and do other strange things. It is, however, a
relatively painless way to enable such ligatures in TrueType fonts or
OpenType fonts that don't have a liga feature for the roman alphabet
but have the glyph (Most Windows fonts from before Vista/7 are like
this).

On Tue, Feb 22, 2011 at 18:07, Jonathan Kew <jfkthame at googlemail.com> wrote:
>
> On 22 Feb 2011, at 22:55, Andy Lin wrote:
>
>> tex-text.map only provides for some punctuation marks. You can add
>> these lines to your tex-text.map file (or use it as a base and name it
>> something different, like tex-text-f.map). Semicolons are comment
>> characters. Below, only fi and fl ligatures are active.
>>
>> You'll need to run the file through teckitcompile.exe to generate the
>> .tec that XeTeX uses.
>>
>> ;U+0066 U+0066 <> U+FB00 ; ff -> ff ligature
>> U+0066 U+0069 <> U+FB01 ; fi -> fi ligature
>> U+0066 U+006C <> U+FB02 ; fl -> fl ligature
>> ;U+0066 U+0066 U+0069 <> U+FB03 ; ffi -> ffi ligature
>> ;U+0066 U+0066 U+006C <> U+FB04 ; ffl -> ffl ligature
>>
>
> Although you _could_ do this, I wouldn't advise it. Much better to learn 
> how to set up the ligatures you want as 'liga' substitutions in the 
> OpenType font.
>
> JK
>
>
>> On Tue, Feb 22, 2011 at 17:36, John Was <john.was at ntlworld.com> wrote:
>>> Hello
>>>
>>> Forgive the puzzlement of a new recruit to FontForge (which is installed 
>>> via
>>> Cygwin on a Windows XP machine). And apologies if this isn't the right
>>> forum - though frequent discussion of font-related issues here gives me
>>> hope.
>>>
>>> I edited a font which had just the fi and fl ligatures (in their true
>>> Unicode positions at FB01 and FB02) and I managed to create tolerable
>>> versions of the other three standard ligatures (ff, ffi, ffl). Using
>>> FontForge I have added these in the slots FB00, FB03, and FB04. But
>>> "mapping=tex-text" in the font call (in plain XeTeX) doesn't access any 
>>> of
>>> them, neither the two that were there already nor the three that I 
>>> created;
>>> however, the standard ` ' `` and '' for opening and closing quotations 
>>> do
>>> work so the mapping call is basically functioning as normal. The glyphs 
>>> are
>>> accessible to TeX if I give them manually as \char"FB00 etc. but I 
>>> obviously
>>> would like to have them delivered automatically as usual.
>>>
>>> I have tinkered with various FontForge menus and had hoped that adding
>>> 'liga' to the GSUB window would be sufficient, but there is clearly
>>> something I am not doing right. Can anyone advise?
>>>
>>> Many thanks
>>>
>>>
>>> John
>>>
>>>
>>>
>>> --------------------------------------------------
>>> Subscriptions, Archive, and List information, etc.:
>>> http://tug.org/mailman/listinfo/xetex
>>>
>>>
>>
>>
>>
>> --------------------------------------------------
>> Subscriptions, Archive, and List information, etc.:
>> http://tug.org/mailman/listinfo/xetex
>
>
>
>
> --------------------------------------------------
> Subscriptions, Archive, and List information, etc.:
> http://tug.org/mailman/listinfo/xetex
>



--------------------------------------------------
Subscriptions, Archive, and List information, etc.:
  http://tug.org/mailman/listinfo/xetex 



More information about the XeTeX mailing list