2009-05-15 4 views
1

J'ai un beau contexte CGImageRef, que j'ai créé toute la journée pour obtenir des valeurs alpha;)Comment puis-je dessiner un contexte CGImageRef à l'écran?

Il est défini comme:

CGContextRef context = CGBitmapContextCreate (bitmapData, pixWidth, pixHeiht 8, pixWidth, NULL, kCGImageAlphaOnly); 

Donc, pour ma compréhension, ce contexte représente en quelque sorte mon image. Mais "virtuellement", non visible quelque part dans la mémoire. Est-ce que je peux bourrer cela dans un UIImageView ou dessiner cela directement à l'écran? Je suppose que l'alpha serait converti en niveaux de gris ou quelque chose comme ça.

Répondre

2

Vous pouvez créer un UIImage en appelant:

+ (UIImage *)imageWithCGImage:(CGImageRef)cgImage

puis dessiner le UIImage en utilisant:

- (void)drawAtPoint:(CGPoint)point

0
CGSize size = ...; 
UIGraphicsBeginImageContext(size); 
... 
UIImage *img = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 
... 
CGPoint pt = ...; 
[img drawAtPoint:pt]; 
2

Allez voir CGBitmapContextCreateImage(), qui peut vous donner un CGImageRef de votre contexte bitmap. Vous pouvez ensuite dessiner cela en utilisant les fonctions CGContext ... ou faire un UIImage en utilisant +[UIImage imageWithCGImage:].

Questions connexes