代码参考http://blog.csdn.net/lizitao/article/details/41828697
关键点,取正方区域,等比放大,设中心点,观察中心点重设后偏移量 如 375*667屏 假设一个预估截屏区域imageview900X900 等比缩放后的imageview为 900 1600 其中心点坐标为 450 800 这时将中心点坐标重设为预估截屏区域中心点450 450 图片向上偏移350 1600-350*2 = 900 所以对偏移后的部分向下取350为Y原点即可取到900X900的截屏区域
随后将原图与现图进行除法计算得到比例,将截屏区域的 x y width height 乘以比例即可得到原图的正方正中截屏区域
值得一提的是,如果只是单单截图,不用到翻转之类的功能 只需将下列参数都*2 然后在CGImageCreateWithImageInRect中直接调用原图即可
- CGRect CropRectinImage = CGRectMake((NSInteger)(cropperViewOrigin.x*_imageScale) ,(NSInteger)( cropperViewOrigin.y*_imageScale), (NSInteger)(cropSize.width*_imageScale),(NSInteger)(cropSize.height*_imageScale));