2011-06-15 82 views
4

每次我使用相机拍照时,然后保存图像始终处于横向。这意味着我的Xib中的UIImageView是错误的。它的肖像 - 这是我想要的和预期的。我可以通过将图像旋转90度来纠正这种情况,但即使如此,我仍然无法禁用显示原始风景照片以及动画旋转本身的动画。我怎样才能确保从相机的UIImageView实际上是在纵向模式保存时,而不是风景,我怎样才能禁用在CGAffineTranformationMakeRotation期间的动画?UIImagePNGRepresentation ..... writeToFile始终是风景

回答

2

我发现这个职位是非常有益的,它描述了加入一个类别的UIImage您保存之前做图像的旋转:

http://www.platinumball.net/blog/2009/03/30/iphone-uiimage-rotation-and-mirroring/

,然后一旦该类别中实现,你会做这样的事情:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
    UIImage *originalImage, *editedImage, *rotatedImage; 

    editedImage = (UIImage *)[info objectForKey:UIImagePickerControllerEditedImage]; 
    originalImage = (UIImage *)[info objectForKey:UIImagePickerControllerOriginalImage]; 

    if (editedImage) 
    { 
     rotatedImage = [editedImage rotate:UIImageOrientationRight]; 
    } 
    else 
    { 
     rotatedImage = [originalImage rotate:UIImageOrientationRight]; 
    } 

    NSString *f = @"/set/this/to/your/file/name"; 
    [UIImagePNGRepresentation(rotatedImage) writeToFile:f atomically:YES]; 

    [[picker parentViewController] dismissModalViewControllerAnimated:YES]; 
    [picker release]; 
}