[問題] 請問unicode range和font face

看板Web_Design作者 (批踢踢首席執行長)時間11年前 (2014/12/07 14:35), 11年前編輯推噓1(108)
留言9則, 2人參與, 最新討論串1/1
因為網站有支援多國語系 所以可能會顯示不同的語言 例如基本是 英文 另外可以切換為 繁體中文 簡體中文 日文 查了一下可以透過font-face來統一設定各個css的字形 在透過unicode-range來為不同語言定義使用不同的font /* Latin characters 專用 */ @font-face { font-family: MyCustomFont; /* 同樣的 font-family */ unicode-range: U+00-024F; /* Latin, Latin1 Sup., Ext-A, Ext-B */ src: local(Helvetica), /* OS X preferred */ local(Arial); /* Other OS */ } /* 日文假名專用 */ @font-face { font-family: MyCustomFont; /* 同樣的 font-family */ unicode-range: U+3040-30FF; /* Hiragana, Katakana */ src: local(Hiragino Kaku Gothic Pro), /* OS X */ local(MS PGothic); /* Windows Vista+ */ } 但問題出在 1. 請問 U+00-024F 就是涵蓋了ABCD...Z, abcd...z 嗎? 2. 日文好像跟繁中簡中有重疊範圍? 有嘗試加了一組 4E00-9FFF 的給微軟正黑體 但切換到簡中的時候字會一上一下的.. 請問我應該如何設定範圍可以正確的套用三種字形分別給 英文 日文 中文(包括繁簡,還是說這兩種語言也應該區分字形?) 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.194.238.68 ※ 文章網址: http://www.ptt.cc/bbs/Web_Design/M.1417934154.A.29A.html

12/07 14:54, , 1F
1. 對, 半形字母數字的範圍就是舊 ASCII 範圍 U+00-7F
12/07 14:54, 1F
了解 謝謝L大

12/07 14:55, , 2F
2.那塊範圍是所有的相對常用中文字(漢字)的範圍
12/07 14:55, 2F

12/07 14:55, , 3F
所以會有問題大概是字形缺字
12/07 14:55, 3F

12/07 14:56, , 4F
由於包含日文漢字的關係所以碰到日文中間有漢字也會使用
12/07 14:56, 4F

12/07 14:56, , 5F
漢字字形, 所以建議是假名跟漢字設一樣的字形
12/07 14:56, 5F
請問L大 意思是說我給了U+3040-30FF使用MS PGothic 如果日文中遇到漢字 會因為 4E00-9FFF 的給微軟正黑體 而使用正黑體 因而導致看起來怪怪的? 但是目前問題是出在 我css是整個設定 然後網頁若是切到簡中會全是簡體中文 到此時簡體中文卻出現字一上一下的情況@@ 我以為它應該是全套用到微軟正黑體?

12/07 14:57, , 6F
如果要設不一樣的話也要實際測一下會不會看起來很怪
12/07 14:57, 6F

12/07 14:58, , 7F
(說相對常用的意思是已經包含了絕大多數常用中文字了
12/07 14:58, 7F

12/07 14:59, , 8F
只有很少很少在用的那種字才不在這個範圍裡)
12/07 14:59, 8F

12/07 19:44, , 9F
用 html:lang(語系,像en) {...} 分開各種語系再各別指定
12/07 19:44, 9F
多謝M大 我再研究看看這個方法 因為網站是用GWT刻的 不確定可不可行 ※ 編輯: PTTCEO (123.194.238.68), 12/07/2014 23:33:41
文章代碼(AID): #1KW_LAAQ (Web_Design)