0

私はすでに答えを知っているかもしれませんが、状況は次のとおりです。

フォント サイズを 11pt にする必要があるスペック シートがあります。

私がそうするとき: UIFont *font = [UIFont fontWithName:@"Gotham" size:11.0]; Retina iPad 4 ではフォントが小さいです。

ポイント数を2倍にすると:UIFont *font = [UIFont fontWithName:@"Gotham" size:22.0];

サイズはぴったりのようです。@2x デバイスのフォント ポイント数を 2 倍にする必要があると考えるのは正しいですか? pngの場合と同じように。

編集:

解決してくれてありがとう。私はそれを取得します:UIFont *font = [UIFont fontWithName:@"Gotham" size:11.0];網膜/非網膜で同じサイズを生成します.

さて、おそらくもっとばかげたフォローアップのために:

Photoshop ファイル (@2x でスケーリング) を開くと、フォントは 11pt と表示されます。ファイル (png に変換され、@2x というラベルが付いている) をエクスポートし、その png をプロジェクトにドロップすると、プログラムで作成した 11pt のテキストよりも画像のテキストがまだかなり大きく表示されるのはなぜですか? (画像とプログラム テキストの両方が iPad 内で表示されています)

私はおそらく脳のおならを抱えていますが、解決策を見つける助けをいただければ幸いです.

4

2 に答える 2

3

いいえ、フォント サイズを調整する必要はありません。フォント サイズはピクセルではなくポイントです。あなたにとって小さいように見える理由11.0は、それが本当に小さいからです ;-)

ただし、Retina デバイスであるかどうかに関係なく、サイズは同じでなければなりません。

于 2014-05-27T15:32:15.343 に答える
0

これを正しく行っている場合、ピクセルを無視して、ネイティブの測定単位であるポイントに関して完全に考えることができるはずです。

  • UILabel などの組み込みのインターフェイス ウィジェットがある場合、[UIFont fontWithName:@"Gotham" size:11.0]Retina デバイスと非 Retina デバイスで同じサイズに見えます (ただし、Retina ではよりシャープになります)。

  • リアルタイムで (コードで) 画像を作成し、このフォントを使用して画像に描画する場合、これを 2 倍の解像度の画面で 2 倍の画像にする場合は、2 倍の解像度を使用する必要があります。グラフィックス コンテキスト (たとえば、これを で設定UIGraphicsBeginImageContext(size,NO,0)) と、[UIFont fontWithName:@"Gotham" size:11.0]Retina デバイスと非 Retina デバイスで同じサイズに見えます (ただし、Retina ではよりシャープになります)。

一方、後で iOS アプリ (アイコンなど) で使用するために Photoshop で画像を準備しているとします。この画像にはフォント描画が含まれています。次に、もちろん、画像の 2 倍のバージョンでは、図面内のすべてのサイズを 2 倍にするのと同じように、フォント サイズを 2 倍にする必要があります。

于 2014-05-27T15:59:02.107 に答える