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和火狐中没 ...
随机推荐
- Mybatis自动生成,针对字段类型为text等会默认产生XXXXWithBlobs的方法问题
需要修改generatorConfiguration.xml,里面的table加属性:<table tableName="t_ticketcase" domainObject ...
- MyEclipse运行Java出错:could not find the main class:test.program will exit(导入项目)
自己新建的项目运行没有任何问题.但是我导入的很早以前别人写的项目,然后run就会弹框could not find the main class:test.program will exit 请确认JA ...
- mongodump and mongorestore
mongoexport和mongoimport只能导出/导入某个特定集合 1 mongoexport bin目录下 ./mongoexport <hostname><:port> ...
- 【XAF问题】不能将值NULL插入列"Oid"
一.问题 1. 不能将值NULL插入列"Oid" 二.解决方法 解决方法:删表,oid不能为空,继承的对象变了
- tensorflow中命名空间、变量命名的问题
1.简介 对比分析tf.Variable / tf.get_variable | tf.name_scope / tf.variable_scope的异同 2.说明 tf.Variable创建变量:t ...
- NodeJS中使用swig模板引擎
NodeJS中的默认引擎是jade有点过于复杂,而且不是以HTML为基础的,学习成本和前端适应成本都很大.而ejs虽然简单,但不支持模板导入,而且效率一般. swig的语法简单,学习成本很低,符合常规 ...
- day72 关于rbac组件的小部分面试题
rbac的权限组件 基于角色的权限控制 1.什么是权限? url代表的就是一个权限 2.如何实现权限的控制? 表结构 以我们讲的课的内容为例 菜单表: - title 标题 - icon 图标 ...
- caffe drawnet.py 用Python画网络框架
在caffe中可以使用draw_net.py轻松地绘制卷积神经网络(CNN,Convolutional Neural Networks)的架构图.这个工具对于我们理解.学习甚至查错都有很大的帮助. 1 ...
- 阶段01Java基础day22IO流03
22.01_IO流(序列流) 1.什么是序列流 序列流可以把多个字节输入流整合成一个, 从序列流中读取数据时, 将从被整合的第一个流开始读, 读完一个之后继续读第二个, 以此类推. 2.使用方式 整合 ...
- linux 服务发布脚本升级,远程发布,指定拉取远程dev,test等分支代码
1.本地发布脚本 publish.sh #!/bin/sh currentDay=`date +%Y%m%d` currentTime=`date +%Y%m%d%H%M%S` tomcat1=/da ...