【发布时间】:2014-11-17 09:52:01
【问题描述】:
我正在使用 MFC CListctrl 开发一个桌面应用程序,使用 Unicode 构建。
listctrl可以正确显示!@#$%︿&*(), 但不是表情符号☔和????。
这是一个“虚拟 listctrl”,lvItem.pszText 似乎在内存中正确地保存了 UNICODE“26 14”的 ☔,但显示不正确。
我在 Windows 7 上使用 Visual Studio 2012。 任何想法将不胜感激。 谢谢!
[编辑 20140929]
感谢 Werner Henze,我发现“Segoe UI Symbol”可以在 Windows 7 中正确显示表情符号 http://www.istartedsomething.com/20120818/microsoft-backports-windows-8-emoji-for-segoe-ui-symbol-to-windows-7/
Microsoft KB2729094 titled “An update for the Segoe UI symbol font in Windows 7 and in Windows Server 2008 R2 is available” is presumed to be made available through Windows Update soon.
但是“Segoe UI 符号”似乎在韩语字符上失败(正确显示为“Segoe UI”)。
【问题讨论】:
-
Emoji 需要 DirectWrite,MFC 不包装它。 MFC 非常卡在 user32 上。它没有与我知道的任何桌面类库集成。
-
DirectWrite 可以用在自绘列表框中吗? (我不明白为什么它可能不会,但总是更安全地问????。)
-
这在技术上当然是可行的。但是这种基于投诉的编程、程序员必须学习 COM、QA 为不一致的文本渲染编写错误报告以及用户抱怨廉价显示器上文本的可读性会破坏乐趣。
标签: visual-studio-2012 mfc emoji clistctrl