捕获UIView作为UIImage
我一直在使用这种方法将UIView
转换为UIImage
。 即视图的屏幕快照 –
@interface UIView(Extended) - (UIImage *) imageByRenderingView; @end @implementation UIView(Extended) - (UIImage *)imageByRenderingView { UIGraphicsBeginImageContext(self.bounds.size); [self.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage *resultingImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return resultingImage; } @end
要使用它,我这样做 –
UIImage *currImage = [self.view imageByRenderingView];
这给出了整个UIView
的图像表示。 现在我想要2张图片,一张是UIView
的上半部分,另一张是下半部分。 我怎么做?
你可以使用下面的代码将你的UIImage
分成两部分:
CGImageRef topOfImageCG = CGImageCreateWithImageInRect(currImage.CGImage, CGRectMake(0, 0, currImage.size.width, currImage.size.height / 2.0)); UIImage *topOfImage = [UIImage imageWithCGImage:topOfImageCG]; CGImageRelease(topOfImageCG);