“移动和缩放屏幕”如何确定其裁剪框的尺寸?设置UIImagePickerController“移动和缩放”裁剪框的尺寸
基本上我想为“CropRect”设置一个固定的宽度和高度,并让用户按照需要移动和缩放他的图像以适应该框。
有谁知道如何做到这一点? (或者如果它甚至可以用UIImagePickerController)
谢谢!
“移动和缩放屏幕”如何确定其裁剪框的尺寸?设置UIImagePickerController“移动和缩放”裁剪框的尺寸
基本上我想为“CropRect”设置一个固定的宽度和高度,并让用户按照需要移动和缩放他的图像以适应该框。
有谁知道如何做到这一点? (或者如果它甚至可以用UIImagePickerController)
谢谢!
不幸的是,UIImagePickerController不可能。我建议的解决方案是禁用图像选择器的编辑并自己处理。例如,我把图像放在一个可滚动的,可缩放的图像视图中。在图像视图的顶部是固定位置“裁剪指南视图”,该位置绘制用户看到的裁剪指示符。假设指南视图具有可见矩形(要保留的部分)和边缘宽度(要放弃的部分)的属性,则可以像这样获取裁剪矩形。您可以使用UIImage+Resize类别进行实际裁剪。
CGRect cropGuide = self.cropGuideView.visibleRect;
UIEdgeInsets edges = self.cropGuideView.edgeWidths;
CGPoint cropGuideOffset = self.cropScrollView.contentOffset;
CGPoint origin = CGPointMake(cropGuideOffset.x + edges.left, cropGuideOffset.y + edges.top);
CGSize size = cropGuide.size;
CGRect crop = { origin, size };
crop.origin.x = crop.origin.x/self.cropScrollView.zoomScale;
crop.origin.y = crop.origin.y/self.cropScrollView.zoomScale;
crop.size.width = crop.size.width/self.cropScrollView.zoomScale;
crop.size.height = crop.size.height/self.cropScrollView.zoomScale;
photo = [photo croppedImage:crop];
完美答案。谢谢! – 2012-02-01 22:49:02
您可以请提供示例项目或其他任何东西。 – 2013-09-16 09:20:28
@Marc。你怎么能指导我如何使用swift – 2017-01-09 09:39:09
有点儿晚了比赛,但我认为这可能是你在找什么:https://github.com/gekitz/GKImagePicker
好吧,我在这里将来的土地肯定会赞赏它! – Pinwheeler 2013-04-19 22:50:22
我爱你,这给了我很多时间。 – thedeveloper3124 2013-08-05 00:32:43
如何将其用于相机? – giuseppe 2013-09-17 12:25:04
这里是明阳手工裁剪的解决方案。 https://github.com/myang-git/iOS-Image-Crop-View
它提供了一个矩形框架,用户可以滑动或拖动矩形框架以适应矩形中所需的图像部分。请注意,这个解决方案与问题相反 - 让矩形大小变化,但最终会带来理想的结果。
它在Objective-C中编码。您可能需要在Swift中编写它,或者只需构建一个桥接头来将Objective-C代码与Swift代码连接起来。
比我找到的任何其他库更好。 – 2015-11-19 11:58:55
有人可以有相同的解决方案迅速? – 2018-02-28 10:18:30