在一个 iPhone 应用程序中,我编写了一些代码来调整从相册中获取的图像的大小,以便将其用作应用程序的背景。该代码的灵感来自我在网上找到的内容。即在这里: http: //forrst.com/posts/UIImage_simple_resize_and_crop_image-sUG#comment-land 它在模拟器上运行良好。但看起来设备上根本没有调整大小。这是为什么?任何的想法?
谢谢你的任何提示。
在一个 iPhone 应用程序中,我编写了一些代码来调整从相册中获取的图像的大小,以便将其用作应用程序的背景。该代码的灵感来自我在网上找到的内容。即在这里: http: //forrst.com/posts/UIImage_simple_resize_and_crop_image-sUG#comment-land 它在模拟器上运行良好。但看起来设备上根本没有调整大小。这是为什么?任何的想法?
谢谢你的任何提示。
嗨,米歇尔。
我不知道更多关于你的代码,但我正在使用这个代码,你可以试试这个,你会找到你的解决方案。
在这里,您需要在此函数中传递图像以及该图像所需的宽度和高度,您将获得另一个具有该新尺寸的图像。
-(UIImage *)resizeImage:(UIImage *)image3 width:(int)width height:(int)height {
CGImageRef imageRef = [image3 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;
}