Skip to content

ahmediosDeveloper/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.

About

add SPM Support

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 98.8%
  • Ruby 1.2%