了解 UIImage 大小属性与 UIView 框架大小属性的比较

Posted

技术标签:

【中文标题】了解 UIImage 大小属性与 UIView 框架大小属性的比较【英文标题】:Understanding UIImage size property compare to UIView frame size Property 【发布时间】:2016-04-20 21:27:02 【问题描述】:

我正在尝试缩小 UIImage 以适应我的 UIView 的完全相同的大小,但我不确定它们之间的确切关系是什么。 这是我检查我的 UIImage 是否大于我的 UIView 的方式。

let rect = preview.frame
if croppedImage.size.width  * croppedImage.scale > rect.size.width * UIScreen.

//RESIZE

这是正确的方法吗?价值观是否在相同的维度上说话?

【问题讨论】:

【参考方案1】:

来自UIImageclass reference,指的是scale属性:

如果乘以图像的逻辑大小(存储在size 属性)通过此属性中的值,您可以获得 以像素为单位的图像。

来自UIWindowclass reference,指的是自己的scale属性:

该值反映了从 默认逻辑坐标空间转化为设备坐标空间 这个画面。默认逻辑坐标空间是使用测量的 点。对于标准分辨率显示器,比例因子为 1.0 和 一点等于一像素。对于 Retina 显示器,比例因子为 2.0,一个点用四个像素表示。

所以你应该能够比较croppedImage.size.width * croppedImage.scalerect.size.width * UIScreen.scale。但是,您可能需要考虑将您的UIImage 放入UIImageView。然后您可以将UIImageView 上的frame 属性设置为您的视图框架,瞧! (但请注意,这可能会拉伸您的图像。)

【讨论】:

嘿,埃文,感谢您的回答!我正在将 UIIMageViw 大小调整为与图像相同的方面,所以很好:) 底线,我所做的,是正确的吗?谢谢! :)

以上是关于了解 UIImage 大小属性与 UIView 框架大小属性的比较的主要内容,如果未能解决你的问题,请参考以下文章

将 UIImage 大小与 pdf 大小匹配

在 UIImage 上添加 UIView - swift - 以编程方式

UIView转换为UIImage

IOS将UIView转化为UIImage

如何将 UIImage 调整为特定大小

如何在ios的UIView中找到遮罩的位置和大小