如何将多个UIImageViews合并为一个UIImage

时间:2010-04-01 11:50:19

标签: iphone uiimageview camera

我有2个UIImageViews相互叠加(图片+覆盖框架),我想将它们保存到相机胶卷上作为1张图片。

我应该如何组合这两个UIImageViews,以便使用'result'UIImage调用UIImageWriteToSavedPhotosAlbum函数?

2 个答案:

答案 0 :(得分:15)

+ (UIImage * ) mergeImage: (UIImage *) imageA
                                 withImage:  (UIImage *) imageB
                                 strength: (float) strength {

UIGraphicsBeginImageContextWithOptions(CGSizeMake(imageA.size.width, imageA.size.height), YES, 0.0); 

[imageA drawAtPoint: CGPointMake(0,0)];

[imageB drawAtPoint: CGPointMake(0,0) 
          blendMode: kCGBlendModeNormal // you can play with this
              alpha: strength]; // 0 - 1

UIImage *answer = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext();
return answer; }

答案 1 :(得分:4)

我目前没有附近的Mac,但我之前已经这样做了。 过程是您将UIImageView呈现为位图上下文,然后从该上下文创建CGImage,您可以使用该UIImage创建新的{{1}}。 阅读CGBitmapContext,包括CGBitmapContextCreateImage