Объединение изображений не работает в устройстве iOS - PullRequest
0 голосов
/ 28 ноября 2011

Я пытаюсь объединить два изображения в одно.Это код, который я использую:

 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;

Он отлично работает в симуляторе, но не работает на устройстве.Я получаю белый экран.Может ли кто-нибудь, пожалуйста, помогите мне с этим.

Любая помощь будет оценена.

1 Ответ

2 голосов
/ 29 ноября 2011

Попробуйте использовать эту функцию:

- (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];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...