如何对UIScrollView的可见区域进行1:1的截屏?内容可能比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;
}