現在、iOS ソフトウェアで Google の WebP 画像形式を使用する可能性を調査しています。
Google の C ライブラリを使用して、必要に応じて WebP を RGBA8888 にデコードすることは難しくありません。
ただし、API とパフォーマンスの両方の点で UIImage に匹敵する実装を作成したいと考えています。
Q1. ネイティブの imageWithData やその他の API が新しい形式を読み取るように、iOS で画像デコーダを開発することは可能ですか?
Q2. いいえの場合、UIImageView (およびその他のフレームワーク提供のコントロール) が UIImage を描画するために使用する API は何ですか? それは公開されていますか (例: drawInRect/drawAtPoint)、それとも内部ですか?
UIImage から継承し、いくつかのメソッド (+imageWithContentsOfFile、+imageWithData、+imageNamed、-drawInRect、-drawAtPoint など) をオーバーライドして、WPImage オブジェクトを SDK 提供の API で適切に動作させることはできますか?
Q3. 私の架空の WPImage クラスのすべてのインスタンスが UIApplicationDidReceiveMemoryWarningNotification をサブスクライブする場合 (RGBA イメージ バッファーをフラッシュして、はるかに小さい元の WebP データを RAM に残すため)、パフォーマンスはそれほど低下しませんか?
私たちが開発しているソフトウェアは、RAM に何百もの異なるイメージを簡単に持つことができます。