在一个iOS中保存两个重叠的图像

可能的重复: 保存两个重叠UIImage

在UIScrollView中,我添加了我的UIImageView,并在其上面有一个框架层 。 我想在完成编辑后将最终的图像保存在屏幕上。 回答上面提到的问题做了这项工作,但是当它画框时,导致我的图像质量下降 ,所以我正在寻找一个解决scheme,使我的形象保持良好的分辨率。 请帮我解决这个问题,提前致谢!

试试这个代码:

//merge two images for this code UIImage *bottomImage =imgview.image; //background image ////1st image UIImage *image = imgProfile.image; //foreground image///2nd image CGSize newSize = CGSizeMake(270, 330); // set your image rect UIGraphicsBeginImageContext( newSize ); // Use existing opacity as is [bottomImage drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];///1st image set frame // Apply supplied opacity if applicable [image drawInRect:CGRectMake(81,218,97,78) blendMode:kCGBlendModeNormal alpha:1]; //2nd image set frame on bottom image with alpha value UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:@"savedImage.png"]; NSData *imageData = UIImagePNGRepresentation(newImage); [imageData writeToFile:savedImagePath atomically:NO]; 

您可以在应用程序的文档目录中看到新创build的图像。