Skip to content

bevy/photo-editor

Repository files navigation

iOS Photo Editor

Features

  • Cropping
  • Adding images -Stickers-
  • Adding Text with colors
  • Drawing with colors
  • Scaling and rotating objects
  • Deleting objects
  • Saving to photos and Sharing
  • Cool animations
  • Uses iOS Taptic Engine feedback

Installation

CocoaPods

CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:

$ gem install cocoapods

To integrate iOS Photo Editor into your Xcode project using CocoaPods, specify it in your Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!

target '<Your Target Name>' do
    pod 'iOSPhotoEditor'
end

Then, run the following command:

$ pod install

Usage

Photo

The PhotoEditorViewController.

let photoEditor = PhotoEditorViewController(nibName:"PhotoEditorViewController",bundle: Bundle(for: PhotoEditorViewController.self))

//PhotoEditorDelegate
photoEditor.photoEditorDelegate = self

//The image to be edited 
photoEditor.image = image

//Stickers that the user will choose from to add on the image         
photoEditor.stickers.append(UIImage(named: "sticker" )!)

//Optional: To hide controls - array of enum control
photoEditor.hiddenControls = [.crop, .draw, .share]

//Optional: Colors for drawing and Text, If not set default values will be used
photoEditor.colors = [.red,.blue,.green]

//Present the View Controller
present(photoEditor, animated: true, completion: nil)

The PhotoEditorDelegate methods.

func doneEditing(image: UIImage) {
    // the edited image
}
    
func canceledEditing() {
    print("Canceled")
}

Live Demo appetize.io

Demo

Demo Video

Demo

Credits

Written by Mohamed Hamed.

Initially sponsored by Eventtus

License

Released under the MIT License.