如何在iOS中使用图像缩放裁剪覆盖

如何在iOS中使用图像缩放裁剪覆盖,ios,objective-c,image,uipinchgesturerecognizer,Ios,Objective C,Image,Uipinchgesturerecognizer,我有一个不寻常的要求,如下图所示 说明: (A)-它是一个UIImageView控件,上面添加了收缩手势,可以进行缩放 (B)-通常用户从该区域开始缩放 (C)-裁剪覆盖,用于确定要裁剪的区域 要求 当(B)被缩放时(C)应相应地改变其区域,例如缩放的部分始终在裁剪区域内,而不改变其形状 注意 我不想为此使用scollview,因为我还有其他东西要在它上实现。任何帮助都会很棒 谢谢。我不会在这里为您烘焙完整的代码。因为这是一件非常简单的事情。不过,我将给出一些有用的标记,说明如何做到这一点 计

我有一个不寻常的要求,如下图所示

说明:

(A)-它是一个UIImageView控件,上面添加了收缩手势,可以进行缩放

(B)-通常用户从该区域开始缩放

(C)-裁剪覆盖,用于确定要裁剪的区域

要求

(B)被缩放时(C)应相应地改变其区域,例如缩放的部分始终在裁剪区域内,而不改变其形状

注意 我不想为此使用scollview,因为我还有其他东西要在它上实现。任何帮助都会很棒


谢谢。

我不会在这里为您烘焙完整的代码。因为这是一件非常简单的事情。不过,我将给出一些有用的标记,说明如何做到这一点

  • 计算主显示视图中图像的纵横比匹配矩形,并将图像放置在那里
  • 在主显示器上添加可缩放视图
  • 用户完成视图的缩放或反缩放后,通过将缩放视图与其当前缩放比例相结合,找出缩放视图的4个角
  • 在实际图像上映射这4个角,然后将落在这些角之间的像素保存为另一个图像
  • 保存的图像是您所需的裁剪图像

  • 这不是一个不寻常的现象requirement@CodenameLambda1可能不是,但我看到所有裁剪器都没有改变裁剪区域,而是只改变图像。你的意思是说不要缩放图像,而是缩放控制柄,然后对实际图像进行缩放?是的,当你缩放视图时,你可以得到它的帧,然后将这一帧映射到实际图像上。但是,您必须考虑图像的外观匹配。