iPhone-将调整大小的图像转换为全屏位图

iPhone-将调整大小的图像转换为全屏位图,iphone,image,bitmap,scaling,Iphone,Image,Bitmap,Scaling,我有很多不同比例的图像,它们正被调整(缩小)到iPhone/iPad的屏幕大小 我需要实现的是创建全屏位图(960x640、480x320、1024x768),将此图像居中并调整大小,包括黑色边框。缩放由AspectFit自动完成,但如何将结果转换为全屏图像 在Android上,我使用的是imageview.buildDrawingCache()和imageview.getDrawingCache()。不是最快的解决方案,但对我来说已经足够好了 例如: 图像大小:1000x500 图像在iPh

我有很多不同比例的图像,它们正被调整(缩小)到iPhone/iPad的屏幕大小

我需要实现的是创建全屏位图(960x640、480x320、1024x768),将此图像居中并调整大小,包括黑色边框。缩放由AspectFit自动完成,但如何将结果转换为全屏图像

在Android上,我使用的是
imageview.buildDrawingCache()
imageview.getDrawingCache()。不是最快的解决方案,但对我来说已经足够好了

例如:

  • 图像大小:1000x500
  • 图像在iPhone4上缩放至:960x480
  • iPhone4分辨率&我需要的图像大小:960x640
你知道怎么解决这个问题吗

我需要这个图像在内存中存储2分钟,然后我可以清理它

编辑: 这就是我所需要的-改变位图缩放成位图缩放与周围环境


我不确定你的问题是什么。如果需要有关如何调整图像大小的帮助,请查看本教程:

如果您想在iPhone 4上显示视网膜图像,可以使用以下代码:

UIImage *image = [UIImage imageNamed:@"scaledPicture.png"];
CGRect imageframe = CGRectMake(0,0,imageWidth/2,imageHeight/2);
UIImageView *imageview = [[UIImageView] initWithFrame:imageframe];
[window addSubView:imageview]; 
在CGRect中写入的数字是点,而不是像素。在iPhone4上,1点=2像素。这就是为什么在上面的代码中实际的宽度和高度被2除


希望这有帮助……

您可以使用imagecontext调整图像大小

UIImage*image=[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@“堆栈” 类型:@“png”]]


我想这会有帮助的

我们很快就会进行测试,但是扩展呢?我必须估计每个图像的大小调整到屏幕上创建矩形?
UIGraphicsBeginImageContext(image.size); 
[image1 drawInRect:CGRectMake(0, 0, 960, 480)];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext();