2016-03-14 3 views
2

В моем проекте я хочу установить 4 точки обрезки вручную на изображение и обрезать это изображение в соответствии с заданными точками. Например, посмотрите ниже изображение.Обрезать изображение в прямоугольную форму, когда точки обрезки находятся на любой форме, которая имеет 4 точки - IOS/Swift

enter image description here

Подобно этому, все, что я хочу, чтобы обрезать изображение в соответствии с этим путем и после обрезки должна быть прямоугольником. Это похоже на обрезку изображения в приложении CamScanner IOS. Если кто-нибудь знает, как это сделать, любая помощь будет высоко оценена.

+0

Мой [здесь ответ] (http://stackoverflow.com/a/35611207/2976878) может быть полезно - хотя отображение результата в прямоугольник намного сложнее. – Hamish

+0

Я попробую ваше решение как можно скорее. Thanks @ оригиналuser2 – GMHSJ

+0

@ оригиналuser2 Cropping делается. Вещь, с которой я не могу пройти, показывает обрезанную вещь как прямоугольник. – GMHSJ

ответ

2

Здесь можно найти очень хороший GitHub проект, которые имеют такой же Funtionality то, что вы хотите, но это в Objective-C может быть, вы можете преобразовать этот код, чтобы скор проверить ссылку следующее:

https://github.com/jberlana/JBCroppableView

Это выход:

enter image description here

ОБНОВЛЕНИЕ

Я только что сделал одну демо-версию в Swift, используя JBCroppableView Objective-C класс реализует в Swift. Загрузите из следующего и используйте согласно вашему требованию.

https://github.com/nitingohel/NGCropview

Комбинация Свифта + Objective-C

OUTPUT

enter image description here

+0

Мне нужна эта обрезанная фигура для отображения в прямоугольник. Возможно ли это с этим? – GMHSJ

+1

вам нужно понять логику своего взрыва и применить в качестве своего реквизита. –

+0

Хорошо, я попробую. Спасибо BTW :) – GMHSJ

1

Я думаю, что вам нужно geometric_transformations.

Если вы планируете использовать OpenCV, вот хороший пример: http://www.pyimagesearch.com/2014/08/25/4-point-opencv-getperspective-transform-example/

+0

Yaa, на самом деле то, что я хотел, является перспективной коррекцией. Я сделал это, используя фильтр CoreImage под названием CIPerspectiveCorrection. Спасибо, что помогли другу. – GMHSJ

+0

Добро пожаловать. Да, CIPerspectiveCorrection - хороший выбор для iOS. –