使用 resizableImageWithCapInsets获得想要的图片
来源:互联网 发布:网络销售法律法规 编辑:程序博客网 时间:2024/06/05 00:51
很早就用过 resizableImageWithCapInsets 来拉伸图片,然后把得到的图片给一个UIImageView,例如imgView,我们能得到相应的效果,这很完美,大家都喜欢。可是,如果我们把这个UIImageView的image属性传递给别的UIImage时,我们得到的不是UIImageview上展示的效果的image,而是,原来未拉伸之前的 image。那么问题来了,如何获取到拉伸好的图片呢?
这个问题也困扰了我很久,也骂了苹果无数次SB,今天把这个问题解决了,现在把在项目中适用的代码贴出来,有需要的同学自取哈,原理我相信大家都懂的。
UIImage *mask = [UIImageimageNamed:@"chat_self_bubble"];
CALayer* maskLayer = [CALayerlayer];
maskLayer.frame =CGRectMake(0, 0, _picView.size.width,_picView.size.height);
CGSize size = _picView.frame.size;
if (!model.isSelf) {
mask = [UIImageimageNamed:@"chat_other_bubble"];
UIImage *resizeImg = [maskresizableImageWithCapInsets:UIEdgeInsetsMake(16, 10, 2, 2)];
UIGraphicsBeginImageContext(size);
// 绘制改变大小的图片
[resizeImgdrawInRect:CGRectMake(0, 0, size.width, size.height)];
// 从当前context中创建一个改变大小后的图片
UIImage* scaledImage =UIGraphicsGetImageFromCurrentImageContext();
// 使当前的context出堆栈
UIGraphicsEndImageContext();
maskLayer.contents = (id)[scaledImageCGImage];
}else{
UIImage *resizeImg = [maskresizableImageWithCapInsets:UIEdgeInsetsMake(20, 2, 2, 10)];
UIGraphicsBeginImageContext(size);
// 绘制改变大小的图片
[resizeImgdrawInRect:CGRectMake(0, 0, size.width, size.height)];
// 从当前context中创建一个改变大小后的图片
UIImage* scaledImage =UIGraphicsGetImageFromCurrentImageContext();
// 使当前的context出堆栈
UIGraphicsEndImageContext();
maskLayer.contents = (id)[scaledImageCGImage];
}
[_picView.layersetMask:maskLayer];
- 使用 resizableImageWithCapInsets获得想要的图片
- resizableImageWithCapInsets对图片拉伸的使用见解
- 图片拉伸 [UIImage resizableImageWithCapInsets:]使用注意
- 带边框的UIImage图片拉伸:resizableImageWithCapInsets
- iOS编程——Swift使用resizableImageWithCapInsets来拉伸图片
- iPhone图片拉伸:resizableImageWithCapInsets
- iPhone图片拉伸:resizableImageWithCapInsets
- iPhone图片拉伸:resizableImageWithCapInsets
- iPhone图片拉伸:resizableImageWithCapInsets
- iPhone图片拉伸:resizableImageWithCapInsets
- iPhone图片拉伸:resizableImageWithCapInsets
- iPhone图片拉伸:resizableImageWithCapInsets
- iPhone图片拉伸:resizableImageWithCapInsets
- iPhone图片拉伸:resizableImageWithCapInsets
- iPhone图片拉伸:resizableImageWithCapInsets
- 图片拉伸:resizableImageWithCapInsets
- iPhone图片拉伸:resizableImageWithCapInsets
- 图片拉伸:resizableImageWithCapInsets
- 特性价值及应用场景_示例
- DICOM:DICOM3.0网络通信协议(续)
- 西电校园搜索引擎开发(4)--爬虫之布隆过滤器
- java.lang.NumberFormatException
- 彩色图像--色彩空间 总结
- 使用 resizableImageWithCapInsets获得想要的图片
- linux学习笔记--基本命令的学习--压缩与解压缩命令
- leetcode-21 Merge Two Sorted Lists
- AC自动机模板
- ARP地址解析协议与RAPR逆地址解析协议
- 转载----android应用程序中获取view的位置
- Visual Studio 2005/2008中如何编译和运行C++程序
- vim+cscope+ctags打造属于自己的IDE
- 关于算法练习1.1中的中参数传递方式思考