ios拓展5-图片的拉伸与渲染

下面两个方法比较简单,就不做任何描述了,放在这里防止有些人忘记, 所以单独拿了出来

// 图片保持原来的 模式, 不会被渲染
UIImage *originImage =
[iconImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

这个方法一般是用来图片拉伸和填充的,


 /*=========下面这句话是重点==========*/
    image1 = [image1 resizableImageWithCapInsets:UIEdgeInsetsMake(高/2,宽/2 , 高/2, 宽/2)];
//其中Insets这个参数的格式是(top,left,bottom,right),从上、左、下、右分别在图片上画了一道线,
//这样就给一个图片加了一个框。只有在框里面的部分才会被拉伸,而框外面的部分则不会改变。

=====重点====>但是还有另一个用法, 容易被忽略, 在设置图片的时候,如果不做任何处理,容易被系统 渲染 或者 拉伸 处理. 在设置 nav 的时候是最容易出现的,

UIImage *originImage =
[iconImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

/*=======我们一般是设置为宽高的 一半,  但是如果按照下面的将  "左" 设置为 图片的 "宽"  则不会出现这种问题========*/
originImage = [originImage resizableImageWithCapInsets:UIEdgeInsetsMake(0,宽 ,0, 0)];
Before
After

你可能感兴趣的:(ios拓展5-图片的拉伸与渲染)