1

最初に低品質の UIImage をロードしてから、元の UIImage を高品質でロードする方法を知りたいです。Objective-Cでこれを行うアルゴリズムはありますか? クラス NYXImagesKit をチェックアウトしましたが、Core Image フレームワークを使用しているため、iOS 5 以降でのみ動作します...そして、これを iOS 4.3 以降で動作させる必要があります。その効果は Facebook アプリと同じです。

ただの編集:

これをチェックしてください: http://www.codinghorror.com/blog/2005/12/progressive-image-rendering.html

エフェクト2番やりたい

4

2 に答える 2

2

ドキュメントから:

イメージの増分ロード

非常に大きな画像がある場合、または Web 経由で画像データを読み込んでいる場合は、インクリメンタル イメージ ソースを作成して、画像データを蓄積しながら描画できるようにすることをお勧めします。イメージを CFData オブジェクトからインクリメンタルにロードするには、次のタスクを実行する必要があります。

  1. 画像データを蓄積するための CFData オブジェクトを作成します。
  2. 関数 CGImageSourceCreateIncremental を呼び出して、インクリメンタル イメージ ソースを作成します。
  3. 画像データを CFData オブジェクトに追加します。
  4. 関数 CGImageSourceUpdateData を呼び出し、CFData オブジェクトとブール値 (bool データ型) を渡して、データ パラメーターにイメージ全体が含まれるか、部分的なイメージ データのみが含まれるかを指定します。いずれの場合も、データ パラメータには、その時点までに蓄積されたすべてのイメージ ファイル データが含まれている必要があります。
  5. 十分な画像データが蓄積されたら、CGImageSourceCreateImageAtIndex を呼び出して画像を作成し、部分画像を描画してから解放します。
  6. 関数 CGImageSourceGetStatusAtIndex を呼び出して、画像のすべてのデータがあるかどうかを確認します。画像が完成している場合、この関数は kCGImageStatusComplete を返します。画像が完成していない場合は、完成するまで手順 3 と 4 を繰り返します。
  7. 増分イメージ ソースを解放します。
于 2013-02-08T13:08:30.700 に答える
0

以下のリンクを参照することができます、それはあなたを助けるかもしれません

uiimage-dsp

于 2013-02-08T13:01:18.823 に答える