![网页可以显示unicode字符,但记事本却不显示,为什么?](https://linux22.com/image/1302413/%E7%BD%91%E9%A1%B5%E5%8F%AF%E4%BB%A5%E6%98%BE%E7%A4%BAunicode%E5%AD%97%E7%AC%A6%EF%BC%8C%E4%BD%86%E8%AE%B0%E4%BA%8B%E6%9C%AC%E5%8D%B4%E4%B8%8D%E6%98%BE%E7%A4%BA%EF%BC%8C%E4%B8%BA%E4%BB%80%E4%B9%88%EF%BC%9F.png)
我正在运行 Windows XP。虽然记事本、Office 等都显示方框,但 Firefox 中显示的是正确文本。如果系统没有某种语言的字体,Web 浏览器如何设法绕过并显示该脚本?这是怎么做到的?我对 Unicode 还不熟悉,这真的让我很困惑。
答案1
当浏览器以 HTML 或浏览器指定的字体显示文本时,可能会遇到该字体中不存在的字符。
例如,当网页的编码为 UTF-8 时尤其如此,因为没有一种字体包含 Unicode 定义的大约一百万个字符。
在过去的几十年中,浏览器习惯于显示替代字符(例如空方块或菱形)来代替该字符。
一段时间以来,大多数浏览器在需要显示当前字体中没有的字符时,都会有效地搜索计算机中安装的所有字体,直到找到包含所需字符的字体。这意味着浏览器将字符显示为空方块的可能性大大降低。
微软较新版本的应用程序(如 Notepad)现在也有类似功能。这些应用程序现在使用系统库来搜索当前字体中不可用的字符。