Jak zrobić zrzut ekranu widocznego obszaru UIScrollView?

Jak zrobić zrzut ekranu 1: 1 widocznego obszaru UIScrollView? Treść może być większa lub mniejsza niż ograniczenia UIScrollView, a także w połowie ukryta (zaimplementowałem niestandardowe przewijanie dla mniejszej zawartości, więc nie ma go w lewym górnym rogu). Osiągnąłem pożądany wynik na symulatorze, ale nie na samym urządzeniu:

-(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;
}