如何从Byte获取UIImage ...在IPhone代码

时间:2010-12-07 02:15:28

标签: iphone uiimage bytearray

我通过下一个代码从UIImage获得了字节数组。

context = CGBitmapContextCreate(    (void*) pixelData,
                                inImage.size.width,
                                inImage.size.height,
                                RGBA_8_BIT,
                                bytesPerRow,
                                colorSpace,
                                kCGImageAlphaPremultipliedLast );

//  Make sure we have our context   
if ( ! context )    
{
    free( pixelData );
    NSLog( @"Context not created!" );
}


//  Draw the image to the bitmap context.   
//  The memory allocated for the context for rendering will then contain the raw image pixelData in the specified color space.
CGRect rect = {     { 0 , 0 }, { inImage.size.width, inImage.size.height }        };
CGContextDrawImage( context, rect, inImage.CGImage );

// Now we can get a pointer to the image pixelData associated with the bitmap context.
pixelData = (RGBAPixel*) CGBitmapContextGetData( context );

现在..我想要来自“pixelData”的UIImage ......帮助..

RGBAPixel是一个结构... - > int red; int green; int blue; int alpha;

1 个答案:

答案 0 :(得分:1)

以下是我从上下文获取UIImage的方式。

CGImageRef aCGImg = CGBitmapContextCreateImage(context);
UIImage *aUIImg = [UIImage imageWithCGImage:aCGImg];
CGImageRelease(aCGImg);