2012-01-07 5 views
0

私は自分のUIViewのフレームを持っており、drawRectではこれをコンテキストとして使用しますが、このコンテキスト外に描画します。自分のコンテキストを指定するにはどうしたらいいですか?カスタムCGContextRefを描画します - フレームよりも大きいですか?

+0

あなたは_frame_の外側に描画することを意味しますか、それとも独自のコンテキストを作成することを意味しますか?コンテキストは単なる矩形以上のものです。 –

答えて

4

私はあなたがコンテキストとしてフレームを使用してどのように理解していません。フレームはCGRectで、コンテキストはCGContextRefです。

drawRect:メソッドの描画コマンドが、画面上のビューの境界外にあるピクセルに影響するかどうかを尋ねることがあります。答えはいいえだ。ビューのレイヤーの子であるCALayerを作成し、ビューの範囲外に延びるフレームを作成することができます。ビューでサブビューがクリップされない場合、そのレイヤーはビューの境界外に描画されます。このことについてもっと知りたい場合は、Core Animationを読んだり、WWDCビデオを見たりする必要があります。

たぶん、あなたはあなたのUIViewの境界よりも大きくなっているオフスクリーンビットマップを作成し、そのビットマップに描画する方法を求めています。それがあなたがしたいことならば、Drawing to a Bitmap Graphics Context in the Drawing and Printing Guide for iOSを見てください。