3

在 iOS 6 上实现应用程序的布局时,我使用了自定义 TTF 字体 (Gotham)。我注意到它的基线总是比常规字体高一点,但只是稍微调整了一下以适应。

现在我已经更新到 iOS 7 SDK,在 iOS 7 设备上运行时,字体位置更接近于常规字体,但在 iOS 6 设备上看起来仍然是轻推的。

因此,在解释 iOS 7 的字体指标时,Apple 似乎修复了导致基线垂直偏移的原因,但未触及 iOS 6。

我已经尝试根据这篇博客文章和stackoverflow上的许多答案,使用Apple的字体工具套装修改实际的TTF上升、下降和行间距属性,它在iOS 6上确实有帮助,但在iOS 7上没有太大变化。

我的问题是:我可以做些什么来在 iOS 6 和 7 上使用自定义字体,而无需根据正在运行的 iOS 版本调整每个标签?

我知道 iOS 7 发行说明中已经提到了这一点,但我不想在我的代码中添加大量条件子句来以不同方式调整 iOS 6 或 iOS 7 设备的标签。

4

1 回答 1

1

编辑 TTF 文件是解决方案。

我已经按照这个答案的建议,在Glyphs上打开了我的 TTF 文件并再次导出它们。Glyphs 将上升器和 lineGap 值调整为可能正确的值,并且字体在 iOS 6 和 IOS 7 上的行为几乎相同。基线现在甚至非常接近系统字体。

仍然存在一些小的垂直差异,但显然 iOS 7 上的每种字体都会发生这种情况,即使在系统字体上也是如此,但它不太明显。

于 2013-09-27T02:17:34.567 回答