Unicode:多语言网站(asp.net)与浏览器字体和操作系统之间的关系

时间:2009-07-31 07:37:58

标签: asp.net multilingual

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

sUPPOSE我有一个多语种网站,其资源包括以下语言英语(英国),瑞典语(瑞典语)和印度语(印度语)等。

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

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

1 个答案:

答案 0 :(得分:0)

浏览器通过HTTP变量HTTP_ACCEPT_LANGUAGE告诉服务器它接受哪种语言,服务器通过

检索
Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"]

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

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

  • 从收到的HTTP / HTML内容(*)

  • 中提取语言设置
  • 通常将语言映射到Unicode范围

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

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

(*)HTML标签可能有lang =“语言代码”属性,该属性会覆盖HTML / HTTP语言

然而,操作系统可能会发现某些字符未被所选字体覆盖,并且可能会选择后备字体(请参阅UniScribe glossary和排序全部博客herehere

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