Wie bekomme ich ein korrekt gedrehtes UIImage aus einer ALAssetRepresentation?

Ich versuche, eine korrekte Drehung zu erzielenUIImage von einemALAssetRepresentation Verwendung derfullScreenImage Methode. Ich habe mehrere Testfotos in verschiedenen Geräteausrichtungen aufgenommen. Die Fotos werden in der Fotos-App korrekt angezeigt. Die Dokumentation fürfullScreenImage sagt:

In iOS 5 und höher gibt diese Methode ein vollständig zugeschnittenes, gedrehtes und angepasstes Bild zurück - genau so, wie es ein Benutzer in Fotos oder in der Bildauswahl sehen würde.

So erstellen Sie eine richtig gedrehteUIImage Objekt aus demCGImage, Sie verwendenimageWithCGImage:scale:orientation: oderinitWithCGImage:scale:orientation:Übergeben der Werte vonorientation undscale.

In Anbetracht der Dokumente sieht mein Code folgendermaßen aus:

ALAssetRepresentation *rep = [asset defaultRepresentation];
UIImage *img = [UIImage
    imageWithCGImage:[rep fullScreenImage]
    scale:[rep scale]
    orientation:[rep orientation]];

Aber das ErgebnisUIImageIst falsch. Wenn ich ersetze[rep orientation] mitUIImageOrientationUpist das Bild für alle Testfotos in Ordnung. Offensichtlich zögere ich, an dieser "Lösung" festzuhalten, da es sich wie ein Hack anfühlt. Was mache ich falsch?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage