Immer ein CGImage von CIImage
Habe ich ein UIImage geladen wird, ist von einer CIImage mit:
tempImage = [UIImage imageWithCIImage:ciImage];
Das problem ist, ich brauche zum zuschneiden tempImage
zu einem bestimmten CGRect
und der einzige Weg, ich weiß, wie dies zu tun ist durch die Verwendung CGImage
.
Das problem ist, dass in der iOS 6.0-Dokumentation fand ich dies:
CGImage
If the UIImage object was initialized using a CIImage object, the value of the property is NULL.
A., Wie konvertiert CIImage zu CGImage?
Ich bin mit diesem code, aber ich habe ein memory leak (und kann nicht verstehen, wo):
+(UIImage*)UIImageFromCIImage:(CIImage*)ciImage {
CGSize size = ciImage.extent.size;
UIGraphicsBeginImageContext(size);
CGRect rect;
rect.origin = CGPointZero;
rect.size = size;
UIImage *remImage = [UIImage imageWithCIImage:ciImage];
[remImage drawInRect:rect];
UIImage *result = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
remImage = nil;
ciImage = nil;
//
return result;
}
InformationsquelleAutor der Frage tagyro | 2013-01-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sehen die
CIContext
Dokumentation für createCGImage:fromRect:Aus einer Antwort auf eine ähnliche Frage: https://stackoverflow.com/a/10472842/474896
Auch da haben Sie eine
CIImage
beginnen mit, Sie könnte verwendenCIFilter
tatsächlich das Bild beschneiden.InformationsquelleAutor der Antwort Joris Kluivers
Swift 3.1
Hier ist eine nette kleine Funktion zum konvertieren einer
CIImage
zuCGImage
im Swift.InformationsquelleAutor der Antwort skymook
Nach einigen googeln fand ich diese Methode wandelt eine CMSampleBufferRef zu einem CGImage:
(aber ich Schloss die Registerkarte, so dass ich weiß nicht, Woher ich das habe)
InformationsquelleAutor der Antwort tagyro