decode
実行中に操作をキャンセルする方法をいくつか持っている間、できるだけ早くイメージをロードしようとしています。私は現在CGImageCreateWithPNGDataProvider
、データを取得し、続いCGBitmapContextCreate/CGContextDrawImage
てデコードを強制するために使用しています。次に、結果のビットマップで UIImage を作成しますCGImageRef
。
このアプローチの問題は、描画呼び出しが非常に大きな画像を返すのに数秒かかることです。イメージが不要になったとアプリが判断した場合、ロードする必要がある他のイメージにリソースを与える操作をキャンセルする方法はありません。
パフォーマンスをあまり犠牲にすることなく、複数のステップで画像をレンダリングする方法はありますか? を使用して画像を部分的にレンダリングしようとしましたCGImageCreateWithImageInRect
が、1 回のパスで画像をレンダリングする場合の 10 ~ 20 倍の時間がかかりました。
この件に関するご意見をお待ちしております。