2011-11-29 51 views
1

我需要將CIImage轉換爲可寫入磁盤的格式。將ciimage轉換爲可寫格式

當前我正在使用下面的代碼將其轉換爲JPG格式。

NSBitmapImageRep* rep = [[[NSBitmapImageRep alloc] initWithCIImage:result] autorelease]; 

NSData *JPEGData = [rep representationUsingType:NSJPEGFileType properties:nil]; 
[JPEGData writeToFile:targetPath atomically:YES]; 

但真正的內存使用率高達100 MB以上。我的應用程序需要我處理大量圖像,所以我需要優化內存使用情況。

任何人都可以請任何建議?

回答

0

如果它是累積的內存是一個問題,而不僅僅是一個形象,你可以嘗試包裹在自己的自動釋放池的最後兩行:

@autoreleasepool { 
    NSData *JPEGData = [rep representationUsingType:NSJPEGFileType properties:nil]; 
    [JPEGData writeToFile:targetPath atomically:YES]; 
} 
+0

我已經保持一個自動釋放池裏面這些語句。 。但問題仍然存在 –

+0

我承認我不確定,那麼。 – Wevah