0

我想知道多语言网站和客户端PC上安装的字体之间的关系。

假设我有一个多语言网站,其中包含以下语言的资源:英语(英国)、瑞典语(瑞典)和印地语(印度)等。

当客户从不同的地理区域打开此网站并且在他们的 PC 上没有某些字体(瑞典语、印地语)时。现在我想知道

  1. 网站文本是否会以所有语言显示?
  2. 对于多语言网站的可见性,操作系统、浏览器和字体之间是否存在任何关系?
  3. 在什么可能的情况下,可以看到带有扭曲文本的网站?
4

1 回答 1

0

浏览器通过 HTTP 变量 HTTP_ACCEPT_LANGUAGE 告诉服务器它正在接受哪些语言,服务器通过该变量检索

Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"]

服务器可以相应地调整其输出,或忽略该变量。

除此之外,您正在寻找的关系完全取决于浏览器的实现:

  • 从收到的 HTTP/HTML 内容中提取语言设置 (*)

  • 通常语言被映射到一个 Unicode 范围

  • 从将 Unicode 范围映射到(首选)字体的浏览器/用户设置中查找字体

  • 使用字体输出文本(通过 OS API)

(*) HTML 标记可能具有覆盖 HTML/HTTP 语言的 lang="language code" 属性

但是,操作系统可能会发现某些字符没有被所选字体覆盖,并且可能会选择备用字体(请参阅UniScribe 词汇表和 Sorting It All Out 博客herehere

IMO 如果浏览器向服务器发送接受语言,则应该允许您假设浏览器知道如何正确显示内容。

于 2009-07-31T08:05:17.507 回答