将ciimage转换为可写的格式
-
25-10-2019 - |
题
我需要转换 CIImage
达到可以写入磁盘的格式。
目前,我正在使用以下代码将其转换为JPG格式。
NSBitmapImageRep* rep = [[[NSBitmapImageRep alloc] initWithCIImage:result] autorelease];
NSData *JPEGData = [rep representationUsingType:NSJPEGFileType properties:nil];
[JPEGData writeToFile:targetPath atomically:YES];
但是,真正的内存使用量高达100 MB以上。我的应用程序要求我处理大量图像,因此我需要优化内存使用量。
任何人都可以建议吗???
解决方案
如果是累积内存是一个问题,而不仅仅是一张图像,您可以尝试将最后两行包裹在您自己的自动发行池中:
@autoreleasepool {
NSData *JPEGData = [rep representationUsingType:NSJPEGFileType properties:nil];
[JPEGData writeToFile:targetPath atomically:YES];
}
不隶属于 StackOverflow