Author Topic: Handling Romanian glyphs in OpenType fonts (updated as of 2009)  (Read 8747 times)

Adam Twardoch (FontLab)

  • Product and marketing manager, Fontlab Ltd.
  • Administrator
  • Hero Member
  • *****
  • Posts: 691
  • FontLab Studio 5.1.2, Mac OS X 10.6.8
    • FontLab
In the initial version of the Unicode Standard, four Unicode characters have been encoded: Ş (U+015E), ş (U+015F), Ţ (U+0162), ţ (U+0163). All these characters are described as “Latin letter ... with cedilla.” The letters Ş and ş are used in Turkish. In addition, all four letters were encoded with the intent of using them in the Romanian language. However, later it has been recognized that, while Turkish uses S/s with cedilla, the Romanian typography prefers to use S/s and T/t with a commaaccent. In an effort to correct this mistake, Unicode added distinct S/s and T/t with commaaccent — Ș (U+0218), ș (U+0219), Ț (U+021A), ț (U+021B) — thereby producing two divergent ways of encoding the Romanian language (“old-style” and “new-style”). 

As of 2009, the recommended way to deal with this confusion in OpenType fonts is as follows:

1. Put the following glyphs into your font:

Letter    Glyph name    Unicode    Design notes 
Ş    Scedilla    U+015E    S with cedilla 
ş    scedilla    U+015F    s with cedilla 
Ș    uni0218    U+0218    S with commaaccent 
ș    uni0219    U+0219    s with commaaccent 
Ţ    uni0162    U+0162    T with cedilla 
ţ    uni0163    U+0163    t with cedilla 
Ț    uni021A    U+021A    T with commaaccent 
ț    uni021B    U+021B    t with commaaccent 

Note 1: The commaaccent mark looks like a small comma placed below the base letter and is disconnected from the base letter. The cedilla mark is usually connected to the base letter.

Note 2: Do not use the glyph names Tcedilla, tcedilla, Scommaaccent, scommaaccent, Tcommaaccent, tcommaaccent — as they are not compatible with AGLFN and Mac OS X 10.4 or earlier. Use the corresponding uniXXXX glyph names instead, as shown in the table above.

Note 3: In the “Letter” column above, the characters are rendered using your browser’s current font, which may or may not have the correct design of the glyphs in question. Please use the column “Design notes” for ultimate guidance on what your glyphs should look like.

2. In the lower-right pane of FontLab Studio 5’s OpenType panel, enter:

Code: [Select]
languagesystem latn dflt;
languagesystem latn MOL;
languagesystem latn ROM;

3. In the feature list of FontLab Studio 5’s OpenType panel, add a locl feature with the following contents:

Code: [Select]
feature locl { # Localized Forms
# Latin
language ROM exclude_dflt; # Romanian
lookup locl_ROM {
  sub [Scedilla scedilla] by [uni0218 uni0219];
  sub [uni0162 uni0163] by [uni021A uni021B];
} locl_ROM;
language MOL exclude_dflt; # Moldavian
lookup locl_ROM;
} locl;

As a result:
  • “New-style-encoded” Romanian text that uses the U+0218–U+021B codepoints will always be rendered using the preferred glyphs (with a commaaccent),
  • “Old-style-encoded” Romanian text that uses the U+015E, U+015F, U+0162, U+0163 codepoints will be rendered using the preferred glyphs (with a commaaccent) in applications that support the OpenType locl feature such as InDesign CS3 or newer, while it will be consistently rendered using the cedilla glyphs in other applications.

Note: Older recommendations that can be found on the internet suggested that the uni0162/uni0163 glyphs should be drawn using a commaaccent. But the problem with this approach was that in most applications (that do not support the locl feature), old-style-encoded Romanian text was rendered with one cedilla and one commaaccent glyph, which looked inconsistent and confusing to the users. Romanian users suggested that while the commaaccent glyphs are preferred over the cedilla glyphs, it is even more important the text is rendered consistently — using either commaaccent or cedilla — rather than if two different marks being used at the same time.

More discussion on this topic can be found at:
« Last Edit: 2009-03-16, 06:58:41 by Adam Twardoch (FontLab) »
Adam Twardoch
Fontlab Ltd.