** i have two image views one for background and one for foreground and i am drawing on foreground imageview.for the erase functionality i am doing this because i do not want to erase background image at the time of erase.its doing fine.now i want to save that image(background + foreground) and i need to sand that by mail.it is possible? **
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
if (doodlemode==YES){
UITouch *touch = [touches anyObject];
previousPoint2 = previousPoint1;
previousPoint1 = [touch previousLocationInView:self.view];
currentPoint = [touch locationInView:self.view];
// calculate mid point
CGPoint mid1 = midPoint(previousPoint1, previousPoint2);
CGPoint mid2 = midPoint(currentPoint, previousPoint1);
UIGraphicsBeginImageContext(imageDoodle.frame.size);
CGContextRef context = UIGraphicsGetCurrentContext();
[imgView.image drawInRect:CGRectMake(0, 0, imageDoodle.frame.size.width,
imageDoodle.frame.size.height)];
CGContextMoveToPoint(context, mid1.x, mid1.y);
CGContextAddQuadCurveToPoint(context, previousPoint1.x, previousPoint1.y, mid2.x, mid2.y);
CGContextSetLineCap(context, kCGLineCapRound);
[imgView.layer renderInContext:UIGraphicsGetCurrentContext()];
//this is for erase
if(IsErase)
{
CGContextSetBlendMode(context,kCGBlendModeClear);
}
//make a strok color
else
{
CGContextSetRGBStrokeColor(UIGraphicsGetCurrentContext(), redvalue, greenvalue, bluevalue,
1.0);
}
CGContextSetLineWidth(UIGraphicsGetCurrentContext(), 8.0);
//size of stroke
CGContextStrokePath(UIGraphicsGetCurrentContext());
imgView.image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
}
}
-(IBAction)sharePrint{
//Compose email with activity sheet attached
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
[UIImage imageNamed:@"feedback.png"]]];
*//here i nedd to sand that. Image how can i?*
NSData *imageData = UIImagePNGRepresentation(imgView.image);
[picker addAttachmentData:imageData mimeType:@"image/png" fileName:@"shared.png"];
//Show Mail view with composed email
[self presentModalViewController:picker animated:YES];
}
- (void) someMethod { UIImage *newImage = [self captureScreen]; IBbtn1.hidden = FALSE; IBbtn2.hidden = FALSE; } - (UIImage *) captureScreen { IBbtn1.hidden = TRUE; IBbtn2.hidden = TRUE; CGRect rect = [wrapperView bounds]; UIGraphicsBeginImageContext(rect.size); CGContextRef context = UIGraphicsGetCurrentContext(); [wrapperView.layer renderInContext:context]; UIImage *img = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return img; }