Emoji support on Windows

Unlike Mac, emoji support on Windows is not a feature which you can get easily. You have to write special code, etc. Also, depending on what API set your projects use, it can be supported or not.

So, here I’d like to summarize emoji support status of quo on Windows.

Script and Font Support in Windows

  • Win 7 : Segoe UI Symbol font was added to support many ( not all ) symbols encoded in Unicode. ( supports very limited set of emoji)
  • Win 8 : Segoe UI Symbols was updated in Win 8 to support completely ( but in B/W only. And I also personally saw that some emoticons are not displayed.)
  • Win 8.1 : Segoe UI Emoji font is added. Color font support.

 What’s new in DirectWrite in Windows 8.1

  • Starting in Windows 8.1, DirectWrite supports color fonts.
  • Direct2D uses DirectWrite with added enum value D2D1_DRAW_TEXT_OPTIONS_ENABLE_COLOR_FONT

What’s new in DirectWite in Window 8

  • supports the use of emoji in apps. (B/W) Previous versions of DirectWrite, presented with a missing glyph box if you tried to render an emoji ideograph. Starting with Windows 8, DirectWrite supports the Unicode codeblock associated with emoji, so if your app uses the Unicode standard codepoints for emoji it displays the appropriate glyphs.

Why on Windows the support of color emoji is not so drop-in is probably, MS approached color emoji differently than Apple & Google. Apple & Google’s approach is to make a font to point to a bitmap images in PNG, etc. However, MS approach is to introduce ‘layer’ to the font itself put the information directly.

Win32 Listview doesn’t look to support color emoji. Others in .NET space and WPF may support it. ( WPF is.. deprecated.. I’m sorry about people’s effort at one of my previous companies to switch to WPF and Silverlight. )

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: