我想以横向模式拍摄截图。
目前我的下面的代码以PORTRAIT模式截取屏幕截图。
我也希望将图像存储到不在照片库中的给定位置..
我怎样才能达到这个目标......
感谢您的帮助
下面是我的代码
UIGraphicsBeginImageContext(self.view.bounds.size) ;
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(viewImage, self, nil, nil);
答案 0 :(得分:1)
据我所知,无法在横向模式下截屏。使用iPhone拍摄的图像包含一个名为imageOrientation的信息,然后用于旋转显示该图像的UIImageView。
但是您应该能够以纵向模式拍摄图像并将其旋转90度,然后再进行保存。我现在无法尝试,但以下情况应该有效:
创建一个旋转方法并将UIImage作为参数传递。
CGSize size = sizeOfImage;
UIGraphicsBeginImageContext(size);
CGContextRotateCTM(ctx, angleInRadians); // (M_PI/2) or (3M_PI/2) depending on left/right rotation
CGContextDrawImage(UIGraphicsGetCurrentContext(),
CGRectMake(0,0,size.width, size.height),
image);
UIImage *copy = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return copy;
要存储到指定位置,您可以使用NSData,因为我已回答您的其他问题(Saving images to a given location)