converting Classic fonts with non-standard encodings
Posted: 2008-04-17 18:30:49
One issue that can come up for Classic users is converting documents that make use of fonts that have non-standard encodings. These fonts basically co-opt regular Mac Roman characters and displays something else instead. This is far from ideal, since losing/changing that font changes the meaning of your text, likely producing gibberish.
The best is for all characters to be encoded in absolute terms (Unicode), independent from the font that is applied. The trouble is converting old documents. Nisus Writer Pro will automatically convert the fonts we know of that make use of standard encodings (eg: the "AB Geeza" font uses the Mac Arabic encoding). But this doesn't cover fonts with non-standard encodings, like the popular "METimes" (Mid-East Times).
Now that NWP 1.1 preserves unavailable fonts when opening files, it's possible to write macros that can convert these old font automatically. To that end we thought it would be nice to provide templates for macro authors who want to create macros to do the font transliteration. If you take one of the template files you have to do two things:
1. Fill in the mapping table for the font. Eg: for each ASCII character that displays as something else, add it to the macro using lines like:
2. Apply the old font (the one to be converted) to the Find command in the macro.
Both of these steps are highlighted in the template macro file comments.
Also included with the templates is an example macro "NSAramian to Unicode" which converts text in the Armenian "NSAramian" font to Unicode. Thanks to Nerses Boyadjian for providing the character mapping.
If anyone does author macros to cover additional fonts that others may be using, it would be nice to add them to our macro repository once 1.1 is released. We'd appreciate receiving copies of such macros, submitted through the usual menu Help > Send Feedback.
The best is for all characters to be encoded in absolute terms (Unicode), independent from the font that is applied. The trouble is converting old documents. Nisus Writer Pro will automatically convert the fonts we know of that make use of standard encodings (eg: the "AB Geeza" font uses the Mac Arabic encoding). But this doesn't cover fonts with non-standard encodings, like the popular "METimes" (Mid-East Times).
Now that NWP 1.1 preserves unavailable fonts when opening files, it's possible to write macros that can convert these old font automatically. To that end we thought it would be nice to provide templates for macro authors who want to create macros to do the font transliteration. If you take one of the template files you have to do two things:
1. Fill in the mapping table for the font. Eg: for each ASCII character that displays as something else, add it to the macro using lines like:
Code: Select all
$map{'*'} = '〇'
$map{'!'} = '〄'
Both of these steps are highlighted in the template macro file comments.
Also included with the templates is an example macro "NSAramian to Unicode" which converts text in the Armenian "NSAramian" font to Unicode. Thanks to Nerses Boyadjian for providing the character mapping.
If anyone does author macros to cover additional fonts that others may be using, it would be nice to add them to our macro repository once 1.1 is released. We'd appreciate receiving copies of such macros, submitted through the usual menu Help > Send Feedback.