** 我有两个图像视图,一个用于背景,一个用于前景,我正在前景图像视图上绘图。对于擦除功能,我这样做是因为我不想在擦除时擦除背景图像。它做得很好。现在我想保存该图像(背景+前景),我需要通过邮件对其进行打磨。这可能吗?**
- (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];
}