这三个“缺口”好烦人啊!!
原帖由 sunmd 于 2010-7-20 10:37 发表
皮肤透明引起的后遗症,PUA区域的80个汉字,使用新的渲染方式后,在个别字体下显示不正常。
LZ不妨把皮肤中的中文字体换一下,看看效果吧。我这里是win7,没有安装其他fonts,用微软雅黑输出有问题,用宋体、新宋 ...
原帖由 Secask 于 2010-7-20 13:42 发表
嗯,我改用宋体-18030之后,这三个字就能正常显示了。但为什么你用宋体输出没有问题,我用宋体输出则有问题,要改用宋体-18030呢?
我用的是XP SP3
原帖由 sunmd 于 2010-7-20 14:37 发表
win7的宋体与xp的宋体不同。同时最近用win7,感觉在字体上比xp改进很多,听说在不安装大字符集的情况下能支持大部分unicode编码的汉字了。
原帖由 Secask 于 2010-7-20 14:36 发表
结合sanwsw的意见,看来以下字符是零舍不同的:
????????????????????????????????????????????????????????????????????????????? ...




因为我真的想了解一下这方面知识原帖由 racingstar 于 2010-8-10 21:24 发表
http://www.pkucn.com/viewthread.php?tid=175512
这一篇文章可参考。
GB18030分单字节、双字节、四字节三种,GBK和GB2312都是双字节ANSI编码。
GB18030输入的汉字那是一定要用GB18030显示的,6楼和14楼不一样,那肯定是复制的缘故。
火狐和IE的GBK和GB2312显示不一样,可能是win平台和linux平台的处理方式不一样(可能对这一段块编码不同,火狐和IE显示的是不同的字)。
GB18030实在是不建议使用,建议直接用unicode的utf-8编码。
原帖由 racingstar 于 2010-8-12 11:00 发表
字体不存在编码的问题,宋体-18030只是说本字体带有GB18030规定的两万七千多个字,同样GBK字体就是说字体带有GBK规定的两万一千多个字。如果你的字体中字不够,那最多就是开天窗,比如你选择楷体GB2312字体显示网页,它还是会显示字体中带有的字,字体中没的字开天窗。
Firefox是windows和linux全平台开发的,代码要保证在linux和win下都能够编译,我猜测还是两种平台字体调用有区别。
原帖由 sanwsw 于 2010-8-12 08:45 发表
支个招:
①使用我在本坛上传的“方正楷体”作为皮肤的中文字体;
②安装国际标准超大字符集字体支持包UniFonts5.4;
③做好系统字体的必要链接(搜索相关帖子)。
5740 5741 5742

原帖由 Secask 于 2010-8-12 11:09 发表
那我是否可以这样理解:
编码的解码是程序(例如浏览器)的问题,只要告知浏览器网页的编码(选择正确的字符编码),浏览器即可正确解码出字符,然后就可以调用字体来显示了。字体文件本身并不需要识别各种编码, ...
原帖由 racingstar 于 2010-8-12 19:18 发表
计算机只认识0和1的比特流,一个字节有8个比特位。
那一个字节能表示00000000-11111111之间的一个数字,变成10进制就是0-255,变成16进制就是00-FF,总共能表示256个字符。
我们要对字符编码,就必须要有一个字符集,在这个字符集中定义了每一个字符对应的字节。
比如大写字母A,我们定义用16进制的41表示,那么转换成2进制,就是01000001。那计算机碰到一个字节是01000001的话,它就会解码成对应的字符。
但是这样的话,最多也只能表示256个字符,后来就扩展可以使用2个字节编码,这样能表示更多的字符。这一类ascaii字符集扩展,我们都称为ANSI编码。
unicode编码能表示更多的字符,从00000-10FFFF,但是我们不能就这样直接表示一个字符,因为计算机不知道这个字符哪里开始哪里结束,所以必须加上控制位,然后就出现了utf-8,utf-16,utf-32等各种unicode编码
原帖由 Secask 于 2010-8-12 19:23 发表
那么解码是怎样的机制?
例如,宋体-18030是按照GB18030编码排序,那么宋体-18030里应该有GB18030的编码信息。那么对于一些Uniocde编码的页面,浏览器是不是先把它转换成字体的编码(GB18030)而去调用字体?
原帖由 racingstar 于 2010-8-12 20:10 发表
所以我们在应用层要关心的是,怎么判定到底是几个字节表示一个字符。比如说ANSI编码的字符,一定是一个或两个字节的。读到的字节位小于127,就直接解码,读到的字节位大于127,就和后面一个字节一起解码。
unicode编码,有很多方式,各个编码方式的控制字节都不一样,这个可以google上搜一下具体的定义。
在此要再次谢谢racingstar,教了我很多,扫了我很多“计算机编码知识”的盲区,让我获益良多

原帖由 racingstar 于 2010-8-13 09:16 发表
GB18030非常特殊,它要向下兼容ANSI编码的GBK,但是有六千多个汉字又是需要四个字节编码的(就是超过了16进制的FFFF,不能用两个字节编码)。我们脑残的国家相关部门制定了这个不伦不类的标准(其实就是把unicode字符集中的cjk ext-a中的字符加入GBK,但是制定标准的人不考虑具体的实现,不知道ANSI字符集表示不了这么多字符)
原帖由 racingstar 于 2010-8-13 20:58 发表
可以使用方正超大字符集吧,那个收字更多。
一般来说,你用到cjk扩展a区的汉字,你很有可能也会用到扩展b区的汉字。
很多时候就是这样,那些生僻字一般都用不到。但是一些有特殊需求的人,比如从事文字工作,一旦要 ...

★ 本字库包含近十万标准字符,其中中日韩越通用汉字有七万五千多:
CJK基本 [4E00-9FFF] 20992码位 实际20924字
CJK扩展A [3400-4DBF] 6592码位 实际6582字
CJK扩展B [20000-2A6DF] 42720码位 实际42711字
CJK扩展C [2A700-2B73F] 4159码位 实际4149字
CJK兼容扩展 [2F800-2FA1F] 544码位 实际542字
CJK部首扩展 [2E80-2EFF] 128码位 实际115字
CJK康熙部首 [2F00-2FDF] 224码位 实际214字
CJK笔画 [31C0-31EF] 48码位 实际36字
CJK兼容 [F900-FAFF] 512个码位 实际474字
123.png (26.83 KB, 下载次数: 114)
未命名.jpg (54.83 KB, 下载次数: 103)
4322.png (4.2 KB, 下载次数: 98)
| 欢迎光临 华宇拼音输入法论坛 (http://bbs.pinyin.thunisoft.com/) | Powered by Discuz! X3.2 |