“移动和缩放屏幕”如何确定裁剪框的尺寸?
基本上我想为“CropRect”设置一个固定的宽度和高度,让用户移动和缩放他的图像以根据需要适应该框。
有人知道怎么做吗? (或者如果使用 UIImagePickerController 甚至可能的话)
谢谢!
最佳答案
不幸的是,UIImagePickerController 是不可能的。我推荐的解决方案是禁用图像选择器的编辑并自行处理。例如,我将图像放在可滚动、可缩放的 ImageView 中。在 ImageView 的顶部是一个固定位置的“裁剪指南 View ”,它绘制了用户看到的裁剪指示器。假设引导 View 具有可见矩形(要保留的部分)和边缘宽度(要丢弃的部分)的属性,您可以像这样获得裁剪矩形。您可以使用 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];
关于ios - 为 UIImagePickerController 设置尺寸 "move and scale"cropbox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9041732/