概要 ほとんどの自然言語で使われる文字では、文字の字形によってのみ意味を表し、その文字を何かに書くときに使われる色は独立した概念である 。強調したい部分のみを太字や袋文字(白抜き)にしたり、警告の意味で白地に赤色の文字または黄色地に黒色の文字を使ったり、といった装飾表現がなされることはあるが、たとえ文章の途中で文字の色を変えるとしても、基本的に1つの文字ごとに1つの色が使われる。ロゴのように特別にデザインされたものでは1つの文字に複数の色を使うこともあるが、一般的な文書の作成および印刷に使われる書体(フォント)は、活版印刷のようなアナログ時代から単色の字形情報のみを管理し、インクの色を変えることによって個々の文字の色を変えるだけである。

コンピュータで使われるデジタルフォントの場合も、通常は字形情報(グリフ)をモノクロあるいはグレースケールのビットマップ画像として保持するビットマップフォントビットマップフォント | Fontworksまたはベジェ曲線やスプライン曲線といった輪郭線の制御点のベクトルデータOpenTypeフォントとは? – Homeとして保持するアウトラインフォントであり、文字の色はリッチテキストのような文書データ側でテキストに対する装飾情報のひとつとして管理され、描画時にマスクとして使用される。

一方PCでは、TrueTypeフォントやOpenTypeフォントでは色をつける仕様がないため、色をつけることができなかった(古くFONフォーマットではカラー規格があった)。

Appleは、iOS(iPhone・iPad等)やmacOSでカラー絵文字を表現できるようにするために、TrueTypeフォントの内部にPNG形式のビットマップ画像データを埋め込む方法でカラー絵文字を実現した(:en:Apple Color Emoji)Extended Bitmaps - TrueType Reference Manual - Apple Developer。この独自拡張仕様(sbix)はのちにOpenType 1.8の仕様にも取り込まれたOpenType specification (OpenType 1.8) - Typography | Microsoft LearnSBIX - Standard Bitmap Graphics Table (OpenType 1.8) - Typography | Microsoft Learn。

マイクロソフトは、複数のグリフにそれぞれ色をつけて重ね合わせる方法(COLR/CPAL)でカラーフォント(カラー絵文字)を実装した。Windows 8.1の時点では「Segoe UI Emoji」フォントが該当するOpenTypeカラーフォント:Windows Insider用語解説 - @ITOpenTypeカラーフォントの標準化(キヤノン株式会社 藤沢淳) - SlideShare。その後、Windows 10 Anniversary Update (バージョン1607、ビルド14393) でSVG方式や埋め込みビットマップ方式(CBDT/CBLCおよびsbix)にも対応したColor font support - Win32 apps | Microsoft Learn。

Firefox OSでは、5つのフォントでカラー絵文字を実装している。GitHubのページの各フォルダから5種のTTFファイルをダウンロードでき、これは絵文字の種類毎に分割されているため、1つのファイルだけではごく一部しか表示できないFirefoxOS-Colored-Emoji-Font-Tool。

W3CやMozillaなどでは、SVGをOpenTypeフォントにそのまま入れる方法でカラー文字を実装しているSVGOpenTypeFonts - Mozilla wikiSVG Glyphs in OpenType。Twitter Color Emoji、EmojiOne Color、OpenMoji、GeckoEmojiやSoccerといったフォントがダウンロード可能Twitter Color EmojiEmojiOne ColorSVG Glyphs in OpenType SpecificationOpenMoji。

woffはカラーフォントに対応しており、Windows 8.1からIE11上でカラーフォントがサポートされた。

脚注

注釈

出典