UIGraphicsGetImageFromCurrentImageContext: dividir la image en dos crea un background negro

Me gustaría dividir un UIImage en dos imágenes individuales. Utilizo el siguiente código (de trabajo).

UIImage *splitMeInTwo = [UIImage imageNamed:@"Star.png"]; UIImageView *original = [[UIImageView alloc] initWithImage:splitMeInTwo]; [self.view addSubview:original]; [original release]; // The size of each part is half the height of the whole image CGSize size = CGSizeMake([splitMeInTwo size].width, [splitMeInTwo size].height/2); // Create image-based graphics context for top half UIGraphicsBeginImageContextWithOptions(size, TRUE, 0.0); // Draw into context, bottom half is cropped off //[image drawAtPoint:CGPointMake(0.0,0.0)]; [splitMeInTwo drawAtPoint:CGPointMake(0.0,0.0) blendMode:kCGBlendModeNormal alpha:1.0]; // Grab the current contents of the context as a UIImage // and add it to our array UIImage *top = UIGraphicsGetImageFromCurrentImageContext(); UIImageView *topV = [[UIImageView alloc] initWithImage:top]; CGRect frameTop = topV.frame; frameTop.origin.x += 360.0f; topV.frame = frameTop; [self.view addSubview:topV]; [topV release]; UIGraphicsEndImageContext(); 

=> El resultado http://dl.dropbox.com/u/1503795/Star.png

Este código funciona bien, pero el UIImage que obtengo de "UIGraphicsGetImageFromCurrentImageContext" siempre tiene un background negro.

¿Cómo puedo dividir el "splitMeInTwo" -UIIMage y mantener el background transparente?

¡Gracias!

ACTUALIZACIÓN: El enlace de imágenes ahora funciona, lo siento;)

Intente configurar el parámetro opaco en NO .

 UIGraphicsBeginImageContextWithOptions(size, NO, 0.0); 

Yo tuve el mismo problema. Utilizar

[[UIColor whiteColor] set];

antes de llamar a drawInRect. Para que el background esté configurado en whiteColor. Y obtendrás la image en color que necesitas.