ESC
科技 1 分钟阅读

“我只是小心翼翼地挑选词语”

一篇有趣的排版趣闻:在等宽字体中实现两端对齐几乎不可能,因为空格过大且无法均匀分布,断字也显得突兀。但 rs1n 在上世纪 90 年代末为其《Super Metroid》游戏攻略另辟蹊径——通过精心重写文本,让 17,000 多个单词的每一行右边距都精确落在字母上,全篇没有出现一个双空格,堪称手工排版的壮举。

来源:Hacker News

右对齐也可以,只要你不介意数空格;但居中就已经变得棘手了,因为你没有半个空格可用,无法做到真正的均匀:

而两端对齐(full justification)才是真正诡异的地方。空格实在太大,而且无法均匀分布,带来一种非常不舒适的感觉:

其他排版领域采用的解决方案是断字(hyphenation),但在等宽字体中,断字同样让人不舒服——连字符太过显眼(而且还会搞乱复制和粘贴):

这就是为什么你很少在文本文件中看到两端对齐。

但还有另一种选择。你可以重写文本,只挑选那些恰好能凑齐行长度的词语,从而避免出现任何双空格。

这正是 rs1n 在上世纪 90 年代末为他的《Super Metroid》攻略所做的事情:

这令人惊叹,因为接下来的 17,000 多个单词都是如此:右边距始终完美地以字母结尾,看不到一个双空格。

作者在文末的 FAQ 中轻描淡写地提到:

“你用什么软件来对齐文本的?”