Toshi
Omagari

BubbleKern

名前:BubbleKern
種類:GlyphsAppプラグイン
公開年:2015
GitHubで見る

タイポグラフィには2つのスペーシングの調整があります。1つはトラッキングで、各文字の間に挿入する全体的なものですが、欧米でもこれがカーニングと呼ばれているケースが目立ちます。もう1つはカーニングといって、LとTの間などの例外的に広いスペースに対して適用する局地的なものです。カーニングは書体デザイナーが時間をかけて用意するものであり、我々は常により効率的で早くできる方法を模索しています。

しかし、そもそもカーニングはどうして必要になったのでしょうか? これは金属活字の時代にボディが長方形だったこと、これがそのままデジタル時代に受け継がれたことが言えると思います。文字のアキの形として長方形は大雑把で、上に説明したように時として大きすぎたりギリギリすぎる字間が発生することがあり、これを調整しなければいけません。しかしアキの形が長方形でなかったら、そもそもこのような問題は発生しないのではないでしょうか? 勿論こんな疑問を言い出したのは私が最初ではなく、Calamus Type Artという昔の書体デザインソフトや、Microsoftの数学組版用書体であるCambria Mathに前例が見られます。

さて私の作ったBubbleKernですが、これは同様のアプローチでカーニングを捉えたGlyphsAppのプラグインとスクリプト集です。デザイナーは各字間にカーニング値を設定する代わりに、文字の周りにアキの形のアウトラインを描きます(これをバブルと呼んでいます)。BubbleKernスクリプトがこの形を解析し、バブル同士が接触するまでの距離をカーニング値として自動的に設定します。

使ってみての体感としては、8〜9割方はバブルで設定でき、残りを手動で設定するような感じです。カーニングの時間を節約できるかどうか期待していましたが、どうやらあまり短縮にはならないようです。しかしスペーシングについてこれまでの考え方、教えられ方を大きく考え直させるきっかけとなりました。それにバブル自体は対応力が高く、アウトラインベースなためバリアブルフォントにも対応しやすく、フォントのフォーマットに内蔵されれば違うフォント間でのカーニングが可能になったり、アラビア文字などデザインによっては文字の進みが一過性でなく従来のカーニングが困難なケースにも対応しやすいので、将来的には正式に仕様となってほしいです(一度この話は持ち上がって断ち消えになってますが笑)。

英語ではありますが、ATypIの講演動画でより詳細をご覧いただけます。