2012-04-24 11 views
1

私はユーザーのアルバムから画像を取得しましたが、ファイル内のメタデータやMCUを変更してから新しい写真として保存するか、元のファイルを書き直したいとします。つまり、JPEGデータブロックをロスレスモードで編集する必要があります。再圧縮せずにiOSでJPEGデータを編集するにはどうすればよいですか?

私は、次のデフォルトのコードでイメージをつかむ:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
     [picker dismissModalViewControllerAnimated:YES]; 
     selectedImage.image = [info objectForKey:@"UIImagePickerControllerOriginalImage"]; 
} 

答えて

3

あなたのJPEG画像の新しい圧縮せずにlibrary iphone-exifでメタデータを変更することができます。

アップデート1: また、特にjpegtranで、libjpegで(別のJPEGフォーマット間ロスレストランスコーディングのためのユーティリティを。)になります

を限り私はあなたのMCU変更することはできません知っている(MCUのサイズを!)新しい圧縮なし。

+0

すぐにお返事ありがとうございます!しかし、何らかの形でJPEGデータをメモリに準備して編集して保存する方法はありませんか? – Kai

+0

iphone-exifを使用すると、メモリ内のJPEG表現のメタデータを編集できます( 'NSData * uiJpeg = UIImageJPEGRepresentation(anImage、1.0);') –

+0

メタデータに関しては、私にとって明らかです。しかし、マクロブロックにアクセスしたり変更したりする方法がないと述べています。 APIの制限とサンドボックス化のためですか?私が学ぶことができるJPEG MCUに近いデータ抽象化はありますか? – Kai

関連する問題