iPhone SDK - CGBitmapContextCreate

发布于 2024-10-24 17:41:34 字数 555 浏览 5 评论 0原文

我想创造一个属于我自己的形象。我已经知道它的宽度(320*2 = 640)和高度(427)。

所以我有一些原始数据:

unsigned char *rawImg = malloc(height * width * 4 *2 );

然后,我将填充它:)

然后,我必须做类似的事情来获取位图并返回 (UIImage *) :

ctx = CGBitmapContextCreate(rawImg,width*2,height,8,
    ???,
    ???,
    kCGImageAlphaPremultipliedLast); 

UIImage * imgFinal = [UIImage imageWithCGImage:CGBitmapContextCreateImage(ctx)];
CGContextRelease(ctx); 



return imgFinal;

但我不知道如何创建我的上下文 ctx,因为你可以看到“???”,即使我阅读文档很困难......

请帮助! 谢谢 :)

I would like to create an image of my own. I already know its width (320*2 = 640) and height (427).

So I have some raw data :

unsigned char *rawImg = malloc(height * width * 4 *2 );

Then, I will fill it :)

Then, I have to do something like that to get a bitmap and return a (UIImage *) :

ctx = CGBitmapContextCreate(rawImg,width*2,height,8,
    ???,
    ???,
    kCGImageAlphaPremultipliedLast); 

UIImage * imgFinal = [UIImage imageWithCGImage:CGBitmapContextCreateImage(ctx)];
CGContextRelease(ctx); 



return imgFinal;

But I don't know how to create my context ctx, as you can see with the "???", even tough I read the documentation...

Please help !
Thanks :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

时光暖心i 2024-10-31 17:41:34

请参阅 Apple 的 CGBitmapContext 文档

如果每个像素使用 4 个字节,那么每行的字节数可能是 half_width * 2 * 4。

颜色空间可能是:

CGColorSpaceRef    colorSpace = CGColorSpaceCreateDeviceRGB();

See Apple's CGBitmapContext documentation.

If you are using 4 bytes per pixel, then your bytes per row might be your half_width * 2 * 4.

Color space might be:

CGColorSpaceRef    colorSpace = CGColorSpaceCreateDeviceRGB();
橘寄 2024-10-31 17:41:34

您可以使用

CGContextRef context = UIGraphicsGetCurrentContext()

You can obtain the current CGContextRef using

CGContextRef context =UIGraphicsGetCurrentContext()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文