我需要将CIImage
转换为可写入磁盘的格式。
目前我正在使用以下代码将其转换为JPG格式。
NSBitmapImageRep* rep = [[[NSBitmapImageRep alloc] initWithCIImage:result] autorelease];
NSData *JPEGData = [rep representationUsingType:NSJPEGFileType properties:nil];
[JPEGData writeToFile:targetPath atomically:YES];
但实际内存使用率高达100 MB以上。我的应用程序要求我处理大量图像,所以我需要优化我的内存使用。
任何人都可以提出任何建议???
答案 0 :(得分:0)
如果累积内存是一个问题,而不仅仅是一个图像,您可以尝试将最后两行包装在您自己的自动释放池中:
@autoreleasepool {
NSData *JPEGData = [rep representationUsingType:NSJPEGFileType properties:nil];
[JPEGData writeToFile:targetPath atomically:YES];
}