笔划输入法如ZTA4的汉字笔划库是如何实现的?

fonx 2007-10-03 09:49:42
ZT A4 的笔划输入法应该说已经很普及了,我很奇怪,这么小的一个软件(400K左右的CAB文件),是如何处理几万个汉字(GBK)的笔划信息的?难道是做了一个汉字笔划列表吗?还是通过处理汉字的True Type字体信息,来得出每个汉字的笔划顺序的?

请问:

1. 有没有一个汉字笔划分解数据可供下载,笔划只有5个:横竖撇点折,最好是包含所有Unicode汉字的;
2. 如果1没有答案,请问如何通过分析汉字的字体文件,来抽取其笔划信息?我应该调用那些函数?

因是新手,分值不多,请见谅。
...全文
539 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
2021‘someday 2008-11-03
  • 打赏
  • 举报
回复

顶!

我也顺便打个广告,本人也有支持ESRI ARCGIS的.shp文件的地图的Windows mobile 5.0/6.0手机GIS地图软件----移动GIS(MobileGIS),PC端的服务软件----移动GIS服务平台(MobileGISServer),可成套出售,可以完成以下功能:
1,通过GPRS上网连接后台服务端程序来实时传输在外工作的数据到后台数据库!

2,可以实时发回PDA的GPS信息,在后台地图上直接定位PDA用户的位置,也可以下发PDA的经纬度信息让PDA用户定位和跟踪其它PDA用户,了解自己与其它PDA的位置关系,起到定位和跟踪的作用!

3,可以发回PDA当前所在地名如在天河城附近等,实现在外面工作就知道在何时何地上班打卡的效果,同时可以在后台为相应的PDA用户设置固定时长返回一次当前位置的GPS信息确保对相应PDA用户的定位,跟踪与监控!

4,移动GIS服务平台可以对PDA用户进行登记,注销等管理,在移动GIS服务平台登记的PDA用户才可登陆此服务器,依据IMSI和IMEI号来进行登陆验证,安全可靠,

5,可以对在外面工作的PDA用户进行任务指派和任务管理如
PDA号码:13800138000
任务名称:测试线路
任务说明:主要是在天河北路一带的地下管线进行检测!

6,(此功能为信息采集的核心功能)用户可自行设置需要采集信息的对象及其属性,指派给指定的PDA用户,如测试线路的属性模板:
//0-编辑属性(可多个) ; 1-下拉属性(可多个) ; 2-选择属性(可多个) ; 3-大文本编辑框(可以没有此属性,但有此属性时只能有一个) ; 4-列表属性(可以没有此属性,但有此属性时只能有一个)(属性0+属性1+属性2/2+属性2%2) <=28
name,名称,0,;beproject,所属项目,0,;type,类型,1,0:小-1:中-2:大;complete,完成,2,;remark,备注,3,;listbox,设备表,4,

7,可以实时上传文件到后台服务器,实时下载后台服务器的文件和实时更新PDA上客户端的系统!

8,可以实时采集和传输图像信息!

跟据您的需要,还可以增加其它功能!

QQ:546046182
dyw 2007-10-04
  • 打赏
  • 举报
回复
ZT公司的机密,如果大家都知道,那个公司就快不行了。
fonx 2007-10-04
  • 打赏
  • 举报
回复
回帖达到5个就散分。大家快呀。

另:我参照以下两个资料研究了IFELanguage的MSIME语言接口:
[1] http://topic.csdn.net/t/20020917/14/1030590.html
[2] http://tech.ddvip.com/2007-09/118923427533812.html

在此下载MS最新的MSIME.h:
[3] http://download.microsoft.com/download/6/0/9/60908e9e-d2c1-47db-98f6-216af76a235f/msime.h
MSDN关于IFELanguage的最新文档:
[4] http://msdn2.microsoft.com/en-us/library/ms970145.aspx

上面两位作者都提到,微软提供了分析汉字笔划的函数:
“注意当该参数赋值为FELANG_CMODE_RADICAL时就能获得笔划字根信息了!”[1]
“类里仅仅实现了GetJMorphResult的封装,大家可以根据自己的需要自己扩充一下。貌似可以取得汉字的笔画,”[2]

但是注意到[1]发表的时间是2002年,当时微软可能提供了 GetMorphResult 函数,但是现在新版的文档[4]中已经找不到了,取而代之的是一个 GetJMorphResult 函数,即专门针对日语的,而它并不能取得汉字的笔划、部首等信息,参数FELANG_CMODE_RADICAL仅能把日语字母转换为汉字(所谓的RADICAL在此指的是和假名相区别的汉字)。

我试验了一下,IFELanguage能够实现以下转换:

1. 汉字→平假名(偶尔夹杂汉字) GetPhonetic 函数,CLASSID 设为MSIME.Japan
2. 汉字→拼音(不能识别多音字) GetJMorphResult 函数,CLASSID 设为 MSIME.China
3. 平假名→汉字 GetJMorphResult 函数,CLASSID 设为 MSIME.Japan

至于系统字符映射表是如何获取笔划(Strock)、部首(Radical)信息的,我想肯定有内部的API函数,但是现在尚未提供公开的接口。

7,657

社区成员

发帖
与我相关
我的任务
社区描述
Windows Phone是微软发布的一款手机操作系统,它将微软旗下的Xbox LIVE游戏、Zune音乐与独特的视频体验整合至手机中。
社区管理员
  • Windows客户端开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧