Safari 17.4 Vertical Writing Modes won’t change a thing

WebKit got a significant upgrade with Safari 17.4 in the iOS 17.4/macOS 14.4 update. One new feature is Vertical Writing Modes, a new form control element that is part of the inline layout engine rewrite.

The web was originally designed in an era when the Latin alphabet (used by many languages, including English) was the presumed default, with its horizontal top-to-bottom writing mode.

For thirty years, form controls have presumed a horizontal writing mode. Typesetting in a vertical writing mode for languages like Chinese, Japanese, Korean, and Mongolian did not include vertical form controls. Now that’s changed. Starting in Safari 17.4, vertical form controls are supported. This includes meter, range, progress and other form controls that could make for great UI in any language when laid out in a vertical format.

30 years? This is a welcome, if long overdue, feature but it illustrates how little non-western typography matters to the minds that drive OS development. And it won’t change a thing. As Japanese typography centric iOS software designer usagimaru succinctly posted on X: “It looks kind of like Japanese, but it’s not readable.”

Quality vertical text layout will never happen on web pages because CSS and OpenType baseline font metrics are not up to the job. I’ve posted about the situation in detail but it’s worth recapping here. Adobe InDesign J is the only app out there that faithfully produces high quality Japanese vertical layout because it incorporates proprietary virtual font body metrics.

Virtual font body metrics need to be an open standard incorporated into OpenType for consistent high quality vertical text layout of CJK (Chinese, Japanese Korean) and other non-Latin based writing systems to happen everywhere, across all OS platforms: web pages, smartphone apps, desktop apps, eBooks. It’s the only way for non-Latin writing systems to be treated equally at the OS and application development level. New wallpaper and a paint job is nice but doesn’t change anything. It has to happen at the foundation. It’s that simple.