Attached 1 is a screenshot from an app called GeniusScan where you can photograph any document and an adjustable rectangular grid shows on the imageview. You can easily adjust the borders of the grid with your fingers to select the portion of the image that you want to scan. It will be then transformed into the correct prospective.

1- How can I draw and interact with the grid on the imageview?

2- How can I return the corner points of the grid to my view controller.

Uqlmy.jpg

Update: I found a wonderful class called BJImageCropper which allows to use fingers to ajust the borders, but only for a box like rectangle. Can anyone suggest how it can be updated to support shapes like in the GeniusScan app?

解决方案

Dude:

I created a demo that solves both questions:

1- How can I draw and interact with the grid on the imageview?

By Adding 4 views that will act as interactive control points by adding UIPanGestureRecognizer and then drawing the grid using CAShapeLayer on top of your view.

2- How can I return the corner points of the grid to my view controller.

You must keep references to the four control points of your grid.

Here's the link to my code.

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐