8.1でカラー絵文字を表示するサンプルでTranslateColorGlyphRunを使ってグリフベースで書く方法が存在してないのでサンプルを書いた。適当に書いたものなので動かないとは思うけど、使い方は参考になるはず。いうか、Microsoft、TranslateColorGlyphRunを使ったサンプルくらい公開してよ。hell絵文字は昔Emoticonsとか言ってたのにいつの間に世界標準語でemojiと呼ばれるようになったんだが、このフォント仕様のカオスさが面白い。調べることがあるので自分用にまとめてみた。現在主流のプラットフォームだと大体はカラー絵文字をサポートしてるのだが、すべてでサポートする仕様が異なる。どのプラットフォームもOpenTypeに新しいテーブルを追加することでサポートするようになってる。8.1COLRテーブルとCPALテーブルを利用。ため、IE11でもサポートされず。Glyphベースで描画するには、DWRITE_COLOR_GLYPH_RUN使えばいいらしいが。10.7sbixテーブルを利用。そのままPNGが入ってるhttp://typographica.org/typeface-reviews/apple-color-emoji/10.7から追加されたCTFontDrawGlyphsを使うことで描画可能。CGContextShowGlyphsWithAdvancesの使用からCTFontDrawGlyphsに変えることで対応可能。AndroidCBDTテーブルとCBLCテーブルを利用。