Программно сделать снимок экрана определенной области

Как вы можете видеть в моем коде, я делаю снимок экрана и сохраняю его в фотоальбом.

//for retina displays
if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {
    UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, [UIScreen mainScreen].scale);
} else {
    UIGraphicsBeginImageContext(self.view.bounds.size);
}
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);

Вначале я использовал webview.size вместо self.view.bounds.size , и он работал правильно, потому что представление располагалось по адресу 0/0 . Но теперь я центрировал WebView, но изображения начинаются с 0/0 для данного размера.

Как настроить, чтобы снимок экрана начинался в другом месте (например, 300/150 ) для заданного размера?

Или есть другой способ сделать снимок an UIWebView ?

16
задан Rob Hruska 5 May 2012 в 16:39
поделиться