无意中发现锤子便签里面可以将UItextview中图文一图片的形式分享,就了解了下,最开始找到的只有关于UIview控件截图,对于UItextview编辑的内容比较长,发现用UIview控件的方法只能截取到屏幕上显示的内容。开始想象的可难,最后发现其实就是frame的问题,看代码:
- 1.关于UItextview截图显示一半的问题
-(UIImage *)setImage
{
UIImage* image = nil;
UITextView *textView = textV;
CGPoint saveContentOffset = textView.contentOffset;
CGRect saveFrame = textView.frame;
//frame 高度要设置成这个textView.contentSize.height
UIGraphicsBeginImageContextWithOptions(textView.contentSize, textView.opaque, 0.0);
textView.contentOffset = CGPointZero;
textView.frame = CGRectMake(0, 0, textView.contentSize.width, textView.contentSize.height);
[textView.layer renderInContext: UIGraphicsGetCurrentContext()];
image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
textView.contentOffset = saveContentOffset;
textView.frame = saveFrame;
return image;
}
另外也贴上UIview截图的方法:
-(UIImage *)screenShotFrom:(UITextView *)view frame:(CGRect)frame
{
UIGraphicsBeginImageContextWithOptions(frame.size, NO, 0.0);
//获取图像
[view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
参考:http://blog.csdn.net/wang_yuewen/article/details/74985914

浙公网安备 33010602011771号