我想編輯捕獲的圖像並將其保存到圖庫。我製作了使用UIImagePickerControllerCropRect裁剪UIImagePickerControllerOriginalImage返回不正確的圖像
UIImagePickerController *picker=[[UIImagePickerController alloc] init];
picker.allowsEditting=YES;
我想將圖像保存在可編輯的方形部分並將其保存到圖庫。我知道我可以使用[info objectForKey:@"UIImagePickerControllerEditedImage"]
來保存編輯後的圖像。但是,這總是會讓我看到尺寸爲320x320(iPad Mini)的圖像,並且圖像質量很差。所以,我打算通過使用下面的代碼裁剪原始圖像[info objectForKey:@"UIImagePickerControllerOriginalImage"]
:
CGRect rect = [[info objectForKey:@"UIImagePickerControllerCropRect"]CGRectValue];
UIImage *originalImage=[info objectForKey:@"UIImagePickerControllerOriginalImage"];
CGImageRef imageRef = CGImageCreateWithImageInRect([originalImage CGImage], rect);
UIImage *result = [UIImage imageWithCGImage:imageRef
scale:originalImage.scale
orientation:originalImage.imageOrientation];
CGImageRelease(imageRef);
然後我救了兩個結果圖像和編輯後的圖像([info objectForKey:@"UIImagePickerControllerEditedImage"]
)。當比較這兩幅圖像時,它們相互匹配。我附上了編輯和裁剪的圖像。我的最終目標是將原始圖像裁剪到可編輯的方形部分中的圖像上,並將其保存爲圖像質量良好的圖庫。任何人都可以告訴我究竟出了什麼問題,並幫助我解決這個問題?
在此先感謝。
我也有過類似的問題,只是寫了雷達和禁用編輯。然後我清理了我的鍵盤:p – fzwo
如果你能更詳細地瞭解解決方案,我將不勝感激。我非常需要它。 – CrazyDeveloper
正如我所說的,我已經放棄了,在https://bugreport.apple.com上提交了一個錯誤報告(在內部,蘋果bug跟蹤器被稱爲「雷達」),並且沒有它。如果我確實需要這些功能,那麼我會尋找可以複製它的開源組件,或者自己編寫它。 但我不得不承認,有些奇怪的是你沒有得到任何答案。你在網站上搜索過,看看其他人是否也有同樣的問題? – fzwo