2009-10-14 8 views
5

Quelqu'un peut-il me montrer un exemple clair de la façon d'utiliserComment créer une image CG avec des données RVB?

CGImageRef CGImageCreate 
(
    size_t width, 
    size_t height, 
    size_t bitsPerComponent, 
    size_t bitsPerPixel, 
    size_t bytesPerRow, 
    CGColorSpaceRef colorspace, 
    CGBitmapInfo bitmapInfo, 
    CGDataProviderRef provider, 
    const CGFloat decode[], 
    bool shouldInterpolate, 
    CGColorRenderingIntent intent 
); 

J'ai un CGFloat DataBuffer [largeur * hauteur * 3];

Il contient toutes les données RVB de l'image. Essentiellement, il va du pixel R (0,0), G (0,0), B (0,0), R (0,1) ... à R (largeur, hauteur), G (largeur, hauteur) , B (largeur, hauteur)

Je connais la taille de l'image, largeur x hauteur. Comment puis-je utiliser les informations que j'ai et créer et CGImage ??

S'il vous plaît aider, merci

j'ai posté une autre question qui englobe la question ci-dessus. Il a été répondu correctement nschmidt, voici le lien

Converting RGB data into a bitmap in Objective-C++ Cocoa

Répondre

2

Le plus grand mystère, il est le fournisseur de données. La réponse à cela est que vous devez créer un objet CGDataProvider qui contient ou peut fournir les données de pixels que vous avez.

Certains mystères mineurs sont ce qu'il faut passer pour colorSpace et bitmapInfo. Ce sont un objet CGColorSpace et un masque de bits CGBitmapInfo.

L'explication du tableau decode pourrait être plus claire, mais ce qui est clair, c'est que vous n'en avez probablement pas besoin. Passez le NULL. En dehors de ces choses, tout est soit évident ou bien expliqué dans the documentation for this function.

+0

Les liens sont brisés. – wcochran

Questions connexes