前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何使用Objective-C的Category来缩放图片

如何使用Objective-C的Category来缩放图片

作者头像
EltonZheng
发布2021-01-22 07:49:42
6720
发布2021-01-22 07:49:42
举报

UIImage类并没有提供缩放图片需要用到的API,是不是觉得很吃惊?没关系,我们自己来添加一个。

定义缩放图片的Category

代码语言:javascript
复制
//  UIImage+Scale.h
 
@interface UIImage (scale)
 
-(UIImage*)scaleToSize:(CGSize)size;
 
@end

实现这个Category的定义

代码语言:javascript
复制
//  UIImage+Scale.h
 
#import "UIImage+Scale.h"
 
@implementation UIImage (scale)
 
-(UIImage*)scaleToSize:(CGSize)size
{
  // 创建一个bitmap的context
  // 并把它设置成为当前正在使用的context
  UIGraphicsBeginImageContext(size);
 
  // 绘制改变大小的图片
  [self drawInRect:CGRectMake(0, 0, size.width, size.height)];
 
  // 从当前context中创建一个改变大小后的图片
  UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
 
  // 使当前的context出堆栈
  UIGraphicsEndImageContext();
 
  // 返回新的改变大小后的图片
  return scaledImage;
}
 
@end

如何使用

代码语言:javascript
复制
// 创建图片
UIImage *image = [UIImage imageNamed:@"myImage.png"];
 
// 更改图片大小
UIImage *scaledImage = [image scaleToSize:CGSizeMake(25.0f, 35.0f)];

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 定义缩放图片的Category
  • 实现这个Category的定义
  • 如何使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档