在iPad上拍摄部分截图

时间:2011-08-03 23:38:03

标签: iphone objective-c ipad screenshot partial

我正试图在保存时截取屏幕截图,但只能全屏显示。有没有办法拍摄部分截图?

这是一个示例。假设我只想截取以红色突出显示的部分的屏幕截图。谢谢您的帮助。

http://img197.imageshack.us/img197/6499/sampleimagez.jpg

1 个答案:

答案 0 :(得分:4)

看起来你想要那个网页视图的截图。如果要获取特定视图的图像并仅获取该视图(+子视图),可以使用以下代码:

- (UIImage*)captureView:(UIView*)view
{ 
    if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)])
        UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, [UIScreen mainScreen].scale);
    else
        UIGraphicsBeginImageContext(self.view.bounds.size);

    CGContextRef context = UIGraphicsGetCurrentContext();

    [view.layer renderInContext:context];

    UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    return img;
}

只需将网络视图传递给该功能即可。

编辑:

假设这只是一个示例图像,并且您想要一个未包含在其自己视图中的区域的屏幕截图,请使用Canada Dev的解决方案。将图像裁剪到您想要的区域。