方正字体在InDesign等软件里使用时,获得正常的标点间距的方法
苟文手天
2021年11月15日 21:32

【解决方法在最后】

现象观察

方正字体的括号的位置和其他厂商的字体相比在默认状态下不太一样,其他厂商是完全靠到一边,而方正是位于中间稍稍偏向一边的位置。无论是在InDesign这样的专业排版软件,还是Word这种普通的文档办公软件里都是这样。

在InDesign中,方正字体与其他字体的标点位置比较

在Word中,方正字体与其他字体的标点位置比较

在一般情况下,这种差异问题不大,顶多算是不同的风格。但在一些需要挤压标点间距的场合,方正字体的这一特点就会导致一些不良的样式。如图

图中第2段第7、8行:后括号和紧跟着的逗号、句号的间距过近,形成不良的视觉效果

就是标红线的位置。按理来说这里的间距应该是正常的,但由于方正字体的右括号在默认情况下比其他字体更靠右,所以这里的间距就会挤得很紧

非常地细节。其实缩小之后比放大看得更明显,放大之后感觉空间都挺大的,但缩小时不是

探究原因

网上搜了一下没找到解决方案,但听说似乎方正的字体在设计时都是优先匹配自家的排版软件的(比如方正飞腾、方正飞翔这些)。所以这个情况可能是因为方正的字体的默认设置和其他排版软件不兼容导致的。

cut-off

正巧之前自己做的一个字体放进InDesign之后发现无论如何设置也调整不了标点间距,就隐约感觉这个标点间距调整的功能可能需要依赖一些特性才能实现,但一直没有去探究。

cut-off

今天突然感觉这两个现象可能有联系,于是我打开FontCreator,随便选个方正的字体,点击Font—OpenType Designer,发现有一栏SingleSubstitution3,里面有fullwidthparenright替换成cid22254,前面那个fullwidthparenright就是方正在默认状态下的标点样式,而后面那个cid22254就是我们想要的靠向一边的标点。

探究过程1

探究过程2

再打开Code Editor,搜索cid22254,发现有一个ss01,顿时感觉不妙,居然是这种玩法(这是OpenType Stylistic Set,风格变体,通常用于给一个字符加上不同造型的替换字形),我怎么没想到呢。

探究过程3

Stylistic Set的常规用法。图中的字体(Raleway)同时提供了单层a和双层a两种字形,可以根据需要选用

解决方法

于是打开InDesign,使用ss01,解决了。图中第一行是原来的样子,第二行是选用ss01之后的样子,现在再遇到标点间距调整的情况时,符号之间就不会挨得太近了。

在InDesign里的操作方法(其他Adobe软件也是类似的方法)

在Word里也是可以改的。

在Word里打开“字体”—“高级”,选“OpenType功能”里的“样式集”

既然用的是Stylistic Set,那其实在Adobe软件里面只要选中这个字符然后鼠标悬停就可以找到这个替代字形了,我居然一直都没有发现。

选中括号后鼠标悬停在上面就可以看到替代字形

尾声

这藏得也太深了,方正似乎也从来没宣传过自家的字体在InDesign里用要打开ss01才能有正常的标点间距,导致市面上很多用方正字体排的书的标点间距都莫名其妙的。

不过方正把不同位置的标点按照排版软件来定义风格变体,这方法真是太骚了,我以前自己做字体的时候也搞了很多风格变体,从ss01一直设置到ss07、ss08之类的样子,但依然想不到方正会这么玩。

cut-off

现在方正字体的标点位置的问题算是解决了,只是InDesign的标点间距调整这个功能究竟是依赖哪个特性还得以后再慢慢看了……