2012-07-11 50 views
2
UIGraphicsBeginImageContext(theView.contentSize); 
CGContextRef context = UIGraphicsGetCurrentContext(); 

[theView setNeedsLayout]; 
[theView.layer renderInContext:context]; 
UIImage *theImage = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 
NSLog(@"theImage %@",theImage); 
return theImage; 

我想保存textView的图片,但无法抓住完整的textView。图像仅显示屏幕上显示的文字。我不是美国人,所以我的英语很差,我无法从我们的技术支持网站得到答案。保存图片的文字查看

+0

你最终的目标是什么?你为什么要保存textView的图像? – Pochi 2012-07-12 00:20:13

+0

,因为微博在中国有140个字数的限制。 – user1518142 2012-07-12 02:25:01

回答

1

该代码所做的实质上是截图,所以没有真正的方法让它显示完整的UITextView。即使试图以编程方式滚动UITextView,并将该区域的几张屏幕截图在最终图像上拼接在一起,将会是一场噩梦,而且具有不同的输入长度,因此无法知道在不切断文本的情况下滚动多远。

我推荐使用this great answer将UITextView调整为您的内容大小,抓取图像,然后如果需要,将其恢复到原始高度。

+0

非常感谢。 – user1518142 2012-07-12 02:29:35

+0

我基本上这样做了,而不是调整原始文本视图的大小,制作了文本视图的副本并调整了大小。 [我的解决方案在这里](http://stackoverflow.com/a/37054449/3681880)。 – Suragch 2016-05-05 15:37:07