View

300x250

[iOS 앱 개발 - Swift] 코코아팟으로 이미지편집기 사용하기

부스트코스에서 프로젝트를 하면서 외부기능을 가져올 일이 있었습니다. 바로 요것!

사진을 imagePicker에서 골라준 다음에, 사이즈를 조정하거나 기울기, 크롭 등의 작업을 해주기 위해 어떤 방법을 써야하나 고민을 했는데, 친구한테 물어보니 외부에 라이브러리가 많으니 참고해보라고 해서 여기저기 찾아봤어요. 그렇게 찾은게 바로 요 Mantis라는 것입니다.

https://github.com/guoyingtao/Mantis

 

guoyingtao/Mantis

A photo cropping tool which mimics Photo.app. Contribute to guoyingtao/Mantis development by creating an account on GitHub.

github.com

 

그런데, 적용방법이 CocoaPods을 이용한다고 하더라구요. 예전에 코코아팟에 대한 글을 작성한 적이 있었는데, 이걸 실제로 사용해보는 것은 처음이였어요. ㅋㅋㅋ

https://zeddios.tistory.com/25

 

왕 초보를 위한 CocoaPods(코코아팟) 사용법 (Xcode와 연동)

안녕하세요! 오늘은 CocoaPod사용법에 대해 알려드릴려고해요 :) 저는 CocoaPod 처음에 시작할 때 뭐가 뭔지 몰라서 정말 하나도 몰라서 진짜 어려운거구나...라고 생각했었어요. 하지만 한번 배워 놓으면 정말 쉽..

zeddios.tistory.com

 

위 블로그에 코코아팟을 사용하는 방법이 아주 자세하게 설명이 되어있어요. 물론 저분이 작성하신 포스팅의 내용을 발췌해올 수도 있겠지만, 

양심상 ㅋㅋㅋ

 링크를 달아두도록 할게요!

해당 코코아팟의 설치할 때의 pod 'Mantis', '~> 0.28' 입니다.


위 블로그에서 나오는 방법을 따라서 터미널을 이용해 Mantis를 설치를 해주면 프로젝트 폴더에 Pods 파일이 알아서 생성이 됩니다. 우리가 해줄 일은 UIKit 라이브러리를 가져오듯이 import Mantis 로 설치해준 파일을 Swift 파일에 불러오는 것이죠. Mantis 라이브러리의 사용방법은 위의 Mantis Github에 잘 설명이 되어있습니다. 그저 그걸 따라가면 되는거죠!

위 이미지에서 cropViewController를 어떻게 init 하는지, 호출자는 어떤 조건을 따라야 하는지를 설명하고 있습니다. 그리고 Demo Code에서는 실제로 사용방법에 대해 알려주고 있구요. 저도 이를 따라서 코드를 작성해봤습니다.

 

Mantis를 import 해주고, CropViewControllerProtocol을 채택해주었습니다. ( 사실 여기서 Protocol이 Swift에서 문법적으로 의미하는 바는 잘 모르겠지만, Delegate와 거의 유사한 방식으로 작동하는 거라고 생각이 되네요 )

 

그다음 CropViewController를 생성하면서 imagePicker에서 골라준 이미지를 인자로 전달하고, delegate로 self를 지정한 뒤 present 해줬습니다. crop 프로토콜에 대한 함수를 지정해야 한다고 Usage에 나와있었으니, 이를 그대로 따라 작성해주었습니다. 얻은 이미지를 어떻게 처리할 건지에 대해func didGetCroppedImage 를 작성해주면 됩니다!

 


이렇게만 해주면 다음처럼 근사한 Crop Controller를 만들 수 있습니다.

320x100
Share Link
reply
반응형
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31