3

iOS 6 でアプリのレイアウトを実装する際に、カスタム TTF フォント (Gotham) を使用しました。そのベースラインは常に通常のフォントよりも少し高いことに気付きましたが、ちょうど収まるように周りを微調整しただけです。

iOS 7 SDK に更新したので、iOS 7 デバイスで実行した場合のフォントの配置は通常のフォントの配置に近くなりましたが、iOS 6 デバイスではまだ微調整されているように見えます。

つまり、Apple は、iOS 7 のフォント メトリックを解釈する際に、ベースラインの垂直方向のずれの原因を修正したように見えますが、iOS 6 はそのままにしておきました。

このブログ投稿とstackoverflowに関する多くの回答に従って、Appleのフォントツールスーツを使用して、実際のTTFアセンダー、ディセンダー、およびラインギャッププロパティを変更しようとしましたが、iOS 6では役立ちますが、iOS 7ではあまり変わりません.

私の質問は、実行中の iOS バージョンに応じて各ラベルを微調整する必要なく、iOS 6 および 7 でカスタム フォントを使用するためにできることはありますか?

これは iOS 7 のリリース ノートで言及されていることは知っていますが、コードに大量の条件節を追加して、iOS 6 または iOS 7 デバイスのラベルを異なる方法で微調整したくありません。

4

1 に答える 1

1

TTFファイルを編集することが解決策でした。

この回答の提案に従い、グリフでTTF ファイルを開き、再度エクスポートしました。Glyphs は、ascender と lineGap の値をおそらく正しい値に調整し、フォントは iOS 6 と IOS 7 でほぼ同じように動作します。現在、ベースラインはシステム フォントに非常に近くなっています。

若干の垂直方向の違いはまだありますが、明らかにこれは iOS 7 のすべてのフォントで発生し、システム フォントでも発生しますが、それほど目立ちません。

于 2013-09-27T02:17:34.567 に答える