iOS7设置缩略图的方向不正确
我正在尝试使用以下代码从Swift的iOS7中的AlassetLibrary加载图像(先前从UIImagePickerController拍摄并保存在资产库中):iOS7设置缩略图的方向不正确,ios7,alasset,uiimageorientation,alassetlibrary,Ios7,Alasset,Uiimageorientation,Alassetlibrary,我正在尝试使用以下代码从Swift的iOS7中的AlassetLibrary加载图像(先前从UIImagePickerController拍摄并保存在资产库中): assetsLibrary.assetForURL(NSURL(string: image.diskPath), resultBlock: { asset in if let validAsset = asset { let rep = validAsse
assetsLibrary.assetForURL(NSURL(string: image.diskPath), resultBlock: {
asset in
if let validAsset = asset {
let rep = validAsset.defaultRepresentation()
let imageData = rep.fullResolutionImage()
//let imageData = validAsset.thumbnail()
var imageOrientation: UIImageOrientation = .Down
let orientValueFromImage = validAsset.valueForProperty("ALAssetPropertyOrientation") as NSNumber
imageOrientation = UIImageOrientation.fromRaw(orientValueFromImage.integerValue)!
let imageToAdd = UIImage(CGImage: imageData.takeUnretainedValue(), scale: 1, orientation: imageOrientation)
self.imagesForCollectionView.append(imageToAdd)
fetchedImageCount++
if fetchedImageCount == fetchedImages.count{
self.collectionView.reloadData()
}
}
}, failureBlock: {error in
NSLog("error %@", error.debugDescription)
})
当我使用let-imageData=rep.fullResolutionImage()时,我获得了图像的正确UIImageOrientation,但当我将该行替换为let-imageData=validAsset.thumbnail()时,我始终获得了正确的UIImageOrientation。只有通过UIImagePickerController拍摄的图像才会发生这种情况。
关于为什么会发生这种情况以及如何解决它,有什么想法吗?为UICollectionView加载全分辨率图像是一件麻烦事,需要花费大量时间和内存
如何获得缩略图的正确方向?谢谢。您是否尝试过以下方法:
UIImage(CGImage:asset?.aspectRatioThumbnail().takeUnretainedValue())
aspectRatioThumbnail()提供与全分辨率图像具有相同比率和方向的缩略图
像你一样,我在UIImage init中使用了比例和方向参数,但方向错误,然后我尝试不使用,方向总是正确的。这就是我最后所做的。我忘了回到这里,把答案标对了。希望它能帮助别人。谢谢你的回复。