2009-10-14 11 views
5

Może ktoś mi pokazać wyraźny przykład, jak używaćJak utworzyć obraz CG z danymi RGB?

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 
); 

Mam CGFloat dataBuffer [szerokość * wysokość * 3];

Zawiera wszystkie dane RGB obrazu. Zasadniczo przechodzi od piksela R (0,0), G (0,0), B (0,0), R (0,1) ... do R (szerokość, wysokość), G (szerokość, wysokość) , B (szerokość, wysokość)

Znam rozmiar obrazu, szerokość x wysokość. Jak korzystać z informacji, które mam i tworzyć i CGImage?

Proszę o pomoc, dzięki

napisałem kolejne pytanie, które obejmuje powyższe pytanie. Został on odpowiedział poprawnie nschmidt, tu jest link

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

Odpowiedz

2

Największą tajemnicą jest dostawcą danych. Odpowiedź brzmi: musisz utworzyć obiekt CGDataProvider, który zawiera lub może dostarczyć dane piksela, które posiadasz.

Niektóre mniejsze tajemnice są czym przekazać na colorSpace i bitmapInfo. Jest to obiekt typu CGColorSpace i maska ​​bitowa CGBitmapInfo.

Wyjaśnienie tablicy decode może być bardziej przejrzyste, ale jasne jest, że prawdopodobnie jej nie potrzebujesz. Przełóż NULL.

Oprócz tych rzeczy wszystko jest albo oczywiste, albo dobrze wyjaśnione w the documentation for this function.

+0

linki są łamane. – wcochran

Powiązane problemy