2011-04-23 5 views
0

J'essaie de fusionner deux UIImageViews. La première UIImageView (theimageView) est l'arrière-plan et la deuxième UIImageView (Birdie) est une image superposée à la première UIImageView. Vous pouvez charger le premier UIImageView à partir d'une carte ou prendre une photo. Après cela, vous pouvez faire glisser, faire pivoter et mettre à l'échelle la deuxième UIImageView sur la première. Je veux que la sortie (image enregistrée) ressemble à ce que je vois sur l'écran.Superposition de UIImageview sur UIImageview save

Je me suis mis au travail, mais j'ai des bordures et la qualité et la taille sont mauvaises. Je veux que la taille soit la même que celle de l'image choisie, et que la qualité soit bonne. Aussi, je reçois un crash si je le sauvegarde une seconde fois, juste après la première fois.

Voici mon code actuel:

//save actual design in photo library 
- (void)captureScreen { 
    UIImage *myImage = [self addImage:theImageView ToImage:Birdie]; 
    [myImage retain]; 
    UIImageWriteToSavedPhotosAlbum(myImage, self, @selector(imageSavedToPhotosAlbum:didFinishSavingWithError:contextInfo:), self); 
} 


- (UIImage*) addImage:(UIImage*)theimageView toImage:(UIImage*)Birdie{ 
    CGSize size = CGSizeMake(theimageView.size.height, theimageView.size.width); 
    UIGraphicsBeginImageContext(size); 

    CGPoint pointImg1 = CGPointMake(0,0); 
    [theimageView drawAtPoint:pointImg1 ]; 

    CGPoint pointImage2 = CGPointMake(0, 0); 
    [Birdie drawAtPoint:pointImage2 ]; 

    UIImage* result = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 

    return result; 
} 

Mais je n'obtiens des erreurs avec ce code! Merci à l'avance!

Répondre