0

我使用 FontForge 创建了一个自定义字体,用于我的 iOS 应用程序。当我在我的应用程序中使用字体时,不应用字距调整。有一个已知的错误,即未对 UITextView 应用字距调整。我在 UILabel 和 UITextField 中使用它,所以这不是问题。我的目标是 iOS 5.0。

我可以在 Font Book 和 Pages 中查看字体,并看到字距调整是否有效。但是,字距调整在 Word for Mac 中不起作用。我在 Word 中启用了字距调整,但它在那里不起作用。我不太关心Word。我主要希望它在 iOS 中工作。

我已经将字体创建为 .otf 和 .ttf 字体,并使用各种 FontForge 选项来生成字体集。我使用过的选项是 Apple、OpenType 和 OT/Old Style 和 OT/DSIG。页面将为字体生成选项的所有组合正确应用字距调整,除非仅选中 OpenType。Font Book 仅在选中 Apple 时才会显示字距调整,而不会显示其他任何内容。我在其他论坛上阅读了一些关于让字体与 Word 一起使用的评论,但没有任何关于字距调整和 iOS 的具体内容。

任何人都有任何经验:

1) 使用 FontForge 在 OS X 上为 iOS 应用程序成功创建紧缩字体?

或者

2) 使用在 Word 中工作的 FontForge 在 OS X 上成功创建紧缩字体?这可能会让我更接近,即使您没有在 iOS 上使用字体的经验。

我有一个试用版的 Glyphs,我已经玩过,但我不想转移到另一个字体程序来完成这项工作。

任何帮助,将不胜感激。

4

1 回答 1

2

在 iOS 6(及更低版本)中,UIKit 控件如UILabel,UITextView并在底层UITextField使用 WebKit 来呈现其内容。WebKit 不支持字体的内置字距调整。iOS 6 为所有 UIKit 控件引入了属性文本支持。如果您设置attributedTexta 的属性UILabel而不是常规text属性,则 CoreText 渲染将启动,您将获得正确的字距调整。但是,在 iOS 6 中,UITextField即使设置attributedText.

如果你真的需要在 iOS 5 中对标签进行适当的字距调整,那么有很多很棒的替代品。我使用TTTAttributedLabelOHAttributedLabel也很棒。

如果你真的需要适当的字距调整 aUITextField你可能会想要使用 Omni 的OUIEditableFrame. 缺点是集成到项目中很痛苦。如果您有兴趣,我最近经历了学习过程,写了一个冗长的教程。

于 2013-06-27T22:04:39.470 回答