Как удалить фоновый цвет UIImage и сделать его прозрачным? - PullRequest
2 голосов
/ 03 октября 2011

Я хотел удалить цвет фона UIImage и сделать его прозрачным ...

Я пробовал это, но следующий код просто менял белый цвет фона на черный.

   UIImage* createColorMaskedImage(UIImage* originalImage){
float maskingColors[6] = {0xEE, 0xFF, 0xEE, 0xFF, 0xEE, 0xFF};
CGImageRef maskedImageRef = CGImageCreateWithMaskingColors(originalImage.CGImage,     maskingColors);
UIImage* maskedImage = [UIImage imageWithCGImage:maskedImageRef];
CGImageRelease(maskedImageRef);
return maskedImage;
}


UIImage *watchImage = [UIImage imageNamed:@"watch2.jpg"];
// Mask image
colorMaskImage_ = createColorMaskedImage(watchImage);
//create image view and set its poistion.
UIImageView* maskImageView = [[UIImageView alloc] initWithImage:colorMaskImage_];
CGRect frame = maskImageView.frame;
frame.origin = CGPointMake(80,60);
maskImageView.frame = frame;
maskImageView.backgroundColor = [UIColor clearColor];
[self.view addSubview:maskImageView];
[maskImageView release];

1 Ответ

0 голосов
/ 03 октября 2011

Ваш watch2.jpg, вероятно, не имеет альфа-значений, что позволило бы иметь прозрачные области.

...