【发布时间】:2018-07-31 18:25:13
【问题描述】:
我目前正在开发一个嵌入使用 unicode 表情符号字符的对象的项目。问题是,这些 unicode 表情符号字符的显示方式不同,具体取决于我使用的浏览器。例如,Google Chrome 和 Mozilla Firefox 仅显示 unicode emoji 字符的 windows 版本。另一方面,Internet Explorer 11 显示所需的版本(自定义字体)。
图片中的问题:
这是它的外观以及它在 Internet Explorer 11 上的外观(使用自定义字体):
这是它目前在 Google Chrome 和 Mozilla Firefox 上的外观(带有标准 Windows 视觉效果):
我使用的 unicode 表情符号可以在这里找到:link。 我正在使用的是:694 空间上的“热饮”。如您所见,我们识别出一种视觉风格,即 Chrome 和 Firefox 使用的 Windows 风格。
所以,现在我知道 Chrome 和 Firefox 都使用 windows 字体来显示 unicode 表情符号字符。基于此信息,我尝试通过编辑我的 css(确切地说是@fontface)并导入自定义字体来解决此问题。这根本不起作用。在此之后,我发现 Internet Explorer 确实可以正确显示它,而无需导入自定义字体。这使我相信解决方案在于这些浏览器之间的差异。问题是,我不知道是什么导致了这种差异。所以这就是我在这里的原因:
有谁知道是什么导致了显示 unicode 表情符号字符的这种差异?我已经尝试自己解决它,因为我怀疑它们可能不会都支持相同的字体,但如果我看这里:https://www.w3schools.com/css/css3_fonts.asp 似乎这不是问题。
非常感谢任何帮助。
编辑: 经过多次尝试,我有了新的发现。 在 Windows 7 Ultimate 上,它在 Internet Explorer 11 和 Google Chrome 上都显示正确的显示(非 Windows 显示);
在 Windows 10 Enterprise 上,它仅在 Internet Explorer 11 上显示正确的显示(非 Windows 显示)。在 Google Chrome 上,它显示 windows 字体。
那么现在的问题是,导致这种情况的这些 Windows 版本之间有什么区别?
编辑: 它变得更加奇怪。 Windows 7 Ultimate + GoogleChrome:
Windows 7 Ultimate + Internet Explorer:
Windows 7 Ultimate + Mozilla Firefox:
Windows 7 Ultimate 网页与 unicode emoji 的比较:
Windows 10 企业版 + 谷歌浏览器:
Windows 10 企业版 Internet Explorer 11:
Windows 10 企业版 Mozilla Firefox:
Windows 10 Enterprise 网页与 unicode emoji 的比较:
有人知道如何让它们看起来都像 Windows 10 Enterprise Internet Explorer 11 示例吗?
【问题讨论】:
-
嗯,是的,每个平台/供应商/操作系统都有自己的一组表情符号字体...emojipedia.org/hot-beverage如果你想要跨平台的像素完美相同的表示,你应该使用图像(使用一些库来替换带有图像的表情符号字符)或强制使用某些特定的网络字体。
-
不幸的是,我无法使用图像或用图像替换表情符号字符。关于某些特定网络字体的强制,是否有使用黑白 unicode 表情符号的标准网络字体? (如此处所示:emojipedia.org/hot-beverage/https://emojipedia.org/hot-beverage)