2012-06-25 107 views
-4

我正在使用多語言網站。我對漢字的顏色有問題。我的文字顏色是#333333,但中文字符比西方字符顯得更黑。我的內容來自數據庫。漢字編碼

我想用Javascript/jQuery來做。該腳本使用.fromCharCode()函數從段落中檢測Unicode。但是what I read是該函數需要一個整數,中文字符的Unicode不是整數。這應該是我的功能不起作用的原因。

編輯

下面是一個圖片從我得到了什麼:

http://tinypic.com/r/2s94lz6/6

我的功能來檢查的Unicode:

if($('#container p').fromCharCode(4E00)){ 
    alert('Chinese'); 
} 

任何幫助嗎?

+6

如果unicode的值不是整數......它們是什麼?他們肯定看起來像整數。 – Pointy

+0

你可以發佈頁面或測試頁嗎? – kei

+0

你的代碼在哪裏?你的演示在哪裏?如果我們看不到任何東西,我們該怎麼辦? – Sparky

回答

2

該屏幕截圖顯示不同的字符已從不同的字體中獲取。當主字體不包含所有相關字符時,通常會發生這種情況。所以可能性是你試圖解決錯誤的問題。也許你應該考慮製作一個適合內容中出現的所有角色的字體建議。

代碼片段有幾種出錯的方式。例如,4E00應該是0x4E00。即使這樣,你也只會檢查單個字符。

您需要發佈完整的代碼或URL或兩者,以獲得更多建設性幫助。

+0

截圖是具有相同字體的相同頁面。 當你說字體不包含字符時,你是對的。我使用的字體沒有繪製中文字符。 我只是把一個值作爲初始測試。我把0x4E00,仍然給我錯誤。該firbug告訴$(「#容器p」).CharCod不是一個函數。 謝謝這是有幫助的 – peterK

+0

特別是,你有一個日本的無字體(可能是Meiryo)回落到漢字的中文書籍字體,這是日文不使用的。將文檔標記爲中文('lang =「zh」'),然後嘗試在'font-family'中設置常用中文字體。 – bobince

1

您的問題是您正在爲繁體中文設計的字體顯示簡體中文。因此,當顯示引擎擊中一個簡化的字符(因此不是Traditional字體)時,它將採用默認的簡化字體並使用它。然後它反轉回到傳統字體。因此不合時宜的樣子。

您需要研究什麼是最常見的簡體中文字體(或字體系列),並專門用於簡體中文文本。像Heiti TC和Heiti SC一樣。