我正在尝试将两张图片合二为一。这是我正在使用的代码:
UIImage* image1 = [UIImage imageNamed:@"1.tif"];
UIImage* image2 = [UIImage imageNamed:@"sign.tif"];
UIGraphicsBeginImageContext(image1.size);
[image1 drawInRect:CGRectMake(0, 0, image1.size.width, image1.size.height)];
[image2 drawInRect:CGRectMake(0, 0, image2.size.width, image2.size.height)];
UIImage *combinedImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
imageView1.image = combinedImage;
它在模拟器中完美运行但在设备上不起作用。我得到一个白色的屏幕。任何人都可以帮助我。
任何帮助将不胜感激。
答案 0 :(得分:2)
尝试使用此功能:
- (UIImage * ) mergeImage: (UIImage *) imageA
withImage: (UIImage *) imageB
strength: (float) strength {
UIGraphicsBeginImageContextWithOptions(CGSizeMake([imageA size].width,[imageA size].height), NO, 0.0);
[imageA drawAtPoint: CGPointMake(0,0)];
[imageB drawAtPoint: CGPointMake(0,0)
blendMode: kCGBlendModeNormal // you can play with this
alpha: strength]; // 0 - 1
UIImage *mergedImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return mergedImage;
}
并称之为:
UIImage* image1 = [UIImage imageNamed:@"1.tif"];
UIImage* image2 = [UIImage imageNamed:@"sign.tif"];
UIImage *mergedImage =[self mergeImage:image1 withImage:image2 strength:1];