iOS - 从UIImageView获取UIImage的Visible部分

Mru*_*rug 6 transition uiimageview uiimage ios cgrect

我正试图像APP Tinder那样进行转换.详情:

  1. 在屏幕一中,有一个Vertical Rectangular UIImaveView,其contentMode = Aspect Fill,因此它会隐藏Image的某些部分以调整Aspect Ratio.
  2. 在屏幕2(细节屏幕)中,必须传递转换后的相同图像,但第二个屏幕中的ImageView是方形一.

    我想制作一个Morphing类型的过渡,其中用户应该认为来自Screen One的相同ImageView在第二个中变成方形而没有拉伸Image.So我该怎么办?

目前我正在尝试在UIImageView的可见区域中获取UIImage的帧,以便我可以做一些逻辑内容来实现这一点.但任何人都可以帮助我获得UIImage的可视部分框架.

编辑

请找出附加图像以便理解 在此输入图像描述

dan*_*anh 2

我认为这个问题有点含糊:必须在坐标系中指定框架。但我认为你正在寻找一个相对于原始的、未剪辑的图像的矩形。

如果这是正确的,那么可以如下计算矩形。假设图像名为image,图像视图为imageView。矩形的大小是图像视图的大小:

imageView.bounds.size
Run Code Online (Sandbox Code Playgroud)

并且,由于长宽比填充将使超大尺寸居中,因此它的起源是:

CGPointMake((image.size.width - imageView.bounds.size.width) / 2.0, 0.0);
Run Code Online (Sandbox Code Playgroud)