iOS 开发_UIImage剪切+按照一定尺寸重绘图片

【作者前言】:13年入圈,分享些本人工作中遇到的点点滴滴那些事儿,17年刚开始写博客,高手勿喷!以分享交流为主,欢迎各路豪杰点评改进!

1.应用场景:

Paste_Image.png

2.实现目标:

对一张图片的指定的部分进行剪切,剪切后形成新的图片

3.代码说明:

①剪切

#pragma mark -
#pragma mark - yp_imagecutWithOriginalImage: withCutRect: 根据指定的范围剪切图片中的一部分
/** originalImage:原图片   rect:需要剪切的位置*/
- (UIImage *)yp_imagecutWithOriginalImage:(UIImage *)originalImage withCutRect:(CGRect)rect {
    CGImageRef subImageRef = CGImageCreateWithImageInRect(originalImage.CGImage, rect);
    CGRect smallRect = CGRectMake(0, 0, CGImageGetWidth(subImageRef), CGImageGetHeight(subImageRef));
    // 开启图形上下文
    UIGraphicsBeginImageContext(smallRect.size);
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextDrawImage(context, smallRect, subImageRef);
    UIImage * image = [UIImage imageWithCGImage:subImageRef];
    // 关闭图形上下文
    UIGraphicsEndImageContext();
    
    CGImageRelease(subImageRef);
    
    return image;
}

②+按照一定尺寸重绘图片

#pragma mark -
#pragma mark - yp_imageWithOriginalImage: withScaleSize: 将图片重新按照一定的尺寸绘制出来
- (UIImage *)yp_imageWithOriginalImage:(UIImage *)originalImage withScaleSize:(CGSize)size {
    UIGraphicsBeginImageContext(size);
    [originalImage drawInRect:CGRectMake(0, 0, size.width, size.height)];
    UIImage * image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    
    return image;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,099评论 25 709
  • 【作者前言】:13年入圈,分享些本人工作中遇到的点点滴滴那些事儿,17年刚开始写博客,高手勿喷!以分享交流为主,欢...
    iOS_PM_WEB_尛鹏阅读 8,495评论 5 7
  • Core Graphics Framework是一套基于C的API框架,使用了Quartz作为绘图引擎。它提供了低...
    ShanJiJi阅读 5,559评论 0 20
  • Ta Legacy“绽放班”申请书 为更好地贯彻落实“科教兴国”的战略,为部分“...
    花朵儿静静阅读 1,391评论 0 0
  • 今日两市股指早盘集体低开,随后股指在上证50为首权重的带领下震荡攀升,金融权重及房地产交替发力,推动指数上行...
    牛译婕阅读 1,261评论 0 0

友情链接更多精彩内容