张时钊(高级工程师) 在活字印刷里,不同的字必须有不同的铅字字模,而且每种字模都必须是大量的,以备排版之需要。在电脑里,由于字形字模的拷贝是很容易的,一个字只要一个字模就足够了,不过要给它一个独一无二的内码,以便取到这个字形。这些字形的集合就形成字库,对应于活字印刷里大量铅字库。虽然电脑字库比铅字库简小而方便,但在每次阅读时都必须带着,如果字库里的一个字形有了变化,整篇文章里的这个字的字形都会改变,如果缺了一个字,就成为空白。没有了字库或安装错了,就不能正确显示,成了无意义的乱码。 一些讨论1、作者并非没有字库,而是字库不再存储字体的外观,而是存放笔画顺序,然后用算法来即时合成字体外观 2、我在想,如果是中国人发明的电子计算机,那现在的电脑会是什么样子?纯属想象,不含任何讽刺,侮辱,大家先想想看键盘会是什么样子?——或者就根本没键盘这回事了. 为什么一定要用手输入? 你的思维到底还是被局限了 3、这种思路是可行的,但汉字博大精深,仅仅记录少量的矢量笔画数据,合成出的字肯定会有些不够美观,在极端情况下使用者可能可以理解,但普通情况下呢?也许靠外挂的汉字库所营造的效果更能吸引人。 4、就没有键盘了,直接是手写的。 5、似乎有过用这种方法做字体的 除了常用字其它的用笔划顺序代替 6、1。就字库来说 我赞同把本地语言固化到硬件ROM或者将全球语言统一起来 做成一个统一的字库 如果容量可以接受 固化到BIOS/EFI 。 2。就输入法而言 我还是习惯拼音输入 如果是笔画输入 我没有心情去背诵一个输入法的字根。 7、我期待一款能把我名字打出来的输入法,不管你是什么电脑有没有字库! 因为你们没法用电脑打出传统中文,我已经隐姓埋名整整10年了! 8、估计这样的系统比vista都要吃资源实时渲染啊而且优点实在有限——传统字库,如果大一点,都是矢量的,矢量字库的运行效率也不高。 9、有点矢量汉字的意思,想法不错.不过如果在美术体上会碰到问题.同样的一个"撇"比划,不同的字有不同的写法,不是简单的缩放可以解决. 不过作为BIOS级别汉字或者超微型设备的折衷方案,这还是可行的。 10、既然在研究这种字根组合的算法,或者去研究如何写字的矢量算法或许更为妥当,我觉得矢量字体也算是个趋势吧。把字符全部描绘成一系列矢量图形的组合,看是否有办法做出既美观,又有速度的电脑计算字体。 11、按笔划的话,土和士怎么分?己、已、巳又怎么分? 12、先指出一点,嵌入式设备字库一般放在rom中,不占用ram空间。既然作者知道一些嵌入式设备的ram很小,那么就不知道,这些ram很小的嵌入式设备, 速度也只有几M到几十M么?组合笔画再填充需要多少时钟周期考虑了么?该功能需要消耗多少堆栈空间考虑了么?用汇编造成的可移植性差考虑了么?而且这些 mcu一般只运行专用的前后台系统而不是linux或者wince。如果是指arm9以上的处理器,那么flash的空间一般不至于连个传统字库或 turetype字体都放不下的。而sdram一般也是几M到几十M。 13、这种拼写式汉字库已经有人尝试做出来过,但是效果不好。因为汉字笔画分布不均匀,如果按照统一算法来排列,出来的汉字不好看。 14、如果电脑是国人发明的,那么我估计键盘就是一个八卦(按键估计不超过16个,不过还是有可能国际化后演变成现有的E文键盘)。现在的电脑键盘是使用洋人的打字机的键盘(先于电子计算机出来的)。 15、因为中文尤其是繁简编码都有的,可能得十几兆大小,这样对硬件成本和设计成本要求太高 16、我这么认为:对于目前的字库,是否美观全看字库的设计者。而这个文章作者说的,可能是靠“印象”算法来决定美观。比如,笔画挤到一起肯定不好看,于是就是当调整…… 17、1.缺字补上就是了; 2.没觉得研制输入法越来越困难,拼音输入法的搜狗一出来也广受欢迎;3.你活不到汉字;死的那天;4.字库出错是字库商违约,和大小没关系;5.20年 之后您对电脑的认知还停留在处理汉字上,您可以洗洗睡了。综上所述:How awful a learned fool———1. 谁来补缺字?2. 输入法很困难,你对比英文就知道了。只不过“身在此山中”,你习惯罢了。3. 汉字永远不会死,汉字是寿命最长的文字了。4. 不是字库出错,而是早期字库基于 gb2312,没有那么多字而已。 18、建议考虑其他方面的应用, 如手写识别,教学等 19、“无字库”如何实现丰富多样的汉字字体?——算法实现。就像目前的字库一样,一个字库一个字体,而不会用一个字库实现所有字体。到时候,每个字体其实就是一种字体算法而已。——注意美观问题……不明白的话到英文Linux下走一圈就知道了嵌入式系统内存宝贵,计算能力就不宝贵了?合成笔画不需要资源来计算?现在的 TrueType字体的渲染都存储的有合成后的bitmap作为缓冲,更不要说笔画合成这更困难的了。另:你以为文泉驿黑体是怎么弄出来的?还不是拆笔 划? 20、我有这样的想法,不管中文英文,都能表达语言使用者的意思,所以从基本的语言完备性来说,两种语言都是满足的。但是英文只需要26个基础字符,中文却需要 上千个,这值得去考虑。我觉得中文单字多的优越性在于每个字都能独立表达意思,这使得很多时候生造一个词,即使你完全不理解这个词的意思,但知道每个字的 意思,也能大致猜出来。英文在这种时候就就显得有些无力了。 但是我们也知道英文中有词根词缀。大多数情况下这又能帮助他们去理解生词。所以其实在这上面中文占不到很大的优势。 我认为中文的这种单字特性决定了中华文化崇尚“虚”的特点。这也是古文中单字表意占主要成分的原因。 21、作者的理论不错。原字模的方法仅仅是消耗内存,显示汉字时只需查表,如果是向量表,那就是O(1)的复杂度。“组字”的方法虽然节省了大量内存,正如作者 所说,显示汉字时需要大量的CPU运算。如今内存越来越便宜也越来越大,相对而言CPU仍然是需要竞争的资源。譬如跑一个能要求较高的应用如3D游戏、多 媒体处理等,若在汉字显示上就花费了相当的CPU而导致程序性能严重下降,那么对这些应用而言,这是一个倒退。 同样在嵌入式系统中,CPU比内存也更昂贵。 22、在嵌入系统上,内存是很宝贵的资源,一个GB18030字库就占用10多M,要是用完全的unicode的话,占用就更多了。但如果能实现作者所述,那么这样的字库将大大缩小,当然是有价值的事情。
我对此文的看法
说个切身体会,不知道楼上诸位有没用过linux,用过就知道字体是个大问题! ! ! ! 为了字体,我都搞了n多天了,结果还是因为字库问题,搞的头大,我需要装4g的字库用于工作设计用的…………所以对我来说,我非常期待! ! ! ! ! ps:“八卦“状键盘,这想法太棒了! ! ! 恰好解决了笔画的八方和内外位置问题啊! ! !
|
|