UIImage调整大小。在模拟器上确定,而不是在设备上

时间:2012-05-18 07:04:09

标签: ios4 uiimage ios-simulator device

在iPhone应用程序中,我编写了一些代码来调整从相册中拍摄的图像的大小,以便将其用作应用程序的背景。 代码受到了我在网上看到的强烈启发。即在这里: http://forrst.com/posts/UIImage_simple_resize_and_crop_image-sUG#comment-land 它在模拟器上工作正常。但看起来设备上根本没有调整大小。这是为什么?有什么想法吗?

感谢您的任何提示。

1 个答案:

答案 0 :(得分:0)

  

hi Michel。

     

我不太了解您的代码但我使用此代码您可以尝试   你会找到你的解决方案。

     

这里你需要传递图像和所需的宽度和高度   在此功能中的图像,您将获得另一个图像   新的尺寸。

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

    }