我需要将一个 CGRect 从一个 UIImage 转换为另一个调整大小的 UIImage。
例如,如果图像 A(原始)大小 = 100,100,矩形为 {50,50,50,50}
在 A' (destination) size = {50,50} 需要将 rect' (destination rect) 转换为 {25,25,25,25}
想知道是否有可以为我做的功能?现在只是变换坐标系,但将来可能会旋转矩形,并且可能涉及一些复杂的三角函数 - 想保存它。
编辑:添加图像来解释问题
我需要将一个 CGRect 从一个 UIImage 转换为另一个调整大小的 UIImage。
例如,如果图像 A(原始)大小 = 100,100,矩形为 {50,50,50,50}
在 A' (destination) size = {50,50} 需要将 rect' (destination rect) 转换为 {25,25,25,25}
想知道是否有可以为我做的功能?现在只是变换坐标系,但将来可能会旋转矩形,并且可能涉及一些复杂的三角函数 - 想保存它。
编辑:添加图像来解释问题
当然有一些助手可以使用。
CGAffineTransform 是您正在寻找的,例如:
CGAffineTransform transform1 = CGAffineTransformMakeTranslation(-50, -50);
CGAffineTransform transform2 = CGAffineTransformMakeRotation(M_PI/2);
CGRect myRect = CGRectMake(100,100,100,100);
CGRect transformedRect = CGRectApplyAffineTransform(myRect, transform1);
检查 CGAffineTransform.h 以获取完整列表。