Stroke Fonts Redux

In 2010 Steve Jobs wrote the then infamous, now famous “Thoughts on Flash”. In it and in his last appearance at the “All Things D” conference that summer, he explained that Adobe Flash was a desktop technology past its prime, entirely inappropriate for the mobile era. Jobs was heavily criticized but six years later everything he said turned out to be true.

There is another widely used Adobe desktop technology that is inappropriate for the mobile era: OpenType. The base technology, PostScript and the Type 1 font format, was created in the early 1980’s and only for roman based character sets. CJK Asian language support was not a consideration and was added much later, but with serious technical limitations and problems. The original Japanese Type 1 was an extremely inefficient font format for CJK languages with a limited character set, and memory and storage requirements pushed the hardware of the day to the limit often breaking down in memory errors. Japanese Type 1 fonts could not be dynamically downloaded and had to reside on the output device. Adding a single Japanese PostScript printer font cost 2,000 USD.

Adobe fixed the problems over the years, BUT ONLY after Apple released QuickDraw GX. GX was built from the ground up as a world ready text engine and eliminated all the CJK limitations and headaches of PostScript and Type 1. It was an Asian font developers dream come true. As one Apple engineer from the international team told me in the late 1990’s, “If it had not been for QuickDraw GX, OpenType would  never have happened.” Every Adobe CJK font innovation has come after Apple made the first move: from GX which gave us OpenType, to the Apple Publishing Glyph Set that Steve Jobs announced at MacWorld Tokyo in 2000 that in turn gave us the Adobe Japan Extended Character sets.

But there is one little thing Adobe can never fix: the large font sizes of CJK OpenType fonts due to the outline font formats that reside in OpenType, CFF (Type 1) and TrueType. The Adobe Japan 1-4 character set contains 15,444 glyphs so file sizes are large, typically 3 to 8 MB for a single “Gothic” sans serif font, 7 to 12 MB for a single “Ryumin” serif font.

The inefficient outline font formats and gross size of CJK OpenType fonts is extremely painful on iOS devices. On watchOS it’s an insurmountable dead-end. The only way forward is a new font format. In 2015 Apple was busy contacting Japanese font developers and engineers asking about stroke based font technology. Why?

Stroke Fonts: The Future of CJK Text on Mobile and Wearables?
A revolutionary but little known feature of QuickDraw GX and Mac OS 9 was the Open Font Architecture (OFA) parts of which survived in the OS X ATSUI Carbon text framework. As the name implied OFA was a plug-in architecture that worked with any font technology be it PostScript, TrueType or completely new font technology such as stroke fonts created for CJK writing systems.

Anybody who has studied Chinese or Japanese knows that although each Kanji is unique, certain parts occur again and again, recombining to create new characters. You can get a good feel for this by looking at Chinese or Japanese calligraphy. The brush is the most natural way to write Kanji, and with a little study you quickly comprehend the strict order of each stroke.

In a similar way, stroke fonts break down the Kanji into parts that loosely correspond to brush strokes. These stroke parts are kept in a library that the stroke font scaler uses to draw the glyph, reusing parts for different glyphs and weights. There were many Asian font developers feverishly creating QuickDraw GX stroke fonts in the early 1990’s and the results were impressive: Japanese fonts could do weight variations over the full range from Light to Ultra Bold all in a single 4 MB font file. An equivalent OpenType Japanese font family can weigh in at 18 MB. On a mobile platform that kind of storage and memory saving is insanely valuable currency.

Outline Fonts vs. Stroke Fonts 1

new stroke font graphic 1

With outline font technology every glyph of the character set has to be stored separately. Blending is not possible between characters of widely separated weights due to differing numbers of objects and vector points.

New Stroke Font Graphic 2

With stroke font technology different glyphs can reuse parts. Glyphs of widely separated weights have the same number of objects and corresponding vector points, which means that blending is possible across the entire range  of weights in a font family. It is possible to create a variable weight font – a single font containing all the data necessary for the OS or user to specify a weight anywhere on a sliding scale from light to ultra-bold. Ideal for mobile devices with limited storage.

Outline Fonts vs. Stroke Fonts 2

new stroke font graphic 3

In an outline glyph, the individual strokes are merged into a single outline. Changing the width or height of the glyph by scaling results in stretching or compression of the design. Notice the resulting changes in stroke weight in the vertical strokes and distortion in the shapes of horizontal and angled strokes. The angle and size of the serifs are also no longer consistent with the original font design.

In a stroke based glyph, it is possible to make changes to the width or height of the glyph by changing the construction recipe data. Even at such extremes as 50% and 200% of the original width, it can be seen that the stroke weight, serif size and head angles are correct. It is also possible to re-position the strokes correctly for the new design.

Post GX Stroke Font Development
After Apple bought NeXT and killed off most of QuickDraw GX in 1997 (parts of it survived in OS X ATSUI and Apple Advanced Typography font tables), Asian font developers shelved their GX stroke font projects. In 2002~2003 they pulled them off the shelf and brought them to market, but not on Apple’s platform. It was mobile.

The explosion of 3G Internet capable Symbian OS Japanese handsets,  Docomo iMode, and leap frogging display sizes and specs demanded scalable Japanese fonts with tiny storage and memory requirements. Stroke fonts adapted for mobile were the perfect solution. Morisawa had  KeiType, Ascender Corp (later bought by Monotype) had Compact Asian font technology and Taiwan font developer DynaComware had DigiType.

None of these prospered or survived in the post iPhone era. Font technology has to be build into the foundation of a standard OS, it’s useless otherwise. TrueType prospered and became standard because Apple and Microsoft built it into their respective OS’s and bundled lots of TrueType fonts with every computer. If TrueType had been an install option, it would have died.

Every lead-up to WWDC is a wild rumor-mill ride. Its fun reading about all those great new cool things supposedly waiting in the wings for keynote day. Just because Apple has been asking Japanese font developers about stroke font technology doesn’t necessarily mean it is going to be a keynote slide.

I suspect some kind of development is taking place. OpenType, 1980’s outline font technology, is a dead end for CJK fonts on watchOS and we know how important the China market is to Apple. A new, highly efficient, mobile focused and CJK savvy font format would pay big long term dividends on three Apple platforms: iOS, watchOS and tvOS.

I also suspect Apple will license or buy outside technology. The gist of the email inquiries in Japan was this, ‘who has the best stroke font technology?’ If so, Monotype’s technology could be a candidate. Monotype has long championed stroke fonts and similar mobile optimized font technology. Last but not least: key Monotype font engineers previously worked at Apple creating TrueType and QuickDraw GX font technology.

Whatever the outcome, WWDC Keynote day is always fun. Enjoy.

Update 1: No font related announcements were made at WWDC. Apple did make stroke font technology inquiries to Japanese font engineers in 2015 so we’ll keep ears open and see what develops. It could be nothing but these things take time. It took Apple 18 years to finally get around to developing the new Apple File System unveiled at WWDC.

Update 2: OpenType Variable Fonts were announced as part of the new OpenType 1.8 specification. Jointly developed by Adobe, Microsoft, Goggle, and Apple, OpenType Variable Fonts are built on Apple’s TrueType GX technology. Stroke fonts did not pan out, but TrueType GX lives on in OpenType Variable Fonts. It will be very interesting to see how Apple implements this on iOS and macOS.