2012-01-29 2 views
1

카메라에서 이미지를 가져 와서 새로운 방향으로 회전시킨 다음 일반 판지 위에 붙여 넣습니다. 그러나, 내가 방향으로 무엇을 전달하든, 나중에 pasteboard 붙여 넣기 명령에 의해 붙여 넣기되는 것은 UIImageOrientationUp 인 것처럼 지향됩니다.UIPasteboard에서 내가 사용하는 이미지 방향을 무시하는 이유는 무엇입니까?

CGImageRef croppedImageRef = CGImageCreateWithImageInRect([self CGImage], CGRectMake(rect.origin.y, [self size].width - rect.origin.x - rect.size.width, rect.size.height, rect.size.width)); 
    UIImage *croppedImage = [UIImage imageWithCGImage:croppedImageRef scale:self.scale orientation:orientation]; 
    CGImageRelease(croppedImageRef); 
    [[UIPasteboard generalPasteboard] setImage:croppedImage]; 

나는 성공적으로 카메라에서 이미지를 회전하고 사진 앨범에 삽입하는 유사한 코드를 사용

CGImageRef croppedImageRef = CGImageCreateWithImageInRect([self CGImage], CGRectMake(rect.origin.y, [self size].width - rect.origin.x - rect.size.width, rect.size.height, rect.size.width)); 
    UIImage *croppedImage = [UIImage imageWithCGImage:croppedImageRef scale:self.scale orientation:orientation]; 
    CGImageRelease(croppedImageRef); 
    [self writeUIImageToCameraRoll:croppedImage withOrientation:orientation]; 

어떻게 이미지가 나는 대지를 위해 원하는대로 회전받을 수가? 붙여 넣기 동작이 EXIF ​​방향을 사용합니까? 그렇다면 imageWithCGImage가 원래 EXIF를 새 이미지로 복사합니까?

답변

0

저는 페이스트 보드가 이미지에 첨부 된 EXIF ​​데이터를 제거하는 PNG를 선호한다고 생각합니다.

NSLog(@"UIPasteboardTypeListImage: %@", UIPasteboardTypeListImage); 그물 :

NSData *jpegData = UIImageJPEGRepresentation(img, 1.0); 
[[UIPasteboard generalPasteboard] setData:jpegData forPasteboardType:(id)kUTTypeJPEG]; 
... 
NSData *pbImgData = [[UIPasteboard generalPasteboard] dataForPasteboardType:(id)kUTTypeJPEG]; 
UIImage *pbImg = [UIImage imageWithData:pbImgData]; 

또는 대지에서 그것을 가져 오는 후 이미지의 방향을 재설정 : 작업 차선책에 대한

UIPasteboardTypeListImage: (
    "public.png", 
    "public.tiff", 
    "public.jpeg", 
    "com.compuserve.gif" 
) 

옵션은 대지에 JPEG 데이터를 저장하는 것입니다 :

[[UIPasteboard generalPasteboard] setImage:img]; 
... 
UIImage *pbImg = [[UIPasteboard generalPasteboard] image]; 
UIImage *correctedImage = [UIImage imageWithCGImage:[pbImg CGImage] scale:pbImg.scale orientation:__whateverOrientationDesired]; 
관련 문제