MozTW 討論區 https://forum.moztw.org/ |
|
Firefox 3.0 beta 5 對 Unicode 3.x 支援不佳 https://forum.moztw.org/viewtopic.php?f=18&t=22214 |
第 1 頁 (共 2 頁) |
發表人: | 老刀 [ 2008-04-21, 15:25 ] |
文章主題 : | Firefox 3.0 beta 5 對 Unicode 3.x 支援不佳 |
請參考本人的部落格文章「Firefox 3.0 beta 的 Unicode 試驗無夠合格」一文。本人撰寫台文網頁需經常使用 Unicode 範圍 CJK 字集,日前撰文時發現 Firefox 3.0 beta 5 對 Unicode 3.x 的相容性尚不如 2.0.0.14。詳如下方的螢幕擷取畫面: ![]() Firefox 2.0.0.14 ![]() Firefox 3.0 beta 5 由上圖可知 Firefox 3.0 beta 5 無法顯示「辶日」,它屬於 Unicode 3.1 字集範圍。 另外,Firefox 無論是 2.x 或 3.x 皆無法正確顯示 blogger/blogspot 文章標題上的 Unicode 3.1 文字(請參見這篇文章的標題),原先我認為可能是 blogger/blogspot 本身的問題,但換用 Safari 3.1 卻可以完全顯示正常文字,故研判問題出在 Firefox 的可能性比較大。 希望正式版的 Firefox 3.0 正式版可以解決這個問題。 |
發表人: | coolcd [ 2008-04-21, 16:15 ] |
文章主題 : | |
你看得到我這裡輸入的「 |
發表人: | lwb [ 2008-04-21, 16:56 ] |
文章主題 : | |
我覺得是網頁寫錯了(blogspot的bug?),在有問題的網頁中網頁原始碼如下(為了能夠在網頁中顯示,#已經被取代為全形的#): 代碼: 尤其是��迌物仔 那個無法顯示的兩個Code是U+D861與U+DC68,屬於Unicode Surrogates的範圍,在使用編碼表示Unicode時,根據Unicode 5.0的標準這樣是不正確的,以UTF-8寫成的網頁,應該不必要使用HTML Numeric character references(例如coolcd上面的例子應該是正確的寫法),如果一定要用Numeric character references,則應該要轉換成Unicode scalar value,也就是U+28468,寫成: 代碼: 尤其是𨑨迌物仔 或是轉換成十進位: 代碼: 尤其是𨑨迌物仔
才對,能夠顯示應該算是瀏覽器能夠容錯,不能顯示不應該算是不支援Unicode。不過我也不算這方面的專家,所以請多指教。 修改:coolcd前一篇的那個字看得到,但是要有支援部份Unicode CJK Extension B的字型才可以。 |
發表人: | coolcd [ 2008-04-21, 19:52 ] |
文章主題 : | |
lwb 寫: 我覺得是網頁寫錯了(blogspot的bug?)
因為在 Fx 2.0.0.X 是正常的,所以我覺得比較可能是 Fx 3 對 blogspot 貼文的 script 的解讀有變所導致的結果,應該跟 blogspot 回報一下。不過也有可能是 Fx 3 解讀某段 script 的 bug。 另外,老刀提到的另一個問題,就是 Fx 無法在標題顯示 CJK Ideograph ExtB 的文字,我這邊也是這樣,我想這應該是 Fx 的 bug 吧,不知其他人看法如何?如果是的話最好到 bugzilla 回報。 |
發表人: | lwb [ 2008-04-21, 20:52 ] |
文章主題 : | |
coolcd 寫: lwb 寫: 我覺得是網頁寫錯了(blogspot的bug?) 因為在 Fx 2.0.0.X 是正常的,所以我覺得比較可能是 Fx 3 對 blogspot 貼文的 script 的解讀有變所導致的結果,應該跟 blogspot 回報一下。不過也有可能是 Fx 3 解讀某段 script 的 bug。 看起來Fx2與Fx3對Numeric character references的解讀方法不同了,現在變得不允許Unicode Surrogates,不過因為在標準的UTF-8/UTF-32中也是不允許Surrogate pair被拆散以免造成字串比較的模糊,所以不支援似乎也有理? coolcd 寫: 另外,老刀提到的另一個問題,就是 Fx 無法在標題顯示 CJK Ideograph ExtB 的文字,我這邊也是這樣,我想這應該是 Fx 的 bug 吧,不知其他人看法如何?如果是的話最好到 bugzilla 回報。
看網頁原始碼可以看得到,這兩個是同一個問題,blogspot用了不正確的編碼,所以大於U+FFFF的字碼都有以上的問題,但是奇怪的是,我在blog的張貼意見頁面上貼文的時候才注意到不是所有blogger頁面都是錯的,這問題也許應該找blogspot/blogger修才對。 |
發表人: | coolcd [ 2008-04-21, 22:45 ] |
文章主題 : | |
lwb 寫: 看起來Fx2與Fx3對Numeric character references的解讀方法不同了,現在變得不允許Unicode Surrogates,不過因為在標準的UTF-8/UTF-32中也是不允許Surrogate pair被拆散以免造成字串比較的模糊,所以不支援似乎也有理?
感謝你提供的資料,應該這才是 |
發表人: | Dark Shenada [ 2008-04-21, 23:09 ] |
文章主題 : | |
coolcd 寫: lwb 寫: coolcd 寫: 另外,老刀提到的另一個問題,就是 Fx 無法在標題顯示 CJK Ideograph ExtB 的文字,我這邊也是這樣,我想這應該是 Fx 的 bug 吧,不知其他人看法如何?如果是的話最好到 bugzilla 回報。 看網頁原始碼可以看得到,這兩個是同一個問題,blogspot用了不正確的編碼,所以大於U+FFFF的字碼都有以上的問題,但是奇怪的是,我在blog的張貼意見頁面上貼文的時候才注意到不是所有blogger頁面都是錯的,這問題也許應該找blogspot/blogger修才對。 關於這個問題,我是自己用本機的網頁測的,你可以在任意一個網頁的標題中加入 BMP 以外的字元就可以重現這個問題,這看起來像是 Bug 404856。 是類似這個問題嗎 ? http://forum.moztw.org/viewtopic.php?t=22183&highlight=%E5%85%A8%E5%AD%97%E5%BA%AB%E4%B8%80%E7%9B%B4%E4%BB%A5%E4%BE%86%E5%9C%A8+big5 有人要測看看Linux下是否有相同問題 ? |
發表人: | coolcd [ 2008-04-21, 23:24 ] |
文章主題 : | |
Dark Shenada 寫: 是類似這個問題嗎 ?
http://forum.moztw.org/viewtopic.php?t=22183&highlight=%E5%85%A8%E5%AD%97%E5%BA%AB%E4%B8%80%E7%9B%B4%E4%BB%A5%E4%BE%86%E5%9C%A8+big5 有人要測看看Linux下是否有相同問題 ? 其實那一篇我看得模模糊糊的不太懂。 ![]() 不過我想應該不一樣吧,因為我測的網頁是 utf8 編碼,且是在 Linux zh-TW.UTF-8 的環境下測的,應該跟 big5 造字區搭不上關係。 |
發表人: | twu2 [ 2008-04-22, 00:19 ] |
文章主題 : | |
http://isthisthingon.org/unicode/index. ... lyph=28468 如果認為是 firefox 3 不能顯示某些字的話 (其實我會認為是本身的系統字型有問題可能性比較大, 不過樓主說在 fx2 上頭是正常的, 這就很奇怪), 可以到這兒試看看. 至少我在 fx3 上頭看起來都很正常, 顯示在標題上頭也是正常的. |
發表人: | 老刀 [ 2008-04-22, 10:29 ] |
文章主題 : | |
剛才在 Firefox 裡檢視網頁原始碼,確實 blogger/blogspot 是以 &#55393;&#56424; 表示「辶日」這字。另外,我也發現 blogger/blogspot 文章標題是以 <h3> 標籤顯示;而 Firefox 2.0.0.14 可以顯示本文中的 Unicode 字,但同樣的字在 <h3> 標籤中卻又無法顯示,這也是很奇怪的事。 [b][color=red]事後補充:剛才我又測試以 &#x28468; 代替我 blogger/blogspot 內文及標題的「 |
發表人: | 翔風 [ 2008-04-23, 05:50 ] |
文章主題 : | |
其實還涉及一個比較隱蔽的Server端問題——包括MySQL 5在內的以前版本,不支援4字節長的UTF-8編碼(使用UTF-8 Character Sets and Collations[?]),所以如果需要使用4字節長的UTF-8編碼就要轉成NCR。 但是blogspot的Server是否用MySQL,是否能正確將UTF-16「Unicode Surrogates」的對應UTF-8編碼正確指回去就還是值得疑問。 而fx3標題問題嘛,要是在WIndows平台上出現的話,就只能說是Fx沒有使用W系(支援Unicode)的API了…… |
發表人: | legnaleurc [ 2008-04-23, 09:55 ] |
文章主題 : | |
Windows的程式應該都會用tchar.h來達成W和A的轉換 應該是Unicode處理方式有差吧 就算如此Windows的locale還是很討厭就是了 |
發表人: | 翔風 [ 2008-04-23, 10:39 ] |
文章主題 : | |
legnaleurc 寫: Windows的程式應該都會用tchar.h來達成W和A的轉換 問題就在於要跨平臺開發的時,Windows那部分就偏偏給忽略掉這些細節設定,而且往往不用Windows API,達不到原生Windows程式的要求……
應該是Unicode處理方式有差吧 就算如此Windows的locale還是很討厭就是了 結果反而Windows版本就不支援Unicode了…… MPlayer在Windows上不支援讀取Unicode檔案名的檔案就是最好的證明。 所以我等Firefox2才轉用的…… 不過好像是為了支援Windows 9x或者兼容性而大量保留使用非Unicode的代碼…… |
發表人: | legnaleurc [ 2008-04-23, 14:25 ] |
文章主題 : | |
翔風 寫: 問題就在於要跨平臺開發的時,Windows那部分就偏偏給忽略掉這些細節設定,而且往往不用Windows API,達不到原生Windows程式的要求……
結果反而Windows版本就不支援Unicode了…… MPlayer在Windows上不支援讀取Unicode檔案名的檔案就是最好的證明。 所以我等Firefox2才轉用的…… 不過好像是為了支援Windows 9x或者兼容性而大量保留使用非Unicode的代碼…… Well...那也有可能是為了相容Visual Studio系統以外的Compiler(比方說MinGW)而不使用吧 目前MinGW的wide character stream沒有port出來 WinAPI也沒有完整port 之前在寫跨平台的程式時也在Unicode上卡很久 |
發表人: | 某A [ 2008-04-23, 18:00 ] |
文章主題 : | |
老刀 寫: 此外,除了先前提到我利用 Safari 3.1 檢視網頁沒有問題之外,方才我再以少用的 Internet Explorer 7 檢視結果也是完全正常。看來 Firefox 的 Unicode 文字顯示策略,似有配合「小修」的必要。
聽起來應該是 Fx3 的問題才是… Fx 對於 Unicode 的文字支援一直都很有進步的空間。 BTW,可以問一下老刀你的文章是否需要使用什麼特殊的輸入法嗎? |
第 1 頁 (共 2 頁) | 所有顯示的時間為 UTC + 8 小時 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |