stretch a image to a larger size without disturbing the pixels in iPhone
I have a view which has 3 subviews and all of the three subviews have uimageviews in uiscrolviews. So the imageviews can be scrolled or zoomed. The images are pretty large.
Now the total size of the view is 480X320 but I want to capture screen in bigger sizes e.g 开发者_StackOverflow中文版960X640. But when I try to do it the image is stretched with pixels getting disturbed.Is there a way to stretch a image which is large in size but displayed in small framed?
Thanks Pankaj
try this code it's working for me.
-(UIImage *)resizeImage:(UIImage *)image width:(int)width height:(int)height {
CGImageRef imageRef = [image CGImage];
CGImageAlphaInfo alphaInfo = CGImageGetAlphaInfo(imageRef);
//if (alphaInfo == kCGImageAlphaNone)
alphaInfo = kCGImageAlphaNoneSkipLast;
CGContextRef bitmap = CGBitmapContextCreate(NULL, width, height, CGImageGetBitsPerComponent(imageRef), 4 * width, CGImageGetColorSpace(imageRef), alphaInfo);
CGContextDrawImage(bitmap, CGRectMake(0, 0, width, height), imageRef);
CGImageRef ref = CGBitmapContextCreateImage(bitmap);
UIImage *result = [UIImage imageWithCGImage:ref];
CGContextRelease(bitmap);
CGImageRelease(ref);
return result;
}
精彩评论