1

NSStringカテゴリメソッドdrawInRectは少量のテキストには適していますが、大量のテキストにはオーバーヘッドが大きすぎることをドキュメントで読みました。私の場合の代替手段は、CoreTextを使用することCTFrameDrawです。

drawInRect私の質問は、コアテキストを使用することとコアテキストを使用することの間の「カットオフ」ポイントは何ですか?Core Textは常により高速drawInRectですか?余分なプログラミングが問題にならない場合は、drawInRect小さな文字列であっても、常にではなくCore Textを使用する必要がありますか?

ほとんどの場合、段落を描画しますが、短い線になることもあります。

4

3 に答える 3

1

私にとって、グラフィックデザイナーからの特定の要件がある場合は、コアテキストを使用するようになります。たとえば、色、タイプ、フォントサイズなどを混在させる必要のあるラベル。drawRectはビューレイヤーに何かを描画するメソッドであり、CG関数の単なるラッパーであり、コアテキストはテキストの描画方法を処理するための完全なフレームワークです。フォントの変更、スペース、インターライン。つまり、比較としては公平ではありません。一般的なUIテキストの代わりにコアテキストを使用する場合は、より良い質問になる可能性があります。答えは、アプリの設計(UI関連の要件)に基づいています。お役に立てれば。

于 2012-05-13T17:49:44.910 に答える
0

文字列コンテンツの予想される統計的分布を使用して、検討中の2つの方法をベンチマークするためのテストコードを作成します。たぶん、それぞれを使用して数千万の文字列がレンダリングされるタイミングです。ARMを対象としたフレームワークを使用すると相対的なパフォーマンスが異なる場合があるため、実際のiOSデバイスでベンチマークを実行します。

于 2012-05-13T18:06:41.353 に答える
0

UIWebViewを使用すると、可能なすべてのパフォーマンスが得られるのではないかと思います。iOS(およびすべてのOS)には、常にロードされているWebkitが用意されています。そのかなりよく最適化されています。また、作業がオフロードされます。

比較するのは興味深い。

于 2012-05-13T18:32:53.140 に答える