2010-04-11 5 views
2

J'ai besoin de UIImage créé à partir de mes couleurs (par exemple, j'ai besoin de l'image 1x1 pixel avec la couleur noire).Comment créer UIImage à partir d'octets?

J'ai tableau:

unsigned char *color[] = {0, 0, 0, 1}; 

Comment puis-je créer UIImage à partir de ce tableau?

J'ai essayer

unsigned char *bytes[4] = {0,0,0,1}; 
NSData *data = [NSData dataWithBytes:bytes length:4]; 
UIImage *img = [UIImage imageWithData:data]; 

mais cette méthode n'a pas de résultat ...

Répondre

2

Vous voulez créer un contexte bitmap (en utilisant CGBitmapContextCreate()), et d'en tirer dedans. Cela nécessite l'utilisation de CoreGraphics. Ensuite, prenez votre contexte et utilisez CGBitmapContextCreateImage() pour en créer un CGImageRef. Enfin, utilisez + [UIImage imageWithCGImage:] pour convertir ce CGImageRef en UIImage.

+0

Merci, je suis en train, mais j'ai problème avec canal alpha. J'ai une image avec le canal ALPHA, et j'essaie de changer de couleur (par exemple: du jaune au vert) et je pense que l'alpha doit garder ... J'ai essayé ceci: http://milytia.org/ coller/117 lorsque le pinceau est un tableau d'octets RGBA. Quand je l'exécute j'ai des artefacts sur mon image générée (sur la place d'ALPHA) ... –

Questions connexes