Advance widths for C0 Control glyphs

What are the recommendations for the widths on U+0000 thru U+001F?
Sometimes Fontlab creates a zero width glyph and sometimes it applies a 333 unit width.

I appreciate any guidance on this.

Comments

  • John Hudson
    John Hudson Posts: 3,213
    edited May 17
    Most of the C0 control characters do not need to be included as glyphs in fonts.

    The original Apple TrueType specification recommended that the first three glyphs in a font be 

    .notdef
    NULL (0x0000)
    CR (0x000D)

    and this was carried over into Microsoft’s version of the spec that became OpenType. 0x0000 and 0x000D are the only C0 control character glyphs that are commonly encountered in fonts, and these are omited from a lot of OT fonts now, especially CFF flavour fonts. [I still tend to include them just out of habit and awareness of just how long legacy dependencies tend to lurk in software.]

    0x0000 should be zero width
    0x000D should be equal to the /space glyph width

  • James Montalbano
    James Montalbano Posts: 101
    edited May 17
    I ask because a client is asking for Line Feed 0x000A to be included.
  • John Hudson
    John Hudson Posts: 3,213
    My guess would be that U+000A should be treated like U+000D and inherit the /space glyph width.

    I just tried creating a set of all C0 control characters in FontLab, and most were either 333 units wide of 307 units wide. My inclination is that any that are 333 units wide should probably inherit the /space glyph width, and the others should be zero-width.
  • Thank you John