Hebrew Mirror ("X") Fonts

meir's picture

Major Israeli type vendors today distribute their fonts in several formats. One of those formats is called "X Fonts" or "Mirror Fonts", which are essentially horizontally-flipped versions of the original font files, for use in applications such as Macromedia Freehand and Flash, that don't have native support for Hebrew (or for any other Semitic, right-to-left language, for that matter) - the text blocks are then "flipped" again in the application itself, and the text can be edited more-or-less normally (with a few directional exceptions such as digits and complex punctuation).

I am in the process of creating such "X" versions for my own Hebrew fonts in Fontographer, and the difficulty I'm having is in reserving the original font's spacing, since the only appropriate transformational attribute in Fontographer is a center-of-selection based horizontal flip, the left and right sidebearings remain as they were before the transformation.

Itay K has very helpfully suggested adding large rectangles which would cover each glyph, and would later be erased after the transformation is complete, thus flipping the sidebearings, as well.

Itay's method works very well, but I wonder if I could maybe automate the process a bit. I've developed a web-based algorythm that inputs an exported AFM file with spacing information, and then outputs an AFM file with corrected sidebearing information for "mirrored" spacing. I've worked according to the AFM specifications that I downloaded here:
http://partners.adobe.com/asn/developer/pdfs/tn/5004.AFM_Spec.pdf

I'm currently attempting to import the corrected AFM files back to Fontographer, but it doesn't seem to have any effect. Does anybody have any insight or maybe someone has experienced same difficulties importing metrics, esp. sidebearings, into Fontographer?

I would appreciate any comment or aid regarding this. Thanks very much!

hrant's picture

> the only appropriate transformational attribute in
> Fontographer is a center-of-selection based horizontal flip

What if you did a flip around the Origin, and then a rightward offset by the width?
(And a path direction correction.)

hhp

meir's picture

Wow, Hrant, I'm finding this much easier than the rectangle method! If I wouldn't find a way to use this algorythm, I'll definately use your suggested method. Thanks very much!

Still, I need to type in different offsets for each character, so my previous query remains.

hrant's picture

If you use FontLab, a simple Python script would do the entire font in seconds.

hhp

Syndicate content Syndicate content