掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1573|回复: 7

[经验交流] 全面支持Unicode

[复制链接]

该用户从未签到

发表于 2009-2-16 15:52:56 | 显示全部楼层 |阅读模式
Unicode中有一種特殊字符叫surrogate pair(代理對)。如果是utf16編碼,通常情況下,一個字符就佔用兩個字節。可是兩個字節的容量有限,只能承載Basic multilingual Plane内的字符(BMP--基礎多語言平面),凡65,536個。而實際上,截止於unicode5.0, 已編碼字符已達到了102,012個。光是cjkv(中日韓越)的漢字已採錄的就在7萬以上,兩個字節的編碼肯定是不夠用的。2 {  J+ X" ~% D( f

  n. x: z# r2 |# Y. K8 O$ Cunicode的 cjkv字符最主要的有三組,cjkv unified ideographes (在BMP内,20,924個)、cjkv unified ideographes extension A (也在BMP内,6,582個)和 extension B(在第2平面,42,711個)。擴展B集的字符既然不在BMP内,就要用到連續兩個雙字符編碼的代理對來表示一個漢字(4bytes for 1 character)。7 q: u/ g3 ], u) O
" a7 _* I5 J4 p) q
本論壇「康熙字典詞庫」中就有大量的擴展A/B集的字符。據我的觀查,mdict pc 版對擴展AB集的漢字都能正是顯示,但是它的輸入欄卻只接受基本字集裏的漢字。很怪異的是,擴展A集的漢字同樣也在BMP中(兩字節一字)居然也不能識別。" h& [" V1 G- @  ~$ q# r
8 G( U% J$ [$ t" Z
相反如果打開fuzzy查詢的對話窗,則所有3集中的漢字都能正常輸入。. m3 ~2 l" s7 C; V' ]4 K6 \
  k) Y, m6 {6 |0 ?/ q. e& `# d
我猜,可能原輸入欄設定的內碼是GBK,或者本地內碼(Window xp內碼雖然是utf16le但文件系統卻用GBK/BIG5),而詞庫內部卻用的是unicode,於是兩者有些參差。9 {' b" }* d: F8 k# G# Q4 C
( `, H* U# I' l5 }' O  P) N

4 q  e$ W+ S& d" `+ H# `1 z' S. \$ C& x$ n- X
7 H+ Z) v" A  |9 x
[ 本帖最后由 blankego 于 2009-2-16 15:57 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

该用户从未签到

发表于 2009-2-16 16:32:48 | 显示全部楼层

回复 1楼 blankego 的帖子

:loveliness: oo

该用户从未签到

发表于 2009-2-16 17:24:17 | 显示全部楼层
设计时输入框的属性设置错了,导致很多字符输入不进去。3.0 RC1中已经改了。有兴趣的可以到QQ群来试一下内测版本。

该用户从未签到

 楼主| 发表于 2009-2-16 19:13:06 | 显示全部楼层

回复 3楼 rayman 的帖子

rayman君已經知道了,我這個報告成了馬後炮了。:lol
. q. Q! X- t, \, X, v: i* d3.0版很值得期待呀
clylzy 该用户已被删除
发表于 2009-2-17 00:53:08 | 显示全部楼层
Rayman你的QQ群号是多少啊?我想参加内测,学习需要MDict每天必用,

该用户从未签到

发表于 2009-2-17 09:04:23 | 显示全部楼层
群号是: 11731311, 加入时注明"Mdict讨论"

该用户从未签到

发表于 2010-4-9 17:03:52 | 显示全部楼层
今天也遇到了同样的问题。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

该用户从未签到

发表于 2010-4-10 18:10:36 | 显示全部楼层
试试PC版的1.0 RC1...
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

小黑屋|手机版|Archiver|PDAWIKI |网站地图

GMT+8, 2025-4-27 16:12 , Processed in 0.022549 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表