0

目前,此设置(例如在 UIImageView 上)将保持中心的中心UIImage在中心UIImageView并“裁剪”两侧均等地超出边界的边缘。

有没有办法改变这一点?

例如,如果我想让它的顶部边缘UIImage与顶部边缘对齐,UIImageView并在缩放时从底部剪掉等等......

4

1 回答 1

1

一种方法是继续使用 UIImageView 的自动缩放(UIViewContentModeScaleAspectFit 或 UIViewContentModeScaleAspectFill,以使方面保持正确),然后通过应用图层蒙版来删除不需要的部分。

或者(这就是我会做的),只需自己绘制具有所需裁剪的图像。

例如,将图像设置contents为图层的,然后设置图层的contentsRect(这决定了图像的哪个区域显示为图层的内容)和contentsGravity(这决定了图像如何固定/缩放到图层的边界)。您可以实时更改这些值(甚至是动画)。

或者,当您想要一个裁剪版本时,只需抽出一个新的图像图形上下文,将图像重新定位到其中,以便正确的区域以正确的方式与上下文重叠,拉出结果图像并显示它。

于 2014-05-23T17:08:16.313 回答