Obtendré UIimages de la cámara y los asignaré a UIImageViews para que se muestren. Cuando hago esto, la cámara me da una imagen de 1200 x 1600 píxeles que luego asigno a UIImageView en mi aplicación. La imagen se muestra como se espera en la vista de imagen bajo esta condición. Sin embargo, cuando trato de REDIMENSIONAR el UIImage recuperado antes de asignarlo a UIImageView, la imagen cambia de tamaño como se esperaba, pero ¿hay un problema en algún lugar (en el código de RESIZING?) Mi UIImage se está GIRANDO ... Como resultado, cuando se le asigno la UIImage redimensionada a un UIImageView la imagen se gira 90 grados y se ve alargado como la relación de aspecto (1200 x 1600 píxeles) se mantuvo sin cambios ...¿Cambiar el tamaño de UIimages extraído de la cámara también GIRA la UIimage?
estoy usando esto para conseguir un UIImage de la cámara:
- (void) imagePickerController:(UIImagePickerController*)picker didFinishPickingMediaWithInfo:(NSDictionary*)info
{
myImg = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
myResizedImg = [self resizeImage:myImg width:400 height:533];
[myImageView setImage:myResizedImg];
}
estoy usando esta para cambiar su tamaño:
-(UIImage *)resizeImage:(UIImage *)anImage width:(int)width height:(int)height
{
CGImageRef imageRef = [anImage CGImage];
CGImageAlphaInfo alphaInfo = CGImageGetAlphaInfo(imageRef);
if (alphaInfo == kCGImageAlphaNone)
alphaInfo = kCGImageAlphaNoneSkipLast;
CGContextRef bitmap = CGBitmapContextCreate(NULL, width, height, CGImageGetBitsPerComponent(imageRef), 4 * width, CGImageGetColorSpace(imageRef), alphaInfo);
CGContextDrawImage(bitmap, CGRectMake(0, 0, width, height), imageRef);
CGImageRef ref = CGBitmapContextCreateImage(bitmap);
UIImage *result = [UIImage imageWithCGImage:ref];
CGContextRelease(bitmap);
CGImageRelease(ref);
return result;
}
PREGUNTA: ¿Cómo REDIMO un UIImage extraído de la cámara SIN girar los píxeles?
Sí. Gran respuesta - Gracias. – RexOnRoids
Justo lo que necesitaba (para un proyecto diferente). ¡Gracias! –
¡Gracias, esto es fantástico! –