UIGraphicsGetImageFromCurrentImageContext liefert ein Bild mit schlechter Qualität und niedriger Auflösung. Wie kann ich es verbessern?

Ok also mache ich einen Screenshot von einem Foto, das ich mit meiner Kamera auf dem iPhone aufgenommen habe. Ich habe das Kamera-Foto in UIImageView eingefügt und mit dieser Art von Code einen Screenshot davon erstellt (dies ist vonhttp: //www.skylarcantu.com/blog/2009/10/16/saving-a-view-as-an-image) ...

 - (void)takeScreenshot {

    UIWindow *theScreen = [[UIApplication sharedApplication].windows objectAtIndex:0];     
    UIGraphicsBeginImageContext(theScreen.frame.size);  
    [[theScreen layer] renderInContext:UIGraphicsGetCurrentContext()];   
    UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();    
    UIGraphicsEndImageContext();              
    [self doSomethingWith:screenshot]; 
}

Ich habe es so, wie ich es möchte, aber die Bildqualität des Screenshots ist viel schlechter als das Bild, das ich mit meiner Kamera aufnehme. Gibt es einen Weg, dies zu überwinden? Ich vermute, das liegt daran, dass hier ein Screenshot aufgenommen wird, der die Auflösung des iPhone-Bildschirms und nicht die Auflösung der Kamera erfasst - vielleicht?!

Irgendwelche Vorschläge wären toll: -)