汉字的几何中心
英文排版靠基线对齐,所以虽然英文字母有不同的高度深度,通过基线的对齐就能让读者感到文字不凌乱。而单词间的空格和单词长度的不同,能够让读者的视线产生错落有致的张弛感。但对于中文排版而言,问题就没有那么复杂。中文排版没有空格,而且都是方块字,所以整体的感觉每行都是一条黑带子,而虽然汉字是方块字,视觉上而言,阅读时仍然可能出现上下左右的波动。这是因为,每个汉字都有视觉中心,而人眼在阅读时,经过每个汉字的时候就会发现视觉中心会上下移动,而且整体上在一行内也会感觉有疏密感,这无论在横排还是竖排中,都是会发生的。
视觉中心是人的主观感受,难以定量化,就好比很难有一个标准来衡量某人到底是漂亮的还是丑陋的一样。在很多字体设计软件中(比如FontLab的东亚语言版本),都会给出一个圆心来辅助设计师设计汉字,这样能够提高字体的重心在设计阶段的质量。不过这还是靠字体设计师的审美,没有定量确定的方法。不过主观感受在某些近似的情况下,依然可以通过某些模型被定量下来,比如说某美女身材很好,可以通过三围来说明;说明传言的真实性有多高,可以援引新华社辟谣的次数来说明。虽然以偏概全,但是定量化的结论依然有参考价值,也为以后更好地修缮评价标准提供帮助。对于汉字的视觉重心,我们可以先用一个最简单的模型来描述,就是把它近似为其几何重心(或者物理重心)。这样,我们可以为每个字体的重心平稳性打分,并且看到很多有趣的结论。
为此,我对目前国内出版业界的常用字体,通过程序设计的途径,获得每个字体的相关参数,并且用现实的文本素材加以测试,归纳汉字字体设计在这方面的大致现状。其实早在三年前我就有用FreeType2库写一个程序做这个实验的打算,当初也和排字工人snl老师说过这件事情,不过由于课业、研究、升学的繁忙给搁置下来了。现在手里有了一台苹果Mac电脑,自然做这样的事情要比裸写FreeType2代码要方便得多。所以昨晚花了一些时间折腾了当然了,单纯的数据分析会比较无聊。本着让本博客文章更无聊的目标,在前半部分,我会介绍如何实现这样的计算。这部分内容对于希望熟悉Mac OS X下字体框架、文本引擎服务、渲染技术的人十非常有帮助的,我会着重讲述一下Mac OS X下的类似NSFontManager, NSFont等重要的编程接口及其原理。因此,如果你对于这些内容感兴趣,阅读本文,谢谢。
(最近几年我一直在业余时间做一些偏艺术的技术工作,就字体排印方面而言,《写一篇关于排版理论具体实践的文档来抛砖引玉》(http://yulewang.spaces.live.com/blog/cns!5C815C994ABB661E!288.entry)、《TeX相关软件中文字体嵌入一个存在已久的问题水落石出,兼谈不拘小节的中文字体设计》(http://yulewang.spaces.live.com/blog/cns!5C815C994ABB661E!262.entry)、《 CJK宏包中,中文字体的奥秘》(http://bbs.ctex.org/viewthread.php?tid=50078)等文章均被很多网站转载或者讨论。希望这篇文章也能得到类似的效果吧。)
转载本文请著名作者(王越)和出处(http://yulewang.spaces.live.com)。
首先我们来谈谈字体。计算机字体经过三十年的发展,已经趋向稳定。目前不管是TrueType技术还是OpenType技术,都可以通过贝赛尔曲线描绘轮廓。事实上目前大部分的汉字字体也是这么做的。这里我选取了两个字体中的两个字符来说明。
更多请阅读原文!
建议继续学习:
- 能否在等边三角形点阵中画一个正方形? (阅读:4179)
- 出租车几何学:一个全新的几何世界 (阅读:3348)
- 经典证明:等边三角形内一点到各顶点的距离长可构成一个三角形 (阅读:3168)
- 集数学与艺术于一体的几何幻方 (阅读:2410)
- 根据16进制输出所有汉字 (阅读:2221)
- 用相同的面组成多面体,凸多面体不一定会更大 (阅读:1811)
- css3中的几何图形shape研究 (阅读:990)
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:王越 来源: 王越
- 标签: 几何 汉字
- 发布时间:2010-06-22 13:19:03
- [67] Oracle MTS模式下 进程地址与会话信
- [65] 如何拿下简短的域名
- [65] Go Reflect 性能
- [59] 图书馆的世界纪录
- [59] 【社会化设计】自我(self)部分――欢迎区
- [59] android 开发入门
- [58] IOS安全–浅谈关于IOS加固的几种方法
- [53] 视觉调整-设计师 vs. 逻辑
- [47] 读书笔记-壹百度:百度十年千倍的29条法则
- [47] 界面设计速成