代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
ObjC
】
缩放图片并截取中间部分显示
作者:
zhouljsh
/ 发布于
2014/11/17
/
443
下载网络图片要显示在固定视图上总是变形,所以对图片进行缩放并截取处理
-(UIImage*)scaleImage:(UIImage *)image size:(CGSize )size{ CGSize imgSize = image.size; //原图大小 CGSize viewSize = size; //视图大小 CGFloat imgwidth = 0; //缩放后的图片宽度 CGFloat imgheight = 0; //缩放后的图片高度 //视图横长方形及正方形 if (viewSize.width >= viewSize.height) { //缩小 if (imgSize.width > viewSize.width && imgSize.height > viewSize.height) { imgwidth = viewSize.width; imgheight = imgSize.height/(imgSize.width/imgwidth); } //放大 if(imgSize.width < viewSize.width){ imgwidth = viewSize.width; imgheight = (viewSize.width/imgSize.width)*imgSize.height; } //判断缩放后的高度是否小于视图高度 imgheight = imgheight < viewSize.height?viewSize.height:imgheight; } //视图竖长方形 if (viewSize.width < viewSize.height) { //缩小 if (imgSize.width > viewSize.width && imgSize.height > viewSize.height) { imgheight = viewSize.height; imgwidth = imgSize.width/(imgSize.height/imgheight); } //放大 if(imgSize.height < viewSize.height){ imgheight = viewSize.width; imgwidth = (viewSize.height/imgSize.height)*imgSize.width; } //判断缩放后的高度是否小于视图高度 imgwidth = imgwidth < viewSize.width?viewSize.width:imgwidth; } //重新绘制图片大小 UIImage *i; UIGraphicsBeginImageContext(CGSizeMake(imgwidth, imgheight)); [image drawInRect:CGRectMake(0, 0, imgwidth, imgheight)]; i=UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); //截取中间部分图片显示 if (imgwidth > 0) { CGImageRef newImageRef = CGImageCreateWithImageInRect(i.CGImage, CGRectMake((imgwidth-viewSize.width)/2, (imgheight-viewSize.height)/2, viewSize.width, viewSize.height)); return [UIImage imageWithCGImage:newImageRef]; }else{ CGImageRef newImageRef = CGImageCreateWithImageInRect(image.CGImage, CGRectMake((imgwidth-viewSize.width)/2, (imgheight-viewSize.height)/2, viewSize.width, viewSize.height)); return [UIImage imageWithCGImage:newImageRef]; } }
试试其它关键字
缩放图片
截取
同语言下
.
根据生日计算星座
.
精简的实现一个内存池
.
iOS索引搜索核心代码
.
iOS 搜索框
.
文件操作
.
UIWebView 加载本地网页
.
取消导航条对视图的影响
.
利用终端显示 隐藏文件
.
更改导航条背景颜色
.
iOS 字体斜体
可能有用的
.
C#实现的html内容截取
.
List 切割成几份 工具类
.
SQL查询 多列合并成一行用逗号隔开
.
一行一行读取txt的内容
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
Java PDF转换成图片并输出给前台展示
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
zhouljsh
贡献的其它代码
(
13
)
.
JSP页面的文本框禁止鼠标右键选择
.
输出系统当前的日期(年月日时分秒毫秒)
.
子段和
.
字符串最小表示
.
CSS透明度
.
固定在底部
.
计算机信息类
.
GridViewExport帮助类,美化导出
.
css 控制 GridView 样式
.
GridView CSS的样式表
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3