UIImages と CGImages の描画、CIFilters などの使用について学習しています。私の知識をテストするために、ポーション スプライトの色をプログラムで変更し、画面に表示するスライダーを備えた小さなテスト アプリを作成しました (CIHueBlendMode CIFilter を使用)。終了後、比較的長いコードをクリーンアップしたいと思い、フィルターの出力された CIImage から CGImage に移動してから UIImage に移動する代わりに、UIImage の imageWithCIImage: メソッドを使用して CIImage から UIImage に直接移動できることに気付きました。
しかし、drawInRect: を使用して結果の UIImage を描画しようとすると、何も描画されませんでした。もちろん、CGImage ステージを通過すると、これが修正されます。これについての私の理解は、CIImage から UIImage を作成すると、UIImage で NULL CGImage プロパティが発生し、 drawInRect: で使用されるということです。これは正しいです?もしそうなら、CGImage に続いて UIImage を表示するよりも、CIImage を表示するためのより良い方法はありますか? CIImage で作成した CGImage を描画することもできますが、それでは画像が反転してしまい、別の問題が生じます。現在、反転を処理するために、最初に UIImage で描画したものをラップします。別のより効率的な方法はありますか?
長すぎる; 読んでいない: CIImage を CGImage に変換してから UIImage に変換して描画する以外に、CIImage を描画するより良い方法はありますか? CGImages を描画するときに反転を処理する最良の方法は何ですか?
私の質問のいくつかに答えることができる人に感謝します。:)