写在前面 我们肯定做过这样的需求,给一个图片切圆角, 当然我们大多采用简单粗暴的方法 myIcon.layer.cornerRadius = 16.5 myIcon.layer.masksToBounds = true 如果是静态的页面也无关紧要,要是可以滑动的页面, 有很多需要裁剪的图片,那么就要考虑性能了.接下来的方法就是其中一种不错的方法, 此代码已经上传到githup[DDGScreenShot](https://github.com/dudongge/DDGScreenShot) 欢迎…
iOS 图片裁剪方法 通过 CGImage 或 CIImage 裁剪 UIImage有cgImage和ciImage属性,分别可以获得CGImage和CIImage对象.CGImage和CIImage对象都有cropping(to:)方法,传入CGRect的参数表示要裁剪的区域(采用UIImage的坐标). static func cropImage(_ image: UIImage, withRect rect: CGRect) -> UIImage? { if let cgImage = i…
iOS 图片裁剪 + 旋转 之前分别介绍了图片裁剪和图片旋转方法 <iOS 图片裁剪方法> 地址:http://www.cnblogs.com/silence-cnblogs/p/6490037.html <iOS 图片旋转方法> 地址:http://www.cnblogs.com/silence-cnblogs/p/6496564.html 裁剪和旋转是可以连在一起执行的.先定位到需要裁剪的区域,然后以此区域的中心为轴,旋转一定角度,最后获取旋转后此区域内的图片.可以用位图(Bi…
一:圆形图片的绘制 @interface ViewController () @property (weak, nonatomic) IBOutlet UIImageView *imageV; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; /** * UIBezierPath:绘制路径,就是根据路径对图形上下文进行构造 */ //0.加载图片 UIImage *image = [UII…
控件加载图片,plist,懒加载,序列帧动画,添加动画效果. IOS中有2种加载图片的方式. 方式一:有缓存(图片所占用的内存会一直停留在程序中) + (UIImage *)imageNamed:(NSString *)name; 注:必须是png文件.需要把图片添加到 images.xcassets中 例如: @property (weak, nonatomic) IBOutlet UIImageView *iconImageView; self.iconImageView.image=[UI…
如果是在VC中操作,需要在viewDidLayoutSubviews方法里 - (void)viewDidLayoutSubviews { [super viewDidLayoutSubviews]; CGFloat radius = ; // 圆角大小 UIRectCorner corner = UIRectCornerBottomLeft | UIRectCornerBottomRight; UIBezierPath * path = [UIBezierPath bezierPathWith…
一直以来,为IOS添加图片的特殊效果都是通过跟美工的配合,比如,要加阴影,就从美工那边获得一张阴影效果图,在界面上画两个UIImageView,将阴影放在下面,图像放上上面,错开一定角度.有比如想做圆角效果,就画一张跟背景一个颜色的图片,中间透明,盖在原图上方.看起来很拙劣,效果还是不错的,直到愚钝的我发现IOS已经帮我们准备好了一切.其实就是几行代码的事情: 首先不要忘记,必须导入IOS的framework: #import <QuartzCore/QuartzCore.h> 这样才能启动U…
最近做的项目中需要上传头像,发表内容的时候也要涉及到图片上传,我直接用的原图上传,但是由于公司网络差,原图太大,老是加载好久好久,所以需要把原图裁剪或者修改分辨率之后再上传,找了好久,做了很多尝试才解决问题,下面记录一下,以便帮助自己查找,也希望能帮助其他人. 我们一般图片上传最好使用UIImageJPEGRepresentation(image, 0.1)这个方法先把图片处理一下,其实这个方法把图片压缩之后,图片大小会小很多(小多少待会再讲),但是在app上人眼的感觉差不多,我对图片的处理如下…
//例如: UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; button.frame = CGRectMake(50,50,100,40); button.backgroundColor = [UIColor blueColor]; //关键语句 button.layer.cornerRadius = 2.0;//2.0是圆角的弧度,根据需求自己更改 button.layer.borderColor = [UICo…
UIImageView *svRect; UIImage *backgroundImage = [UIImage imageNamed:@"bg.png"]; backgroundImage = [backgroundImage resizableImageWithCapInsets:UIEdgeInsetsMake(, , ,)]; //这句就是最关键的了 svRect = [[UIImageView alloc] initWithImage:backgroundImage]; [s…