ios-改变图片的尺寸

//改变图片的尺寸
-(UIImage*) OriginImage:(UIImage *)image scaleToSize:(CGSize)size
{
UIGraphicsBeginImageContext(size); //size 为CGSize类型,即你所需要的图片尺寸
[image drawInRect:CGRectMake(0, 0, size.width, size.height)];
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImage *imagescaless= [self imageRetain:scaledImage];
return imagescaless; //返回的就是已经改变的图片
}
//对.2x图片进行处理
-(UIImage*)imageRetain:(UIImage *)sourceImage
{
CGSize size;
size = CGSizeMake(sourceImage.size.width / 2.0f, sourceImage.size.height / 2.0f);
UIGraphicsBeginImageContextWithOptions(size, NO, 0);
if (1.0 == [[UIScreen mainScreen] scale]){
[sourceImage drawInRect:CGRectIntegral((CGRect){0.0f, 0.0f, size})];
}else{
[sourceImage drawInRect:(CGRect){0.0f, 0.0f, size}];
sourceImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
}
return sourceImage;
}
下面是调用方法:
- (void)viewDidLoad
{
[super viewDidLoad];
_dataList=[[NSMutableArray alloc]initWithCapacity:10];
[self initViews];
NSArray *tmpArray1 = @[@"照片墙",@"讨论区",@"群组",@"通讯录"];
self.SXHAry = tmpArray1;
NSArray *tmpArray2 = @[@"晚报放心购",@"厦门房产动态",@"厦门车市动态"];
self.XMRBAry = tmpArray2;
NSArray *bFirsts = @[@"gc1.png",@"gc2.png",@"gc3.png",@"gc4.png"];
NSMutableArray *bFirst=[[NSMutableArray alloc]initWithCapacity:0];
for (int i=0; i<bFirsts.count; i++) {
UIImage*images=[UIImage imageNamed:[bFirsts objectAtIndex:i]];
UIImage *imagenew=[self OriginImage:images scaleToSize:CGSizeMake(45, 45)];
[bFirst addObject:imagenew];
}
self.bFirstAry = [bFirst copy];
NSArray *bSecconds = @[@"gc6.png",@"gc7.png",@"gc8.png"];
NSMutableArray *bSecond=[[NSMutableArray alloc]initWithCapacity:0];
for (int i=0; i<bSecconds.count; i++) {
UIImage*images=[UIImage imageNamed:[bSecconds objectAtIndex:i]];
UIImage *imagenew=[self OriginImage:images scaleToSize:CGSizeMake(45, 45)];
[bSecond addObject:imagenew];
}
self.bSecondAry = [bSecond copy];
NSArray *rFirsts = @[@"gc1.png",@"gc2.png",@"gc3.png",@"gc4.png"];
NSMutableArray *rFirst=[[NSMutableArray alloc]initWithCapacity:0];
for (int i=0; i<rFirsts.count; i++) {
UIImage*images=[UIImage imageNamed:[rFirsts objectAtIndex:i]];
UIImage *imagenew=[self OriginImage:images scaleToSize:CGSizeMake(45, 45)];
[rFirst addObject:imagenew];
}
self.rFirstAry = [rFirst copy];
NSArray *rSeconds = @[@"gc6.png",@"gc7.png",@"gc8.png"];
NSMutableArray *rSecond=[[NSMutableArray alloc]initWithCapacity:0];
for (int i=0; i<rSeconds.count; i++) {
UIImage*images=[UIImage imageNamed:[rSeconds objectAtIndex:i]];
UIImage *imagenew=[self OriginImage:images scaleToSize:CGSizeMake(45, 45)];
[rSecond addObject:imagenew];
}
self.rSecondtAry = [rSecond copy];
[self setExtraCellLineHidden:self.squareTableCell];
}

ios-改变图片的尺寸的更多相关文章
- ios 改变图片大小缩放方法
http://www.cnblogs.com/zhangdadi/archive/2012/11/17/2774919.html http://bbs.csdn.net/topics/39089858 ...
- iOS改变图片尺寸
- (UIImage *)originImage:(UIImage *)image scaleToSize:(CGSize)size { UIGraphicsBeginImageContext(siz ...
- 批量改变图片的尺寸大小 python opencv
我目标文件夹下有一大批图片,我要把它转变为指定尺寸大小的图片,用pthon和opencv实现的. 以上为原图片. import cv2 import os # 按指定图像大小调整尺寸 def resi ...
- C#根据屏幕分辨率改变图片尺寸
最近工作中遇到一个问题,就是需要将程序文件夹中的图片根据此时电脑屏幕的分辨率来重新改变图片尺寸 以下为代码实现过程: 1.获取文件夹中的图片,此文件夹名为exe程序同目录下 //读取文件夹中文件 Di ...
- iOS 调整图片尺寸,告诉你的UI,别问我尺寸!我要最大的
如果UI问你“这个图片你要多大尺寸的?”,你该怎么回答呢? 为了不让图片因拉伸或压缩而变形或模糊,请精确告诉UI图片的比例,至于图片的分辨率,不必要要求太严,但是最低要求是要让最大的屏幕不会出现前面描 ...
- [转载] IOS 获取网络图片的大小 改变 图片色值 灰度什么的方法集合
IOS 获取网络图片的大小 改变 图片色值 灰度什么的方法集合
- iOS UIButton 图片文字上下垂直布局 解决方案
实现如图所示效果: 这是一个UIButton,需要改变image和title相对位置. 解决如下: //设置文字偏移:向下偏移图片高度+向左偏移图片宽度 (偏移量是根据[图片]大小来的,这点是关键)b ...
- IOS中图片拉伸技巧与方法总结(转载)
以下内容转载自:http://my.oschina.net/u/2340880/blog/403996 IOS中图片拉伸技巧与方法总结 一.了解几个图像拉伸的函数和方法 1.直接拉伸法 简单暴力,却是 ...
- 如何解决谷歌浏览器下jquery无法获取图片的尺寸
代码如下: $(document).ready(function(){ var img_h=$img.height(); var img_w=$img.width(); }) 以上代码在IE和火狐中没 ...
随机推荐
- scala 入门Eclipse环境搭建
scala 入门Eclipse环境搭建及第一个入门经典程序HelloWorld IDE选择并下载: scala for eclipse 下载: http://scala-ide.org/downloa ...
- [译]RabbitMQ教程C#版 - "Hello World"
先决条件 本教程假定 RabbitMQ 已经安装,并运行在localhost标准端口(5672).如果你使用不同的主机.端口或证书,则需要调整连接设置. 从哪里获得帮助 如果您在阅读本教程时遇到困难, ...
- vue2.0自学教程(一):走进vue2.0大观园
人狠话不多,咱直入主题吧! 开发软件: Visual Studio Code 支持环境: nodejs+windows 版本: vue2.0 1.初识vuevue是一个前端框架,使用MVVM(Mode ...
- sql添加一个list的查询条件
编程中往往会有需要对某个list的值进行查询的需求,而将一个list作为查询条件,我所知道的有两种方法: 1.for循环遍历,每次循环一个sql,每次查list中一个条件的数据,最后累加 ...(最基 ...
- 容器工厂(原型&单例)
上一篇讲的是容器工厂的原型. 我们可以不必通过new关键之创建实例,可以直接取容器里面的实例. 我们可以发现,在对比他们的地址值的时候,他们是相同的为true. 如果我们需要的是不一样的呢.也就是有一 ...
- Java GC机制中Minor GC/Full GC
Minor GC Young GC Full GC Major GC https://blog.csdn.net/chenleixing/article/details/46706039 内存划分为 ...
- Series.str——字符串批量处理方法
针对dataframe中的某一行(或列)想做批量字符串处理时,可采用此方法 series.str.python内置的str方法 例如: series.str.replace('A','B') # ...
- JavaScript的DOM对象
HTML DOM (文档对象模型) 当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model). HTML DOM 模型被构造为对象的树. HTML DOM 树 通过 ...
- YAML基础语法
正如YAML所表示的YAML Ain’t Markup Language,YAML 是一种简洁的非标记语言.YAML以数据为中心,使用空白,缩进,分行组织数据,从而使得表示更加简洁易读. 一边学习规则 ...
- day08_python_1124
01 昨日内容回顾 文件操作 文件操作的流程: 1,打开文件创建文件句柄. 2,对文件句柄进行操作. 3,关闭文件句柄. 读, r r+ rb r+b read() 全部读取 read(n) 读取一部 ...