打造设计你自己的字体 Ⅱ(4)
作者:snl 来源:蓝色理想 发布时间:2008-03-14 07:48:00
Kerning 字距调整
读完 Johno关于kerning的文章 ,你已经能跟上这些基础课程了吧?下面是关于kerning的一些细节,你作为一个字体设计师应该知道的。
良好的侧架设置就好比拥有一个主教练,他对于比赛有一个很好的总体计划,可以让你的字体在用户不使用字距调整的大多数情况下,也可以得到比较像样的结果。但是在某些具体的场合,为了获得完美的结果,你还必须有一个优秀的进攻协调员在场上组织具体的进攻——那就是字距调整。
在完成侧架设置之后,我喜欢把字体中的字符对打印出来,检查哪些地方出了问题,需要进行字距调整的辅助。实际上,我写了一个脚本来将这些字符对生成一个Open Office 文档,你可以在这里下载这份文档 。然后你就可以在 Open Office 中打开这份文档,选择所有文本,变为你自己的字体之后,打印出来检查。
发现那些有问题的字符对之后,你就得弄脏双手亲自对它们进行修理了。这里是我一个字体的范例,显示了设置了侧架而还未进行字距调整的V-e 配对。注意两个字符中的空隙是多么巨大。
然后是字距调整之后:
我们要做的是让字母自然的从一个流向下一个。我常常会想,字距调整就仿佛是让我的字符们彼此偎依在一起。
在做字距调整的时候要注意的几个问题:
如果你发觉对每一对字符你都要做字距调整,那么很可能是你的侧架设置出了问题。好的侧架设置通常意味着有一部分的字符对已经设置完成,不再需要单独的字距调整。
会有人告诉你,你只需对最常用的字符对做字距调整。比如对于q,你只需要做qu 以及qa 的字距调整,而qz 则不必要—在实际印刷中谁会用到qz 啊?可是我就是一个例外,我坚持为全部的字符对做字距调整,不管那些组合是多么的不可理喻。那些纯粹主义者可能又要晕倒或是吓到呼吸困难了。但我为什么要限制我字体的用户,让他们只有在使用标准字符对的时候才拥有漂亮的字距调整?如果有人想打印qz,那就应当让他们打印出一个漂亮的qz 。
大部分的字体编辑软件都有一个自动字距调整的功能。这是一个好的开端,但明智的做法是,在自动调整之后你还应该亲自进行逐个的检查和调整。没有什么算法能超过人的眼睛。
Scratching the Surface 划破皮肤
到这里为止,我们才刚刚划破皮肤。如果不及时处置的话,就可能会引发“字体狂热症”。我的确希望如此。即便是在从事字体设计这么多年之后,每一次打开FontLab Studio 在其中奋战,都依然会让我学到一点新的东西。
继续阅读下一篇:打造设计你自己的字体 Ⅲ


猜你喜欢
- 为什么要讲 __repr__在 Python 中,直接 print 一个实例对象,默认是输出这个对象由哪个类创建的对象,以及在内存中的地址(
- 在使用TensorFlow训练神经网络时,首先面临的问题是:网络的输入此篇文章,教大家将自己的数据集制作成TFRecord格式,feed进网
- 聚焦爬虫:爬取页面中指定的页面内容。编码流程:1.指定url2.发起请求3.获取响应数据4.数据解析5.持久化存储数据解析分类:1.bs42
- date("yyyyMMdd",time()) date() 函数功能:用于格式化时间,返回一个字符串。&nb
- PDO::setAttributePDO::setAttribute — 设置属性(PHP 5 >= 5.1.0, PECL pdo
- 网上一直说的是先安装SQL Server 2014,再安装VS2015,软件就不会出现问题。我这次在什么都没准备的情况下安装了VS2015,
- 用Python生成一个简单的密码本,一般是有数字、字母和符号组成,这里用到的思路主要是穷举法。通过使用pywifi 模块,根据密码本暴力破解
- 本文实例展示了PHP实现的格鲁斯卡尔算法(kruscal)的实现方法,分享给大家供大家参考。相信对于大家的PHP程序设计有一定的借鉴价值。具
- [sql] -- ===================【创建存储过程】===================== USE [Message
- 前言这是Go单元测试从入门到放弃系列教程的第1篇,介绍了如何使用httptest和gock工具进行网络测试。在上一篇《Go单元测试从入门到放
- 分享一下 在3est活动中学习的godlong的 代码如下:<% Set xPost = createObject("Mi
- 本文和大家重点讨论一下Perl split函数的用法,Perl中的一个非常有用的函数是Perl split函数-把字符串进行分割并把分割后的
- Microsoft SQL Server 7.0安全问题Microsoft Corporation【「Microsoft SQL Serve
- 系统模块import os系统模块用于对系统进行操作。常用方法os模块的常用方法有数十种之多,本文中只选出最常用的几种,其余的还有权限操作、
- 一、概述SQL Server提供了“分离/附加”数据库、“备份/还原”数据库、复制数据库等多种数据库的备份和恢复方法。这里介绍一种学习中常用
- numpy 中 的random模块有多个函数用于生成不同类型的随机数,常见的有 uniform、rand、random、randint、ra
- 紧接上回,已经完成了单独的贪食蛇的控制,但是呢,居然没有苹果可以吃,所以,非常简单的加入苹果,同时呢,修改一下主程序中贪食蛇的创建,单独编写
- 最近使用Python调用百度的REST API实现语音识别,但是百度要求音频文件的压缩方式只能是pcm(不压缩)、wav、opus、spee
- python里面的matplotlib.pylot是大家比较常用的,功能也还不错的一个包。基本框架比较简单,但是做一个功能完善且比较好看整洁
- Python获取图片的大小了解过Pillow的都知道,Pillow是一个非常强大的图片处理器,这篇文章主要记录一下Pillow对图片信息的获