最近WebFontというものが流行ってきているらしい。通常のWebサイトでは各端末に入っているフォントをCSSで指定して使っているが、WebFontというのはフォントデータをサーバーから取得して使うしくみなのでユーザーの端末に入っていないフォントでも表示可能、また様々な種類のとても美しいフォントが用意されているといった点が大きな利点となっている。
なんだ素晴らしいじゃないかと手放しで喜びたくなるが「日本語」という壁が問題を少々複雑にしている。
英語のフォントであればキャラクタの種類が少ないのでWebでの配布に何の問題もないのだが日本語はそうはいかない。
キャラクタの種類が比べ物にならないのでフォントデータが巨大になりWebでのリアルタイムな配布に適さないのだ。
そこで日本語のWebFontを提供しているサービスではどこも「フォントのサブセット化」を行なっているようだ。
必要なキャラクターだけを組み込んだ「サブセット」のフォントデータを生成してデータサイズを小さくしようというのである。
今回ソフトバンク・テクノロジーが提供している フォントプラス を試す機会があったので感想を書いてみる。
まず、日本語のWebFontは現在のところ無料で提供されているサービスは存在しないと思われる。(英語であればGoogleWebFontなどがある。)理由はやはり上記の「フォントのサブセット化が必要」な点が大きいのではないかと思う。
フォントプラスではサブセット化の方式やPV数などで料金プランがわかれているようだ。ここではサブセット化の方式に注目してみてみると大きく2つの方式がある。
- スマートライセンス
javascriptでリアルタイムにフォントのサブセットを生成し、フォントプラスのクラウドサーバーからフォントデータを取得する形式。
設置方法が非常に簡単(scriptタグの追加とフォント指定のみ)だが、WebFontが表示されるまでに1~2秒のタイムラグが発生するという問題がある。
先にシステムフォントが表示され、1~2秒後にWebFontに切り替わるという見え方になる。
これはリアルタイムにサブセットを生成しているという仕組み上しょうがない。
- バリューライセンス
事前に必要なフォントのサブセットを生成し、自社のWebサーバーに設置する形で使用する方式。
フォント表示にタイムラグは発生しないが、CMSなど動的なページには向かない。
(更新があるたびにサブセットを作り直す必要が出てくる。)
WebFontを使う箇所が固定文字(ex.ページのタイトルなど)であればバリューライセンスで問題ないのだが、動的なページとなるとやはりスマートライセンスでないと運用がしづらい。
しかしスマートライセンスでの見え方はそのままだとタイムラグがあるのでちょっとかっこわるい。
“スマート”に見せるにはエフェクトなどでタイムラグをごまかすような仕組みを検討しなければいけない。
バラ色の世界が広がるかに見えるWebFontであるが、こと日本語圏のWebでは今のところタイトルなどの一部の文字に部分的に使用するといった限定的な使い方が現実的なところだ。ただ、それだけでもこれまでいちいち画像で作っていた文字などをフォントで表示させられるというのはなかなか嬉しいものである。願わくば無料のサービスが登場して欲しいのだが。。