snarke (snarke) wrote,

  • Mood:

Hard Core Font Voodoo

Nearly 15 years ago, I made myself a special set of fonts with some font editing program or other. Maybe Fontographer, maybe Font Lab; I've owned both. Basically, I took my set of standard Bembo font files, and replaced the numerals with the ones from the Bembo Expert Set files, so that my 'default' text font would have non-lining (aka 'lower case' or 'old style') numerals. Since 95% of the software I use had little or no support for using Expert Sets, this gave me the 'good' numbers without having to jump through ridiculous hoops, or do without.

But Expert Sets are seriously old-school. These days, OpenType is where it's at, and the Mac's operating system has been on the leading edge of supporting OpenType fonts. Since I now have a full set of Bembo in OpenType, I figured it was probably time to retire my customized Bembo files in favor of them.

The default, naturally, is for lining numerals. But I can just pop open (Splat-T) the type requester in Pages or Numbers or OmniGraffle or TextEdit or Mail or any well-written, modern Mac app (which basically means anything but Office), pick 'Typography' off the little drop-down menu at the bottom, twiddle open "Number Case" from the window that opens up, and click 'old style'.

Again. And again. And again. Crap. This isn't as good as just picking "Cleopatra" off my font list. ("Cleopatra" is what I named my modified version of Bembo so I could find it in my font menus.) What I need to do is tell OSX that it should default to old-style numbers.

That took me more than an hour to coax out of the Mysterious Realm of the Web, and it proved to be so incredibly obscure that I feel I must blog about it just to try to keep the knowledge from vanishing once again into the mists of time.

This trick requires that FontForge is installed on your Mac. Load the font(s) that you want to set up to default to lower case numbers into FontForge. (You should make sure that the font HAS lower case numerals first, of course.) Select "Font Info" from the "Element" menu. Select "Mac Features." If this is an AAT-type font, there will be something here, but if it's an OpenType font, it'll probably be empty. If it's empty, click the "Default" button to fill it in. Double-click "21 Number Case." Double-click "0 Lower Case Numbers." Click the "Enable" box to put an "X" in it. Click all the OK boxes to close the requesters (there should be three of them).

Now save the font. this involves selecting "Generate Font" from the "File" menu, and choosing "Opentype (CFF)" as the font file format. (It's possible that OpenType .dfont would work as well.) Click "Options," and make sure there's an "X" in the "Apple" box in the SFNT section. "Apple" means that the AAT (Apple Advanced Typography) font tables will be included in the file ('feat' and 'morx'). You can also check off the "OpenType" box to get the OpenType tables ('GPOS' and 'GSUB'). For most fonts, which of these you choose probably won't make a huge difference; they're the 'fancy advanced features' instructions. According to the guy who wrote FontForge, there's some things that the OT scheme can do that AAT can't, and vice versa. One thing I know OT can't do, is force old style numbers to be the default, so you have to check off "Apple" or this whole rigamarole doesn't do any good.

That was way too much work.
Tags: fonts, geek, oldstyle numerals
  • Post a new comment


    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.