iOS关于图片点到像素转换之杂谈
2016-01-12 10:14
337 查看
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;)
不管是以什么方法生成的图片,是从磁盘上读取的,还是从其他对象中取得,或是从当前显存中获取的.
不管是什么类似的图片,是UIImage还是CGImage.
它们的显示尺寸分为2种:一种以点为单位,另一种以像素为单位.
如果你在绘制,缩放或是截取图片时发现生成后的图片有”花屏”的现象,多半是你的图片尺寸弄错了.
如果是UIImage我们可以通过img.scale来获取其实际像素与点得对应比率,如果是CGImageRef,我们可以通过如下方法获取其实际像素大小:
CGSize size = CGSizeMake(CGImageGetWidth(imgRef),CGImageGetHeight(imgRef));
到目前位置iPhone上的图像比率有3种@1x,@2x和@3x,具体对应什么设备也很简单,大家可以到网上去查找.
另外需要说明的是有些函数自己帮你搞定了点到像素比率的转换,所以你自己不用劳神处理了,比如以下一个:
UIGraphicsBeginImageContextWithOptions(CGSizeMake(sz.width/2,sz.height), NO, 0);
注意其中最后一个参数为0,表示自动处理实际的大小.
相关文章推荐
- iOS关于图片点到像素转换之杂谈
- iOS-项目搭建
- iOS视图控制器之间delegate传值教程
- 不让苹果开发者账号折磨我
- iOS中可能用到的尺寸
- IOS后台 返回 /Date(1445340103367)/ 时间,转换成 2015-10-20 19:21 这种格式
- iOS开发之 Cocoapods MBProgressHUD 安装步骤
- 芒果iOS开发之定位、地理编码
- IOS程序异常crash捕获与拦截
- <iOS>AFNetworking 3.0的使用
- ios去时间戳
- IOS-调用系统资源
- 蓝懿ios技术交流和心得分享16.1。11
- iOS 支付宝的使用
- 蜂窝教育iOS培训 备受学员青睐的原因
- iOS委托方法不能执行
- [iOS]iPhone进行真机测试(基础版)
- iOS学习笔记(1)-iPhone分辨率
- iOS开发 ----- webView和JS的简单交互
- IOS 进阶