1

iphone用の簡単なお絵かきアプリを作ってみました。描画した画像を透明な PNG に変換しようとしています (白い背景は必要ありません)。UIImageView で使用する UIImage 表現も取得したいと思います。

現在、私はタッチ イベントに応答し、ビュー コンテキストに描画される CGLayer へのパスを描画します。CGLayer とビュー自体の両方にアクセスできます。現在、次を使用してビューを画像に出力します。

UIGraphicsBeginImageContext(drawingView.bounds.size);
[drawingView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();   
UIGraphicsEndImageContext();

これは、ビューを使用して UIImage を作成するだけです。

ビューの背景は白いため、作成した UIImage に含まれています。PNGファイルを表示して書き込むことができるように、この白い背景を持たないUIImageを取得したいと思います。

私が持っている CGLayer を直接使用する必要があると思いますが、CGLayerRefアクセスできるタイプからそれを取得する方法がわかりません。

どんなアイデアでも大歓迎です。

  • アリーム
4

1 に答える 1

5

私はちょうどこれを扱った。に背景を描画してCGLayerから、 の背景を次のように設定しないでくださいUIView

self.backgroundColor = [UIColor clearColor];

これで問題なく、png の背景が透明になります。

于 2009-08-06T12:56:47.017 に答える