Как сделать скриншот видимой области UIScrollView?

Как сделать снимок экрана 1: 1 видимой области UIScrollView? Контент может быть больше или меньше, чем границы UIScrollView, а также наполовину скрыт (я реализовал пользовательскую прокрутку для контента меньшего размера, поэтому он не находится в верхнем левом углу). Я достиг желаемого результата на симуляторе, но не на самом устройстве:

-(UIImage *)imageFromCombinedContext:(UIView *)background {
      UIImage *image;
      CGRect vis = background.bounds;
      CGSize size = vis.size;
      UIGraphicsBeginImageContext(size);
      [background.layer affineTransform];
      [background.layer renderInontext:UIGraphicsGetCurrentContext()];
      image = UIGraphicsGetImageFromCurrentImageContext();
      UIGraphicsEndImageContext();
      CGImageRef imref = CGImageCreateWithImageInRect([image CGImage], vis);
      image = [UIImage imageWithCGImage:imref];
      CGImageRelease(imref);
      return image;
}

Ответы на вопрос(8)

Ваш ответ на вопрос