我希望直接以NSData對象的形式使用ALAssetsLibrary和ALAsset提取圖像。使用ALAssetsLibrary和ALAsset將圖像作爲NSData取出
使用NSURL我取出圖像以下列方式。
NSURL *referenceURL =newURL;
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library assetForURL:referenceURL resultBlock:^(ALAsset *asset)
{
UIImage *copyOfOriginalImage = [UIImage imageWithCGImage:[[asset defaultRepresentation] fullResolutionImage]];
}
現在我們將圖像作爲UIImage,但我需要直接將圖像作爲NSData。
我希望這樣做,因爲(我已經閱讀過)一旦你在UIImage中拍攝圖像,那麼我們將失去圖像的所有EXIF細節。
這就是我想要直接作爲NSData的提取圖像的原因,而不是做這個
NSData *webUploadData=UIImageJPEGRepresentation(copyOfOriginalImage, 0.5);
這一步讓我失去所有的EXIF信息。
請幫忙。
感謝您精彩的建議。 但是,有什麼辦法可以壓縮圖像嗎? 之前使用它作爲NSData。 –
如果我理解正確,圖像將被壓縮。默認的演示文稿可能是一個JPEG或PNG – HeikoG
我有這個技術的問題,同時導入多個ALAssets,看起來好像緩衝區被重新用於下一個項目。 –