UIImagePickerController-Fehler

Ich glaube, ich habe einen Fehler in iOS 7 gefunden, indem ich eine App mit Base SDK auf iOS 6.1 ausgeführt habe (möglicherweise auch niedrigere Versionen, habe das noch nicht getestet).

Ich habe dieses Bild in meiner Fotobibliothek:http://i.imgur.com/7KUIGLt.jpg

Ich präsentiere einen UIImagePickerController über:

UIImagePickerController *vc = [[UIImagePickerController alloc] init];
vc.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
vc.delegate = self;
vc.allowsEditing = YES;
[self presentViewController:vc animated:YES completion:nil];

Ich speichere das ausgewählte Bild auf meinem Desktop (ich führe dies auf dem Simulator aus, aber das funktioniert auch auf dem Gerät)

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {

    UIImage* outputImage = [info objectForKey:UIImagePickerControllerEditedImage];
    if (outputImage == nil) {
        outputImage = [info objectForKey:UIImagePickerControllerOriginalImage];
    }
    NSData *d = UIImagePNGRepresentation(outputImage);
    [d writeToFile:@"/Users/Admin/Desktop/test.png" atomically:YES];
    [self dismissViewControllerAnimated:YES completion:nil];
}

Dies ist das resultierende Bild:

Beachten Sie den großen schwarzen Balken rechts. Was ist der Grund dafür?

Um dies zu reproduzieren, benötigen Sie:

iOS 7App mit Base SDK auf 6.1 (möglicherweise auch niedrigere SDKs, ich habe es noch nicht ausprobiert)iPhone 5 / 5c / 5sDies betrifft nur Bilder, die mit einer iPhone 5 / 5c / 5s-Kamera aufgenommen wurden (Sie können das oben verlinkte Originalbild zum Testen verwenden).

HINWEIS: Um es klar auszudrücken, der schwarze Balken ist Teil des tatsächlichen Bildes. Das Bild, das Sie dort sehen, ist kein Screenshot von UIImageView, sondern das tatsächliche Bild, das auf der Festplatte gespeichert und hier hochgeladen wurde ...

Antworten auf die Frage(4)

Ihre Antwort auf die Frage