2014-01-22 73 views
3

在回答問題「Generating custom thumbnail from ALAssetRepresentation」 - 請參閱作者的blog post中描述了從ALAsset生成縮略圖的便捷方式。從過濾應用的ALAsset獲取縮略圖的快速方法

我用這種方法唯一的問題是,它完全忽略了應用於圖像的所有濾鏡或紅眼去除效果(比如iOS 7 Photo app +任何「方形」濾鏡採用的效果)。

the code應如何調整以返回「過濾」縮略圖?

P.S.我知道我可以通過fullScreenImage方法ALAssetRepresentation獲得過濾圖像,但速度太慢,可能會導致「由於內存壓力而終止」錯誤。

+0

您獲得的資產似乎是原始資產,其中包含一些關於修改的元數據。另請參閱:http://stackoverflow.com/questions/13305020/interpret-xmp-metadata-in-alassetrepresentation和http://stackoverflow.com/questions/11569137/how-do-you-get-the-cropped-version如果你想更容易地使用這個功能,我會建議提交一個雷達。 –

回答

1

縮略圖是縮小尺寸的圖片版本,用於幫助識別和組織它們,爲圖像提供與正常文本索引相同的作用。所以它通常不會應用所有的濾鏡或圖片效果,因爲尺寸縮小的概念。

要獲得應用過濾器或圖片效果的ALAsset爲fullResolutionImage

如果您在主線程上執行UI更新或使用延遲加載概念,它不會造成任何緩慢。

它不會導致任何內存壓力,如果您保留ALAsset網址而不是存儲fullResolutionImage

+0

感謝您的回覆,但很可能您已將'fullResolutionImage'與'fullScreenImage'混淆了,因爲前者會返回[未經任何調整](ALAssetRepresentation)的圖像。無論如何,它似乎比'getBytes慢:...' – knuku

+0

UPD:意思是將鏈接粘貼到['ALAssetRepresentation'](https://developer.apple.com/library/ios/documentation/AssetsLibrary/Reference/ ALAssetRepresentation_Class/Reference/Reference.html)類參考,抱歉 – knuku