iOS 7自定义字体对齐方式

时间:2013-09-26 18:35:58

标签: ios cocoa-touch fonts ios7 uifont

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

现在我已经更新到iOS 7 SDK,在iOS 7设备上运行时,字体位置更接近普通字体,但在iOS 6设备上仍然看起来很简单。

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

我已经尝试使用Apple的字体工具套装修改实际的TTF上升器,下行器和线间隙属性,根据this博客文章和stackoverflow上的许多答案,它在iOS 6上有帮助,但不是在iOS 7上做了很多改变。

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

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

1 个答案:

答案 0 :(得分:1)

编辑TTF文件是解决方案。

我已按照this回答的建议,在Glyphs上打开了我的TTF文件并再次导出。字形将ascender和lineGap值调整为可能正确的值,并且字体在iOS 6和IOS 7上表现得非常相似。现在基线甚至非常接近系统字体。

仍然存在一些细微的垂直差异,但显然这种情况发生在iOS 7上的每种字体上,即使在system fonts上也是如此,但它很多不太明显。