0

のファイルサイズを縮小しようとすると、奇妙な結果が得られますUIImage


コード

UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
        NSData *data = UIImageJPEGRepresentation(image, 0.5f);
        UIImage *img = [[UIImage alloc] initWithData:data];

変数imgは、データベースに送信されるものです。ただし、圧縮されることはありません。

全体をさらに奇妙にしているのは、それがしばらくの間機能したことです。その時、私は最初に「修正」しようとしましたが、あきらめて変更を元に戻しました。それが機能したとき、以前のように戻ったときです。

その後、アプリのまったく別の部分に別の変更を加えたところ、再び圧縮が機能しなくなりました。

何が起こっているのか手がかりを持っている人はいますか?

4

1 に答える 1

1

コードはUIImageイメージ ピッカー コントローラーからインスタンスを取得し (1 行目)、それを JPEG ファイルとして圧縮し (2 行目)、再度展開 (圧縮解除) します (3 行目)。

UIImage展開された画像 (と呼ばれるインスタンスimg) をデータベースに送信したくありません。代わりに、圧縮された JPEG イメージ (NSDataと呼ばれるインスタンスdata) をデータベースに送信する必要があります。

ところで: このコードは機能しましたか? UIImageインスタンスを保存することはまったく可能ですか?

于 2012-12-30T10:52:44.407 に答える