WebFonts WGのrecharter: より高い圧縮率を備えたWOFF 2.0の検討

WebFonts WGの新しいdraft charterが出ていた。先月末付で。知らなかった。

勧告が近いWOFF 1.0

WebFonts WGはWebフォントのフォーマットWOFFを策定しているところ。WOFF 1.0は2011年8月に勧告候補が出ていて、それから更新もないので、仕様としてはかなり安定しているみたい。実装はもう出揃っているようなので、あとは実装のテストなんだろう。といっても、6月6日のTeleconで勧告案に進めることが決まったようなので、勧告もそう遠くないはず。

WOFF 2.0のトピックは「圧縮」

では何で新しいcharterを作ったのかというと、WOFF 2.0を作るらしい。draft charterのあたまにこう書いてある。

In the past two years there has been substantial uptake of WebFonts on production web pages.

However, for fonts with many glyphs (such as are typically used for Chinese and Japanese, for example), even with the compression provided by WOFF 1.0, download sizes are still large. Recently a modified, two-stage compression scheme was proposed which could offer filesize savings of the order of 40% compared to WOFF 1.0. This proposed charter adds stansdardisation of this new method as a deliverable of the existing WebFonts Working Group.

プロダクションで使われるようにもなったけど、グリフ数の多い中国語や日本語フォントでは、WOFF 1.0の圧縮を使ってもファイルサイズは大きいということが書かれている。これは日本でWebフォント使う時によく言われる話。日本でWebフォントを提供するサービスは、サイト内で使われるテキストを含んだサブセットを作って、できるだけサイズを小さくしたりとがんばってる。

さて、そんななか、新しい圧縮フォーマットがもたらされた。この圧縮フォーマットを組み込んだWOFF 2.0を標準化するのが、新しいWebFonts WGのスコープになる。

新しい圧縮フォーマット“WOFF Ultra Condensed”

新しい圧縮フォーマットは、3月の終わりにGoogleのRaph Levienから共有されている。リファレンス実装もあるというすごさ。

この新しいフォーマットを使ってテストしたところ、Google Web Fontsの全フォントはWOFF 1.0に比べて平均26.9%ファイルサイズが減ったとのこと。さらに、フォントによっては最大で半分近く(48.5%)も減っているらしい。

仕組みについてはPDFがふたつ公開されている。ひとつは概要で、もうひとつはフォーマットの詳細。

そうそう。コードネームは“WOFF Ultra Condensed”らしい。そうですか。

中身は…ここらへんさっぱり知らないので、メールやPDFからつまむと2点。

  • エントロピー符号化にLZMAを採用 (WOFF 1.0はzlib)
  • TrueTypeにある冗長なものを削除する前処理

らしいよ。

リファレンス実装はsfntlyのコードを使ったり、MTXを参考にしたりしてるらしい。

WebFonts WGでの議論とrecharter

MTXというワードが出たこともあって、面倒な横道にそれ始めたものの、Sylvainが立て直し、MonoTypeのVladからもステートメントが出たことでうまく収まった。WOFF 2.0となった場合、WOFF 1.0しかサポートしないUAの為にしばらくはふたつフォーマットを提供しないといけないんじゃという建設的な疑問も出た

とまあ、よい具合になって、draft charteが出たらしい。6日のTeleconで取り上げられ、夏ごろまでにレビューは集め終えて、TPAC前には用意ができるといいといった感じになっている。

RaphはAndroidのチームに移動したけれど、引き続きコミットはできるらしい。Androidにもいい影響があるといいなあ。

ファイルサイズの削減は日本でのWebフォント普及に欠かせない要因だと思うので、とんとんと進んで欲しいところ。

追記 (2012-10-25): Rechartered!

Recharterした模様。

WOFF 1.0は勧告案が11日に出た。いまは勧告への手続き中。たぶん来月中に勧告になるんじゃないかなと。