Swift 根据给定宽度改变图片大小

 

 对UIImage的扩展

 1 extension UIImage{
 2     // 给定指定宽度,返回结果图像
 3     func scaleImageToWidth(_ width: CGFloat) -> UIImage {
 4         
 5         // 1. 计算等比例缩放的高度
 6         let height = width * size.height / size.width
 7         
 8         // 2. 图像的上下文
 9         let s = CGSize(width: width, height: height)
10         
11         // 3.提示:一旦开启上下文,所有的绘图都在当前上下文中
12         UIGraphicsBeginImageContext(s)
13         
14         // 4.在制定区域中缩放绘制完整图像
15         draw(in: CGRect(origin: CGPoint.zero, size: s))
16         
17         // 5. 获取绘制结果
18         let result = UIGraphicsGetImageFromCurrentImageContext()
19         
20         // 6. 关闭上下文
21         UIGraphicsEndImageContext()
22 
23         // 7. 返回结果
24         return result!
25     }
26 
27 }

猜你喜欢

转载自www.cnblogs.com/chenxiaopao/p/9148603.html
今日推荐