1

私は現在、CGRectSize を使用してサイズに制限された drawInRect を使用して、文字列にテキストを描画しています。こちらも中心です。

[text drawInRect:CGRectMake(0,0,nWidth,nHeight) withFont:font lineBreakMode:UILineBreakModeWordWrap alignment:UITextAlignmentCenter];

私が知る必要があるのは、実際に描画されたテキストのサイズとオフセットです。中央に配置されているため、テキストが描画される前に X オフセットが存在する可能性が非常に高くなります。

コマンドを見たboundingRectWithSizeことがありますが、IOS ではサポートされていないのではないでしょうか?

4

2 に答える 2

1

テキストのサイズを取得し、

CGSize size = [text sizeWithFont:font constrainedToSize:CGRectMake(0,0,nWidth,nHeight) lineBreakMode: UILineBreakModeWordWrap];

ドキュメントを参照)

すると、中央に配置されるため、境界は次のようになります。

CGRect bounds = CGRectMake((nWidth - size.width)/2, ..., size.width, size.height);
于 2012-08-25T16:36:47.947 に答える
0

NSStringのUIKitカテゴリのメソッドが必要です...

- (CGSize)sizeWithFont:(UIFont *)font

これにより、必要なサイズが得られ、センタリング(または他の)位置を計算できます。

于 2012-08-25T16:34:54.623 に答える