0

在我的应用程序中,当用户尝试上传图像时,我想要基于屏幕分辨率的图像大小。

例如,如果图像大小是 9690 X 4400,那么它应该返回取决于屏幕分辨率而不是实际大小的大小。

对于 mac 应用程序(OSX),我们可以使用此语句并将其返回给我,大小为 561 X 264

NSImage *imageUpload = [[NSImage alloc] initWithContentsOfFile:fileName];

像mac一样,我们怎么能为iOS应用做点什么,知道吗?请帮忙。

有没有办法得到这个?我做了谷歌,但没有找到任何结果。

谢谢

4

1 回答 1

1

尝试这样的事情:

首先,您应该计算视图的纵横比:

double viewAspectRatio = myView.bounds.size.width / myView.bounds.size.height;

其次,您应该计算图像的纵横比:

double imageAspectRatio = myImage.size.width / myImage.size.height;

所以最后

CGSize scaledSize;
if (imageAspectRatio > viewAspectRatio) {
    scaledSize = CGSizeMake(myView.bounds.size.width, myView.bounds.size.width / imageAspectRatio);
} else {
    scaledSize = CGSizeMake(myView.bounds.size.height * imageAspectRatio, myView.bounds.size.height);
}
于 2013-08-24T13:14:45.223 回答