UIImage的size和scale属性
2015-04-05 03:25
866 查看
先想一个问题“一个图像的尺寸到底是多大呢?”
第一反应可能就是image.size,恭喜你答错了,正确的答案是图像的实际的尺寸(像素)等于image.size * image.scale。如果做过界面贴图的话你可能经常会需要准备至少两套图,一套1倍图,一套图已@2x命名的二倍图。这样当我们的程序运行在retina屏幕的时候系统就会自动的去加载@2x的图片,它的size将和一倍图加载进来的size相等,但是scale却置为2,这点大家可以做个简单的小测试验证一下。然我们再深入一点儿为什么不直接加载到成二倍的尺寸呢,原因很简单因为我们在界面布局中逻辑坐标系中的(单位是point),而实际的绘制都是在设备坐标系(单位是pixel)进行的,系统会自动帮我们完成从point到pixel之间的转化。其实这个比例也就刚好和UIScreen中的scale对应,这样整条scale的线就可以串通了。
在使用Core Image中的滤镜效果时,需要注意,滤镜之后的UIImage的尺寸是图片的真实尺寸。
当使用滤镜时,需要将尺寸还原为@2x的效果
第一反应可能就是image.size,恭喜你答错了,正确的答案是图像的实际的尺寸(像素)等于image.size * image.scale。如果做过界面贴图的话你可能经常会需要准备至少两套图,一套1倍图,一套图已@2x命名的二倍图。这样当我们的程序运行在retina屏幕的时候系统就会自动的去加载@2x的图片,它的size将和一倍图加载进来的size相等,但是scale却置为2,这点大家可以做个简单的小测试验证一下。然我们再深入一点儿为什么不直接加载到成二倍的尺寸呢,原因很简单因为我们在界面布局中逻辑坐标系中的(单位是point),而实际的绘制都是在设备坐标系(单位是pixel)进行的,系统会自动帮我们完成从point到pixel之间的转化。其实这个比例也就刚好和UIScreen中的scale对应,这样整条scale的线就可以串通了。
在使用Core Image中的滤镜效果时,需要注意,滤镜之后的UIImage的尺寸是图片的真实尺寸。
当使用滤镜时,需要将尺寸还原为@2x的效果
UIImage *img = [UIImage imageNamed:@"dog"]; //...滤镜代码 CGImageRef imgRef = [context createCGImage: result fromRect: CGRectMake(0, 0, img.size.width * img.scale, img.size.height * img.scale)]; UIImage *tempImg = [UIImage imageWithCGImage:imgRef scale:2 orientation:UIImageOrientationUp];
相关文章推荐
- UIImage的scale及size,二倍图,三倍图,像素等概念透析
- uiimage的size属性
- uicollectionview 使用uibutton或者uiimageview实现旋转出现scale的问题
- 【转载】Animation 动画(一)alpha、scale、translate、rotate、set的xml属性及用法
- 自定义控件三部曲之动画篇(一)——alpha、scale、translate、rotate、set的xml属性及用法
- 给iOS开发新手送点福利,简述UIImagePickerController的属性和用法
- Android中ImageView的setScaleType方法属性解析
- OpenCV中Mat属性step,size,step1,elemSize,elemSize1
- UIImageView 的contentMode属性
- UIView之userInteractionEnabled属性介绍-特殊子类覆盖多见于UIImageView和UILabel
- UIImageView的contentMode属性
- .net Form 的Autoscalemode属性
- ASP.NET中PagedDataSource实现分页时PageSize和PageCount属性的顺序的误区
- java中的length属性和length()方法和size()方法
- ImageView的属性android:scaleType,即ImageView.setScaleType(ImageView.ScaleType)
- 请为你的SqlParameter的参数设置长度(size属性)
- 对scrollView的属性contentSize contentOffset contentInset个人理解
- ImageView的android:scaleType属性详解!
- ImageView的属性android:scaleType设置最佳比例图片显示
- CSS3属性transform详解之(旋转:rotate,缩放:scale,倾斜:skew,移动:translate)