我正在使用FontForge字体编辑器编辑字体,一切都很顺利,但在连字时,当我想要制作多个单词的连字(它们之间有空格),它无法在Firefox和Opera上工作,但可以在WordPad和记事本中工作。
这是一个bug还是限制?
我应该怎么解决这个问题?
备注:我正在使用@font-face CSS语法导入字体,字体为ttf格式。
连字制作是OpenType字体中的一个可选功能。连字的例子包括像fi、ff、fl、ffi、ffl这样粘在一起的字母组合。一个常见的带有连字的字体是Calibri,它作为Microsoft Office 2007的默认字体。
该字体有一个查找表,如下所示:
f i -> fi
f l -> fl
f f -> ff
ff i -> ffi
ff l -> ffl
‌
)来停止自动连接连字。提供一个具体的例子会更有帮助,因为这个问题非常不清楚。
我猜测问题在于您试图访问字体中不属于默认设置的连字特性(即必须将其作为opentype特性打开)。CSS没有提供指定要激活的opentype特性的方法。抱歉。
如果是标志或类似的东西,您可以将文本创建为图像,例如png格式或SVG格式。
对于短段落,再次使用SVG可能是合适的。
如果不行,那么也许有一种字体默认支持适当的连字。
在Firefox中无法实现“多字连字”,因为它不支持跨单词空格的连字(或其他类型的OpenType规则,如上下文替代)。
实际上,这是一个相当普遍的限制;例如,XeTeX也是如此。许多文本布局系统并不像普通可打印字符一样处理单词间的空格,因此OpenType查找不会按照您的期望方式匹配。