iOS UIImage 图片局部拉伸的一些学习要点
2016-01-11 17:18
489 查看
之前 做纯色局部拉伸 通过 top bottom left right 相交的阴影拉伸 屡试不爽
实施方法:
我用这个方法 去拉伸一个 有图案的图的 相对纯色的那一部分时候 会发现 图片被拉伸的同时 会有被图片局部本身填充的现象 好像是连续的同一个1个半的图
这个时候 说明我没考虑到拉伸图片UIImage的一个属性
:
typedef NS_ENUM(NSInteger, UIImageResizingMode) {
UIImageResizingModeTile, //
UIImageResizingModeStretch,//
};
默认的属性 是前者 明显就是像素点 填充 就适合纯色填充拉伸的那种 那么 其他情况的拉伸 就应该用你 stretch的属性
实施如下:
真的就是拉伸如下图(背景宫殿 拉伸的是红色城墙部分)
这是 对本地图片的处理 很不错 , 但是同样一张图 从网络获取的 用同样这个方法 效果图 如下 :
宫殿在最底下呢 拉伸后看不见了只是 这是为啥 我研究半天甚至 自己写了一个demo打算求助网友, 我突然发现 网上传下来的图片 是 xx.png 而本地图片 则是 @2x @3x 这个 是关键区别!!!!说明 代码很诚实的表达了这种尴尬的情况, 对于网络下载的xx.png app一定默认为原图 也就是 "@1x" 一倍图 ,那我 还是想让他按本地图片一样效果 必须处理 按比例裁剪 即可:
这样 再去拉伸 妥妥地正常了
实施方法:
imageView.image = [[UIImage imageNamed: @"icon_helper_palace_day"] resizableImageWithCapInsets:palaceInset]];
我用这个方法 去拉伸一个 有图案的图的 相对纯色的那一部分时候 会发现 图片被拉伸的同时 会有被图片局部本身填充的现象 好像是连续的同一个1个半的图
这个时候 说明我没考虑到拉伸图片UIImage的一个属性
:
typedef NS_ENUM(NSInteger, UIImageResizingMode) {
UIImageResizingModeTile, //
进行区域复制模式拉伸 "填充"
UIImageResizingModeStretch,//
进行渐变复制模式拉伸 "拉伸"
};
默认的属性 是前者 明显就是像素点 填充 就适合纯色填充拉伸的那种 那么 其他情况的拉伸 就应该用你 stretch的属性
实施如下:
imageView.image = [[UIImage imageNamed:@"icon_helper_palace_day"] resizableImageWithCapInsets:palaceInset resizingMode:UIImageResizingModeStretch];
真的就是拉伸如下图(背景宫殿 拉伸的是红色城墙部分)
这是 对本地图片的处理 很不错 , 但是同样一张图 从网络获取的 用同样这个方法 效果图 如下 :
宫殿在最底下呢 拉伸后看不见了只是 这是为啥 我研究半天甚至 自己写了一个demo打算求助网友, 我突然发现 网上传下来的图片 是 xx.png 而本地图片 则是 @2x @3x 这个 是关键区别!!!!说明 代码很诚实的表达了这种尴尬的情况, 对于网络下载的xx.png app一定默认为原图 也就是 "@1x" 一倍图 ,那我 还是想让他按本地图片一样效果 必须处理 按比例裁剪 即可:
UIImage *iconImage = [HFImageUtil scaleToSize:image newSize:[UIImage imageNamed:@"icon_helper_palace_day"].size];//按当前应用获取到的 2x 或者是 3x的本地图的应用级别的大小 裁剪
这样 再去拉伸 妥妥地正常了
相关文章推荐
- 哈理工OJ HLG OJ 1005Counting Subsequences(map应用)(STL应用)
- 在iOS 9中不在使用UIAlertView使用UIAlertController
- qt-gui的GUI hint参数
- Mirantis OpenStack 7.0: NFVI Deployment Guide — NUMA/CPU pinning
- 用UILabel封装自定义柱状图
- Easyui的combobox组件无法选择内容
- xib正确创建可滑动的UIScrollView
- Android 控件UI自适应解决方案
- HDOJ 1005 Number Sequence规律题
- easyui的datagrid中editor和combogrid的结合使用
- hdu1711 Number Sequence
- 【转载】Java StringBuffer与StringBuider
- 《iOS Human Interface Guidelines》——Notifications
- UI控件监听
- 修改UISearchBar背景颜色
- UISearchBar--改变内部输入框的背景颜色
- UITableViewCell的选中时的颜色设置
- Arduino - 休眠模式
- UICollectionView简单使用
- UICollectionView之定制UICollectionViewLayout