0

私の最終的な目標は、さまざまな単語が同じ長方形の領域に収まるようにフォント サイズを変更することです。私は sizeWithFont を使用するのに最適な方法だと思っていましたが、幅が 0 になり続けており、混乱しています。

NSString *name = @"Test Word";
CGFloat fontSize = 32.0;
UIFont *font = [UIFont fontWithName:@"TimeNewRomanPSMT" size: fontSize]; 
CGSize sWidth = [name sizeWithFont:font 
             constrainedToSize:CGSizeMake(fontSize, CGFLOAT_MAX)
          lineBreakMode:UILineBreakModeWordWrap];
NSLog(@"sWidth =  %3.1f; rec.width n= %3.1f ", sWidth.width, rec.width);

私の計画は、幅が収まるまでフォント サイズをループすることですが、sWidth.width は 0 を返し続けます。

クリス

4

2 に答える 2

6

フォント名はTimesNewRomanPSMTであり、TimeNewRomanPSMTはありません。

よくあるエラーであるTimesの後のsに注意してください。

このWebサイトは、フォント名を検証するだけでなく、iOSで使用可能なすべてのフォントのリストと例を用意するのに非常に役立ちます。

http://iosfonts.com/

于 2012-06-05T18:46:12.867 に答える
1

この場合、最初に提案して確認する必要があるのは、フォントがではないことnilです。正しくないフォント名を入力した場合に発生する可能性があります

于 2012-06-05T18:47:15.187 に答える