Cardo foto desde la biblioteca de iPhone/iPad, la mayoría de ellos en modo vertical, quiero saber ¿Cómo puedo verificar la foto en modo horizontal o vertical?¿Cómo saber si la foto está en modo horizontal o vertical?
Respuesta
Utilice la propiedad imageOrientation
de UIImage
instancias. Le devolverá una de las constantes these.
Ejemplo:
UIImage * image = // carga desde biblioteca
if (image.imageOrientation == UIImageOrientationUp) {
NSLog(@"portrait");
} else if (image.imageOrientation == UIImageOrientationLeft || image.imageOrientation == UIImageOrientationRight) {
NSLog(@"landscape");
}
Esto me ayudó a comenzar con la selección de álbumes y quiero agregar algo de información complementaria para tomar fotografías, ¡de lo cual no me di cuenta de que eran 2 cosas totalmente diferentes! Cuando un usuario toma una instantánea con la cámara del iPhone, la imagen no está en posición vertical, sino que de hecho gira 90 grados en el sentido contrario a las agujas del reloj. Entonces, si quisieras terminar en el bloque 'if' para 'NSLog (@' portrait ');' entonces probarías 'UIImageOrientationLeft || UIImageOrientationRight || UIImageOrientationLeftMirrored || UIImageOrientationRightMirrored' y el resto será 'landscape' – pulkitsinghal
Probé este pedazo de código en decenas de imagen real en el iPhone 4 con iOS 5.0 y era capaz de hacer con éxito todo en modo retrato. Esta es la forma de solucionar/comprueba
if (image.imageOrientation == UIImageOrientationUp ||
image.imageOrientation == UIImageOrientationDown)
{
NSLog(@"Image is in Landscape Fix it to portrait ....");
backgroundView.frame = self.view.bounds;
backgroundView.autoresizingMask=UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
backgroundView.contentMode = UIViewContentModeScaleAspectFill;
}
else
{
NSLog(@"Image is in Portrait everything is fine ...");
}
Aquí está una manera a toda prueba de hacer esta comprobación
-(void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingImage : (UIImage *)image
editingInfo:(NSDictionary *)editingInfo
{
// Get the data for the image
NSData* imageData = UIImageJPEGRepresentation(image, 1.0);
if ([UIImage imageWithData:imageData].size.width > [UIImage imageWithData:imageData].size.height)
{
NSLog(@"Select Image is in Landscape Mode ....");
}
else
{
NSLog(@"Select Image is in Portrait Mode ...");
}
}
- 1. ¿Cómo saber si un navegador está en modo "peculiar"?
- 2. cómo saber si la VM se está ejecutando en el modo de servidor o cliente?
- 3. ¿Cómo usar Zxing en modo vertical?
- 4. ¿Cómo verificar en qué posición (horizontal o vertical) está el iPhone ahora?
- 5. modo horizontal solo en tableta
- 6. Cómo horizontal y vertical center a div?
- 7. ¿Cómo se bloquea la orientación de la aplicación (horizontal o vertical)?
- 8. ¿Cómo puedo saber si se está mostrando ModalViewController?
- 9. ¿cuál es la distribución vertical y horizontal?
- 10. Cómo saber si un usuario está visitando "/Default.aspx" o simplemente "/"
- 11. Cómo saber si node.js está instalado o no
- 12. ¿Cómo puedo saber si NSTimer está activo o no?
- 13. ¿Cómo saber si OpenMP está funcionando?
- 14. Cambiar al modo horizontal en Android Emulator
- 15. ¿Cómo saber si la salida del comando "buscar" está vacía?
- 16. Determinar si MailItem está abierto en modo Redactar o Leer
- 17. AutoCompleteTextView insinúa en modo horizontal
- 18. ¿Cómo puedo saber si la pantalla está activada en Android?
- 19. Cómo saber si el dispositivo está durmiendo
- 20. Mostrar Android DialogFragment como diálogo en modo vertical y como parte de la actividad en modo horizontal
- 21. splash (iniciar imagen) en modo horizontal?
- 22. ¿Cómo saber si NSAssert está deshabilitado en versiones de lanzamiento?
- 23. ¿Cómo sabe el kernel si la CPU está en modo de usuario o en modo de keel?
- 24. Reportlab: ¿Cómo cambiar entre vertical y horizontal?
- 25. Determinar si swf está en un reproductor o modo "depurar"
- 26. iPhone - ¿Cómo puedo saber si la vibración está activada o desactivada para iOS?
- 27. PrintDialog con páginas Horizontal y Vertical
- 28. ¡Vista dividida en modo vertical!
- 29. Windows GDI: horizontal/vertical DPI
- 30. La orientación de foto capturada está cambiando en android
qué quiere conocer la orientación del dispositivo o de la foto? Puede obtener la orientación actual del dispositivo con la respuesta de Viren. De lo contrario, compare la altura y el ancho de la foto con su relación de aspecto. Pero no habría forma de conocer la orientación real. – jakev