I’m a Japanese font developer using Glyphs 3.
I’ve recently noticed that TrueType fonts exported from Glyphs 3 cannot be recognized correctly in some older Windows applications or embedded systems — for example, older versions of Adobe Illustrator, Microsoft Word, or printer controllers.
After inspecting the generated TTFs, I found two main differences between Glyphs 2 and Glyphs 3 that affect backward compatibility:
- Legacy cmap subtables are no longer generated.
- Glyphs 3 exports only Unicode-based cmaps (
platformID=0,platformID=3) — typically format 4 (Microsoft Unicode BMP). - However, older Japanese Windows applications rely on Shift_JIS / JIS encodings, which expect additional cmap subtables such as:
platformID=1,platEncID=0, format 2 or 4 (Mac / SJIS compatible)platformID=3,platEncID=2(Microsoft Shift_JIS)
- Without these tables, the fonts are not recognized as Japanese fonts, and characters appear as tofu (□) or are replaced by fallback fonts.
- The OS/2 CodePageRange flag for Shift_JIS is no longer set.
- In older versions (Glyphs 2), the exported TTF automatically set the
OS/2.ulCodePageRange1bits to indicate Shift_JIS support. - Specifically, the bit pattern
0x00020001(which enables Latin + Shift_JIS) tells Windows that the font supports Japanese code pages. - This flag is required for older GDI-based applications to list and render the font correctly.
Feature Proposal
I’d like to kindly request that Glyphs 3 include an export option (checkbox or custom parameter) such as:
“Include legacy Shift_JIS / JIS cmap and CodePageRange for Windows compatibility”
When enabled, it could:
- Add
cmapsubtables for legacy encodings (platformID=1, platEncID=0, format 2 or 4). - Set the
OS/2.ulCodePageRange1bits to0x00020001(Latin + Shift_JIS).
This would restore compatibility with older non-Unicode environments, while keeping the modern Unicode cmaps for current platforms.
Currently, the only workaround is to use FontTools/TTX or other scripts after export to manually inject these cmap subtables and modify the OS/2 bit field, which is time-consuming and error-prone.
Adding this as a built-in export option would greatly help Japanese type designers who need their fonts to work on both new and legacy systems.
Thank you very much for considering this feature.
Best regards,