我在这里查看了这段代码,它可以让您截取 UIScrollView 顶部可见部分或整个 UIScrollView 的屏幕截图:
Getting a screenshot of a UIScrollView, including offscreen parts
我想要的是只截取从 contentOffset 开始的部分的屏幕截图,因为 UIScrollView 可能很长,因此截取它需要一些时间。可以这样做吗?
最佳答案
您提到的解决方案基本上是调整 ScrollView 的大小以匹配其内容的大小,因此整个内容将在没有滚动的情况下呈现然后被捕获。
如果您想应用相同的解决方案,您可以调整 ScrollView 的大小以匹配可见内容的大小 + 直到最后剩余内容的大小。
所以尝试替换这些行:
_scrollView.contentOffset = CGPointZero;
_scrollView.frame = CGRectMake(0, 0,
_scrollView.contentSize.width,
_scrollView.contentSize.height);
与:
//_scrollView.contentOffset = CGPointZero; // Don't change the offset
_scrollView.frame = CGRectMake(0, 0,
_scrollView.contentSize.width,
_scrollView.contentSize.height - _scrollView.contentOffset);
关于ios - UIScrollView截图,从contentOffset点开始?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17301767/