Created
July 17, 2013 17:00
-
-
Save centwave/6022412 to your computer and use it in GitHub Desktop.
Image With Color burn
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// begin a new image context, to draw our colored image onto | |
UIGraphicsBeginImageContext(img.size); | |
// get a reference to that context we created | |
CGContextRef context = UIGraphicsGetCurrentContext(); | |
// set the fill color | |
[color setFill]; | |
// translate/flip the graphics context (for transforming from CG* coords to UI* coords | |
CGContextTranslateCTM(context, 0, img.size.height); | |
CGContextScaleCTM(context, 1.0, -1.0); | |
// set the blend mode to color burn, and the original image | |
CGContextSetBlendMode(context, kCGBlendModeColorBurn); | |
CGRect rect = CGRectMake(0, 0, img.size.width, img.size.height); | |
CGContextDrawImage(context, rect, img.CGImage); | |
// set a mask that matches the shape of the image, then draw (color burn) a colored rectangle | |
CGContextClipToMask(context, rect, img.CGImage); | |
CGContextAddRect(context, rect); | |
CGContextDrawPath(context,kCGPathFill); | |
// generate a new UIImage from the graphics context we drew onto | |
UIImage *coloredImg = UIGraphicsGetImageFromCurrentImageContext(); | |
UIGraphicsEndImageContext(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment