Ich kodiere, um die Kamera des iPad zu verwenden, um Bilder zu meiner App hinzuzufügen. Meine App ist im Hochformat, die Kamera wird im Hochformat angezeigt, aber das von der Kamera aufgenommene Bild wird um 90 Grad gedreht, wenn es zu meiner App hinzugefügt wird. Beim Speichern in Fotos Album ist es in Ordnung. Warum wird das Bild in meiner App gedreht?iPad - Verwenden der Kamera - Bilder drehen
1
A
Antwort
0
Hai finde ich eine andere Lösung, indem einfach eine Zeile Code überprüfen ..
EDIT: Es ist ähnlich (fast gleich) Sie in dem Link gegebene Antwort .. Sorry..I hat es nicht ganz fest: . (
- (void) imagePickerController:(UIImagePickerController *)thePicker didFinishPickingMediaWithInfo:(NSDictionary *)imageInfo {
// Images from the camera are always in landscape, so rotate
UIImage *image = [self scaleAndRotateImage: [imageInfo objectForKey:UIImagePickerControllerOriginalImage]];
//then save the image to photo gallery or wherever
}
- (UIImage *) scaleAndRotateImage: (UIImage *)image
{
int kMaxResolution = 320; // Or whatever
CGImageRef imgRef = image.CGImage;
CGFloat width = CGImageGetWidth(imgRef);
CGFloat height = CGImageGetHeight(imgRef);
CGAffineTransform transform = CGAffineTransformIdentity;
CGRect bounds = CGRectMake(0, 0, width, height);
if (width > kMaxResolution || height > kMaxResolution) {
CGFloat ratio = width/height;
if (ratio > 1) {
bounds.size.width = kMaxResolution;
bounds.size.height = bounds.size.width/ratio;
}
else {
bounds.size.height = kMaxResolution;
bounds.size.width = bounds.size.height * ratio;
}
}
CGFloat scaleRatio = bounds.size.width/width;
CGSize imageSize = CGSizeMake(CGImageGetWidth(imgRef), CGImageGetHeight(imgRef));
CGFloat boundHeight;
UIImageOrientation orient = image.imageOrientation;
switch(orient) {
case UIImageOrientationUp: //EXIF = 1
transform = CGAffineTransformIdentity;
break;
case UIImageOrientationUpMirrored: //EXIF = 2
transform = CGAffineTransformMakeTranslation(imageSize.width, 0.0);
transform = CGAffineTransformScale(transform, -1.0, 1.0);
break;
case UIImageOrientationDown: //EXIF = 3
transform = CGAffineTransformMakeTranslation(imageSize.width, imageSize.height);
transform = CGAffineTransformRotate(transform, M_PI);
break;
case UIImageOrientationDownMirrored: //EXIF = 4
transform = CGAffineTransformMakeTranslation(0.0, imageSize.height);
transform = CGAffineTransformScale(transform, 1.0, -1.0);
break;
case UIImageOrientationLeftMirrored: //EXIF = 5
boundHeight = bounds.size.height;
bounds.size.height = bounds.size.width;
bounds.size.width = boundHeight;
transform = CGAffineTransformMakeTranslation(imageSize.height, imageSize.width);
transform = CGAffineTransformScale(transform, -1.0, 1.0);
transform = CGAffineTransformRotate(transform, 3.0 * M_PI/2.0);
break;
case UIImageOrientationLeft: //EXIF = 6
boundHeight = bounds.size.height;
bounds.size.height = bounds.size.width;
bounds.size.width = boundHeight;
transform = CGAffineTransformMakeTranslation(0.0, imageSize.width);
transform = CGAffineTransformRotate(transform, 3.0 * M_PI/2.0);
break;
case UIImageOrientationRightMirrored: //EXIF = 7
boundHeight = bounds.size.height;
bounds.size.height = bounds.size.width;
bounds.size.width = boundHeight;
transform = CGAffineTransformMakeScale(-1.0, 1.0);
transform = CGAffineTransformRotate(transform, M_PI/2.0);
break;
case UIImageOrientationRight: //EXIF = 8
boundHeight = bounds.size.height;
bounds.size.height = bounds.size.width;
bounds.size.width = boundHeight;
transform = CGAffineTransformMakeTranslation(imageSize.height, 0.0);
transform = CGAffineTransformRotate(transform, M_PI/2.0);
break;
default:
[NSException raise:NSInternalInconsistencyException format:@"Invalid image orientation"];
}
+0
wo ist die Methode "scaleAndRotateImage"? – Satyam
+0
Eigentlich habe ich die Methode von diesem Link https://discussions.apple.com/thread/1537011?start=0&tstart=0 –
Verwandte Themen
- 1. Three.js So verwenden Sie quaternion zum Drehen der Kamera
- 2. Kamera drehen in Matter.js
- 3. Xamarin.Mobile iPad Kamera Größe
- 4. iPad Kamera Verbindungskit?
- 5. Bilder in Javascript drehen
- 6. Nehmen Sie Bilder mit der iPad-Kamera mit Selenium und Appium
- 7. Flackernde Bilder beim Drehen
- 8. ipad - Bilder aus der Anwendung extrahieren?
- 9. Wie beschneiden Bilder von der Kamera
- 10. 3D-Bilder mit Javascript drehen
- 11. 3D-Bilder mit Javascript drehen
- 12. Kamera im 3D-Raum drehen und übersetzen
- 13. webgl Kamera um die X-Achse drehen
- 14. Kamera Oberflächenansicht Bilder Gestrecktes Bild
- 15. Eine Kamera um eine Achse drehen?
- 16. Overlay Bilder auf Kamera Vorschau SurfaceView
- 17. Android: Bitmap einmal drehen oder EXIF-Ausrichtung verwenden, um Bildansicht zu drehen
- 18. iOS uiscrollview Bilder drehen, während der Benutzer scrollt
- 19. Aktuelle Bilder von einer Kamera anzeigen - AKTUALISIERT
- 20. Retina Bilder (@ 2x ~ iPad) nicht geladen, wenn iPad Bild nicht existiert (~ iPad)
- 21. Drehen von separaten iPad/iPhone-Zielen in Universal-App
- 22. Three.js Kamera um ein Objekt drehen (das sich bewegen kann)
- 23. Bilder mit Zeitverzögerung erfassen - iPhone Kamera
- 24. Verwenden der Kamera im Hochformat Ausrichtung
- 25. Verwenden der Kamera im Android-Emulator
- 26. Codova Kamera Plugin Bilder aus der Galerie löschen
- 27. So nehmen Sie mehrere Bilder von der Kamera ios
- 28. schnelle Core-Daten: Bilder von der Kamera speichern
- 29. Kamera nimmt nur Bilder im Portrait-Modus
- 30. iPhone Kamera Bilder werden gedreht, wenn ins Web hochgeladen
unmöglich ohne einen entsprechenden Code kennen – danielbeard
fand ich die Antwort von der URL: http://stackoverflow.com/questions/538041/uiimagepickercontroller-camera-preview-is-portrait-in-landscape- app – Satyam
Ich habe das gleiche Problem, wenn Sie ein Bild von der Kamera wählen, drehen das Bild bitte helfen Sie mir – SampathKumar