A smart and easy-to-use image masking and cutout SDK for mobile apps.
See the codeA smart and easy-to-use image masking and cutout SDK for mobile apps.
TinyCrayon SDK provides tools for adding image cutout and layer mask capabilities to your mobile applications.
![]() | ![]() |
|---|---|
| Quick Select Tool | Hair Brush Tool |
TinyCrayon SDK provides tools for adding image cutout and layer mask capabilities to your mobile applications.
Image layer mask is a fundamental technique in image manipulations. It allows you to selectively modify the opacity (transparency) of the layer they belong to. This flexibility to define the opacity of different areas of a layer is the basis for more interesting image manipulation techniques such as selective coloring and luminosity masking.
The current version of TinyCrayon SDK provides the following three tools:

If your project is using Objective-C, set Always Embed Swift Standard Libraries to be YES in your Build Settings.
The TCMaskView class is responsible to create a UIViewController for the user to mask the image.
To present a TCMaskView:
Swift
let maskView = TCMaskView(image: image)
maskView.delegate = self
maskView.presentFrom(rootViewController: self, animated: true)
Objective-C
TCMaskView *maskView = [[TCMaskView alloc] initWithImage:image];
maskView.delegate = self;
[maskView presentFromRootViewController:self animated:true];
The delegate of the TCMaskView can be used to be notified when the user cancels or completes the edit. In last case the function tcMaskViewDidComplete(mask:image:) is called.
TCMask is provided by TCMaskViewDelegate functions as the first parameter when the user cancels or completes the edit. For example, when the user completes the edit with TCMaskView:
swift
func tcMaskViewDidComplete(mask: TCMask, image: UIImage) {}
Objective-C
- (void)tcMaskViewDidCompleteWithMask:(TCMask *)mask image:(UIImage *)image {}
TCMask is an encapsulation of image masking result from TCMaskView, it has the following properties:
TCMaskView. Each element in data represents the mask value.TCMaskView.TCMask also provides some simple and easy to use functions to process layer mask with image. For example, to cutout an object:
Swift
let outputImage = mask.cutout(image: image, resize: false)
Objective-C
UIImage *outputImage = [mask cutoutWithImage:image resize:false];
To try these examples, and find out about more options please take a look at the Examples.
The MIT license
3,527 followers · starred Jan 2019
1,338 followers · starred Jun 2017
42 followers · starred Jul 2017
70 followers · starred Jun 2017
A smart and easy-to-use image masking and cutout SDK for mobile apps.
See the codeA smart and easy-to-use image masking and cutout SDK for mobile apps.
TinyCrayon SDK provides tools for adding image cutout and layer mask capabilities to your mobile applications.
![]() | ![]() |
|---|---|
| Quick Select Tool | Hair Brush Tool |
TinyCrayon SDK provides tools for adding image cutout and layer mask capabilities to your mobile applications.
Image layer mask is a fundamental technique in image manipulations. It allows you to selectively modify the opacity (transparency) of the layer they belong to. This flexibility to define the opacity of different areas of a layer is the basis for more interesting image manipulation techniques such as selective coloring and luminosity masking.
The current version of TinyCrayon SDK provides the following three tools:

If your project is using Objective-C, set Always Embed Swift Standard Libraries to be YES in your Build Settings.
The TCMaskView class is responsible to create a UIViewController for the user to mask the image.
To present a TCMaskView:
Swift
let maskView = TCMaskView(image: image)
maskView.delegate = self
maskView.presentFrom(rootViewController: self, animated: true)
Objective-C
TCMaskView *maskView = [[TCMaskView alloc] initWithImage:image];
maskView.delegate = self;
[maskView presentFromRootViewController:self animated:true];
The delegate of the TCMaskView can be used to be notified when the user cancels or completes the edit. In last case the function tcMaskViewDidComplete(mask:image:) is called.
TCMask is provided by TCMaskViewDelegate functions as the first parameter when the user cancels or completes the edit. For example, when the user completes the edit with TCMaskView:
swift
func tcMaskViewDidComplete(mask: TCMask, image: UIImage) {}
Objective-C
- (void)tcMaskViewDidCompleteWithMask:(TCMask *)mask image:(UIImage *)image {}
TCMask is an encapsulation of image masking result from TCMaskView, it has the following properties:
TCMaskView. Each element in data represents the mask value.TCMaskView.TCMask also provides some simple and easy to use functions to process layer mask with image. For example, to cutout an object:
Swift
let outputImage = mask.cutout(image: image, resize: false)
Objective-C
UIImage *outputImage = [mask cutoutWithImage:image resize:false];
To try these examples, and find out about more options please take a look at the Examples.
The MIT license
3,527 followers · starred Jan 2019
1,338 followers · starred Jun 2017
42 followers · starred Jul 2017
70 followers · starred Jun 2017