汉字 base-256 方案

众所周知,Base64是一种基于64个可打印字符来表示二进制数据的表示方法
但是 base64 的很多字符还是容易混淆,而且64进制还是比较不够用……总之我就是想定一个新的方案用来记录二进制数据,并且使用方块字。

理想结果希望能达到两条其一这些方块字易于区分,标准是打印出来的数据再用机器进行字符识别能完全无误,进一步的要求是各种常用印刷字体和手写均能无误辨认;其二完全能在除 Unicode 外其他主要的包含汉字的字符集(比如 GB 2312、Big5、JIS X 0208)找到,或者能简单替换为其他字。(因为不确定除了这三个字符集还有哪些是需要考虑的,所以暂说“主要”)

这里说的“简单替换”是指,比如“黄”和“黃”是被认为同一个字而可以互换的;“黑”和“黒”也是如此。但“一”和“壹”、“岁”和“歲”就不能互换,因为变化太大;而“艺”“芸”“藝”、“沉”“沈”“瀋”之类问题更大就更不行了(可以特殊考虑)。如果出现其他字符集不存在也不存在简单替换的字就只能专门指定替代字。

现在暂时使用代日韵目千字文的简化字的 base256 0.1版(其中有“絜”归并为“洁”)(这个意思是可能会产生多个 base256 方案:繁字版、日本简化字版、包含其他符号版、笔画最少字版之类,也不一定会再使用千字文为原型)

base256-hansQZW_0.1

囗了二川亖五六七八久什土刈元旱合交车巧卆廿马养梗迥有寝沁俭艳陷引天地玄黄宇宙洪荒日月盈昃辰宿列张寒来暑往秋收冬藏闰余成岁律吕调阳云腾致雨露结为霜金生丽水玉出昆冈剑号巨阙珠称夜光果珍李桔菜重芥姜海咸河淡鳞潜羽扬龙师火帝鸟官人皇始制文字乃服衣裳推位让国虞舜陶唐吊民伐罪周发殷汤坐朝问道垂拱平章爱育黎首臣伏戎羌遐迩以体率宾归王鸣凤在竹白驹食场化被草木赖及四方盖此身魂德才伦常知过必改得能莫忘罔谈彼短靡恃己长信使可覆器欲难量墨悲丝染诗赞羔羊耽读玩市寓目囊箱纨扇圆絜银烛炜煌昼眠夕寐蓝笋象床弦歌酒宴接杯举觞矫手顿足悦豫且康

注:可能混淆的字
八-人,玉-王,日-白,目-且,交-文,雨-丽,巨-臣,六-火,扬-汤-场 等
这个 base256-hansQZW_0.1 如果不打印再识别的话已经可以用了,应该都是在 Unicode 的基本多文种平面里。如果要打印再识别,只要数据里加上一点错误纠正码应该是没问题的。

1 评论

回复 sevenpoints 取消回复

您的电子邮箱地址不会被公开。