如何检测我的网页上是否正确显示Unicode字符?

时间:2011-06-08 22:03:51

标签: javascript html unicode windows-xp

我正试图在网站上使用一个相当深奥的Unicode字符 - 特别是“︙”。据我所知,Windows XP没有附带包含该字符字形的字体 - Virtual PC IE 6测试图像无论如何都不会显示它。

我是否有办法检测角色是否正常显示,以防人们在没有安装Arial Unicode MS的情况下使用Windows XP查看网站?

An answer on a similar question建议将仅包含此字符的元素的宽度与包含不可打印的Unicode字符的元素的宽度进行比较。不幸的是,两者似乎都在浏览器中呈现相同的宽度,以便正确显示我的角色。

4 个答案:

答案 0 :(得分:2)

尝试使用⋮(⋮),这是同一事物的替代字符(垂直省略号)。我不确定为什么有这两个字形,它们略有不同;在我自己的测试中,︙(︙)使用圆圈作为点,而另一个使用正方形。这可能因字体而异。无论如何,你必须将字体大小增加到荒谬的大小以注意差异。

答案 1 :(得分:0)

你想做什么几乎是不可能的,至少不是安全的

相反,您应该明确定义受支持的受众群体,明确说明您将支持的浏览器以及不受支持的浏览器会显示警告。

顺便说一句,请勿针对任何未被您识别的浏览器显示警告,仅针对被识别为不良的浏览器。

您可以添加嵌入字体,但这仅适用于某些浏览器,可能不适用于移动设备。我不建议您使用此类esoteric字符。

一个想法http://www.devslide.com/labs/browser-detection

注意:在上面的文字中,我将浏览器称为浏览器和操作系统的组合。今天大多数浏览器都正确显示Unicode字符,但字体没有,用户将看到框而不是正确的字符。设计良好的网页必须使用客户端计算机上现有的默认字体正确呈现。

答案 2 :(得分:0)

使用嵌入字体。你必须有4个版本左右的字体文件才能在所有浏览器中使用,但它适用于IE6 Up和所有现代浏览器,包括iOS移动设备..

http://www.fontsquirrel.com/fontface/generator

您可以上传TTF字体并将整个软件包作为下载文件返回 - 所需的所有字体文件和CSS以及要测试的示例页面。我还没有找到一个不起作用的浏览器(包括当前的1-2版本,具体取决于浏览器)。

答案 3 :(得分:-1)

我不确定您是否需要担心这个问题...根据Microsoft网站的说法,Windows XP会自动安装Arial Unicode MS。

http://office.microsoft.com/en-us/visio-help/install-the-universal-font-for-unicode-HP005255840.aspx

相关问题