convertir ciimage au format inscriptible
-
25-10-2019 - |
Question
Je dois convertir CIImage
un format qui pourrait être écrit sur le disque.
Actuellement, je suis en utilisant le code suivant pour le convertir au format JPG.
NSBitmapImageRep* rep = [[[NSBitmapImageRep alloc] initWithCIImage:result] autorelease];
NSData *JPEGData = [rep representationUsingType:NSJPEGFileType properties:nil];
[JPEGData writeToFile:targetPath atomically:YES];
Mais le véritable pousses d'utilisation de la mémoire jusqu'à plus de 100 Mo. Mon application me oblige à gérer un grand nombre d'images donc je dois optimiser mon utilisation de la mémoire.
Quelqu'un peut-il s'il vous plaît suggérer quoi que ce soit ???
La solution
Si c'est la mémoire cumulative qui est un problème, et pas seulement une image, vous pouvez essayer d'envelopper les deux dernières lignes dans votre propre piscine autorelease:
@autoreleasepool {
NSData *JPEGData = [rep representationUsingType:NSJPEGFileType properties:nil];
[JPEGData writeToFile:targetPath atomically:YES];
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow