开发者

How do I create a CGImage with RGB data?

开发者 https://www.devze.com 2022-12-08 18:50 出处:网络
Can anyone show me a clear example of how to use CGImageRef CGImageCreate ( size_t width, size_t height,

Can anyone show me a clear example of how to use

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

I have a CGFloat dataBuffer [width * height * 3];

It contains all of the RGB data of the image. Essentially, it goes from pixel R (0,0), G (0,0), B(0,0), R(0,1)... to R(width, height), G(width,height), B(width,height)

I know the s开发者_如何学运维ize of the image, width x height. How do I use the information that I have and create and CGImage??

Please help, thanks

I posted another question that encompasses the above question. It was answered correctly by nschmidt, here is the link

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


The biggest mystery there is the data provider. The answer for that is that you need to create a CGDataProvider object that either contains or can provide the pixel data you have.

Some lesser mysteries are what to pass for colorSpace and bitmapInfo. Those are a CGColorSpace object and a CGBitmapInfo bit-mask.

The explanation of the decode array could be clearer, but what is clear is that you probably don't need one. Pass NULL.

Aside from those things, everything is either self-evident or well-explained in the documentation for this function.


I posted another question that encompasses the above question. It was answered correctly by nschmidt, here is the link

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

0

精彩评论

暂无评论...
验证码 换一张
取 消