• 字体
  • 字体家族
  • 字体公司
  • 字体设计师
  • 字体样张
  • 资讯
  • 视频
字客网>资讯>详情

排版中的字体行间距问题

时间:2006-04-30 10:01:54| 字体排印|浏览:977|作者:fontke
导语在一般的文书排版软件上,所谓的行距,通常指的是上一行的字的 baseline 至下一行的字的 baseline 的距离。而这种定义下的行距,也通常是由办公排版系统本身自行在控制、调整的。但是在 TrueType 字体规格中亦有所谓的 linegap 的信息,有些应用软件会使用他来当做是

在一般的文书排版软件上,所谓的行距,通常指的是上一行的字的 baseline 至下一行的字的 baseline 的距离。而这种定义下的行距,也通常是由办公排版系统本身自行在控制、调整的。

但是在 TrueType 字体规格中亦有所谓的 linegap 的信息,有些应用软件会使用他来当做是正常显示时的行距,这个行距指的就不是上面所说的两 baseline 的距离了,而是两行字间的间距。

问题就是出在 TTF 字体中有这些信息的地方不只一个,而各 TTF 的各 table 中的这些信息也不一定统一,再者各应用软件取用这些信息时,由哪一个 table 来取出也不统一,以致造成同样的字体,在不同的平台或应用软件下使用的时候,显示出来的 linegap 并不一样。如下图所示:

 

另外一个问题是,每个平台、每个应用软件是取用 TTF 不同 table 中的 linegap 值。


TTF-table 子项目 适用平台

hhea linegap Apple/Mac, OO.o
OS/2 Win Ascent/Win Descent MS Windows
OS/2 Typo linegap 通常会被忽略,但有些软件会使用

那么,如果发生这种情况的时候,怎么办呢?例如,在 OO.o 下编辑一份档案,但却同时要在其它的平台的同一个 team 的人共同编辑这份档案,这时就会发生排版跑掉了的情形。这时,除了双方安装同一套的中英文字体外,另外可以使用 mensis 来调整字体的 linegap 值,如下图所示:

 

 

 

一般我们可以设为 0,让应用软件全权控制行距的问题。但正常的 linegap 的计算方法是:

假设:

EM size = 1000
TA(Typo Ascender) = 800
TD(Typo Descender) = 200
TL(Typo linegap) 未知
行距 = TA - TD + TL
一般行距是 EM size x 120% = 1200,所以:
800 - (-200) + TL = 1200
TL = 200

这是 TTF/OTF 的字体才会有这种信息,像 PostScript 字体(Type 1 等)就没有这样的信息,完全是由应用软件去抓 font bounding box 来决定行距的(一般也是字体 EM size 的 120%)。

字体中是不是应该有像 linegap 的信息,恐怕还是有讨论的余地,但最重要的是大家要依标准、规范来实作应用软件,否则就会像目前 linegap 的情形一样,造成不同平台、不同应用软件不一致的情况。

0
更多排版中的字体行间距问题敬请关注字客网!
排版中的字体行间距问题 网友点评
游客:文明上网,理性发言。 看不清?换一张
排版中的字体行间距问题 最新评论
暂无相关评论
精彩点评
  • 游客评论免费商用中文字体有哪些?字体资讯

    新蒂字体 授权使用: 无需备案免费使用的情况: 在个人电脑上安装、打印个人文档、个人网站、博客、微博配图 需要备案免费使用的情况: 设计有可能商用的稿件(在商用时购买商业授权)、用于免费提供给他人的印刷品(印量在500份以内,且无需获得印刷品行政许可)的情况、用作没有品牌冠名的公益广告、用作完全免费(不能含有收费项目)的软件及网络服务。 需要购买个人授权的情况: 个人网店的装饰、个体商...
  • 游客评论免费商用中文字体有哪些?字体资讯

    太有用了,感谢作者
  • 天天刺绣评论耗时2年他重新设计34省市图形字体字体资讯

    设计的好棒!漂亮!稀饭!
  • Jaja评论40款高质量英文设计字体字体资讯

    怎么下载啊~
  • 简MEN评论七招打造有逼格的字体字体资讯

    有一款想要的字体,就是下来屯
  • chill评论40款高质量英文设计字体字体资讯

    地址呢?