截取UIImage大小(可以用于制作缩略图)
2014-01-02 16:18
281 查看
+(UIImage *)scaleImage:(UIImage *)image toScale:(CGSize)reSize
{
float drawW = 0.0;
float drawH = 0.0;
CGSize size_new = image.size;
NSLog(@"%f",size_new.width);
NSLog(@"%f",reSize.width);
NSLog(@"%f",size_new.height);
NSLog(@"%f",reSize.height);
NSLog(@"------------------------------------");
if (size_new.width >= reSize.width) {
drawW = (size_new.width - reSize.width)/2.0;
}
if (size_new.height >= reSize.height) {
drawH = (size_new.height - reSize.height)/2.0;
}
//截取截取大小为需要显示的大小。取图片中间位置截取
CGRect myImageRect =
CGRectMake(drawW, drawH, reSize.width, reSize.height);
UIImage* bigImage= image;
image =
nil;
CGImageRef imageRef = bigImage.CGImage;
CGImageRef subImageRef =
CGImageCreateWithImageInRect(imageRef, myImageRect);
UIGraphicsBeginImageContext(reSize);
CGContextRef context =
UIGraphicsGetCurrentContext();
CGContextDrawImage(context, myImageRect, subImageRef);
UIImage* smallImage = [UIImage
imageWithCGImage:subImageRef];
UIGraphicsEndImageContext();
return smallImage;
}
{
float drawW = 0.0;
float drawH = 0.0;
CGSize size_new = image.size;
NSLog(@"%f",size_new.width);
NSLog(@"%f",reSize.width);
NSLog(@"%f",size_new.height);
NSLog(@"%f",reSize.height);
NSLog(@"------------------------------------");
if (size_new.width >= reSize.width) {
drawW = (size_new.width - reSize.width)/2.0;
}
if (size_new.height >= reSize.height) {
drawH = (size_new.height - reSize.height)/2.0;
}
//截取截取大小为需要显示的大小。取图片中间位置截取
CGRect myImageRect =
CGRectMake(drawW, drawH, reSize.width, reSize.height);
UIImage* bigImage= image;
image =
nil;
CGImageRef imageRef = bigImage.CGImage;
CGImageRef subImageRef =
CGImageCreateWithImageInRect(imageRef, myImageRect);
UIGraphicsBeginImageContext(reSize);
CGContextRef context =
UIGraphicsGetCurrentContext();
CGContextDrawImage(context, myImageRect, subImageRef);
UIImage* smallImage = [UIImage
imageWithCGImage:subImageRef];
UIGraphicsEndImageContext();
return smallImage;
}
相关文章推荐
- 鼠标滑过缩略图时放大图片(纯Css)
- 深入分析WPF客户端读取高清图片卡以及缩略图的解决方法详解
- DeDecms实现更漂亮整齐的缩略图
- jQuery 幻灯片插件(带缩略图功能)
- JS+css 图片自动缩放自适应大小
- PHP批量生成缩略图的代码
- Javascript获取窗口(容器)的大小及位置参数列举及简要说明
- ASP.Net 上传图片并生成高清晰缩略图
- php生成缩略图的类代码
- camera录制视频的缩略图获取原理心得分享
- php图片处理:加水印、缩略图的实现(自定义函数:watermark、thumbnail)
- php下尝试使用GraphicsMagick的缩略图功能
- PHP 上传文件大小限制
- asp.net 点缩略图弹出随图片大小自动调整的页面
- javascript 客户端验证上传图片的大小(兼容IE和火狐)
- 解析mysql中如何获得数据库的大小
- PHP 使用 Imagick 裁切/生成缩略图/添加水印自动检测和处理 GIF
- 完美实现GIF动画缩略图的php代码
- asp.net生成缩略图实现代码
- android弹出activity设置大小的方法