[Swift通天遁地]五、高级扩展-(8)ImageView(图像视图)的各种扩展方法

[Swift通天遁地]五、高级扩展-(8)ImageView(图像视图)的各种扩展方法,第1张

概述本文将演示图像和图像视图在下载、压缩、裁剪方面的扩展。 首先确保在项目中已经安装了所需的第三方库。 点击【Podfile】,查看安装配置文件。 1 platform :ios, ‘12.0‘2 use_frameworks!3 4 target ‘DemoApp‘ do5 source ‘https://github.com/CocoaPods/Specs.git‘6

本文将演示图像和图像视图在下载、压缩、裁剪方面的扩展。

首先确保在项目中已经安装了所需的第三方库。

点击【Podfile】,查看安装配置文件。

1 platform :ios,12.02 use_frameworks!3 4 target DemoApp do5     source https://github.com/CocoaPods/Specs.git6     pod EZSwiftExtensions7 end

根据配置文件中的相关配置,安装第三方库。

然后点击打开【DemoApp.xcworkspace】项目文件。

在项目导航区,打开视图控制器的代码文件【VIEwController.swift】

现在开始编写代码,依次使用图像类型的各个扩展方法。

  1 import UIKit  2 //在当前的类文件中,引入已经安装的第三方类库  3 import EZSwiftExtensions  4   5 class VIEwController: UIVIEwController {  6   7     overrIDe func vIEwDIDLoad() {  8         super.vIEwDIDLoad()  9         // Do any additional setup after loading the vIEw,typically from a nib. 10         //图像视图的一些扩展方式 11         uiImageVIEwExample() 12         //图像类型的扩展 13         uiImageExtensions() 14         //对图片进行裁切 15         cropImage() 16     } 17      18     //添加一个方法,图像视图的一些扩展方式 19     func uiImageVIEwExample() 20     { 21         //从项目中读取一张图片素材 22         let image = UIImage(named: "Girl")! 23         //初始化一个图像视图,并设置图像视图的坐标、待显示的图片。 24         //在此设置图像视图的宽度为200,高度为等比例缩放。 25         let imageVIEw = UIImageVIEw(x: 0,y: 0,image: image,scaletoWIDth: 200) 26         //通过调用图像视图对象的圆角方法, 27         //将图像视图修改成一个圆角视图。 28         imageVIEw.roundSquareImage() 29         //设置图像视图位于根视图的中心位置 30         imageVIEw.center = self.vIEw.center 31         //将图像视图添加到父视图中 32         self.vIEw.addSubvIEw(imageVIEw) 33     } 34      35     //添加一个方法,快速下载网络图片 36     func downloadImage() 37     { 38         //初始化一个图像视图,并设置图像视图的显示区域 39         let imageVIEw = UIImageVIEw(x: 0,w: 320,h: 568) 40  41         //通过图像视图对象的从网址下载图片的方法,下载指定网址的图片。 42         //imageVIEw.imageWithUrl(url: "http://images.apple.com/v/apple-watch-nike/a/images/overvIEw/features_large.jpg") 43  44         //将图像视图添加到根视图 45         self.vIEw.addSubvIEw(imageVIEw) 46          47         //初始化一个图片,作为图像视图的占位图片。 48         let placeholder = UIImage(named: "background")! 49         //通过图像视图对象的从网址下载图片的方法,下载指定网址的图片。 50         //并设置图像视图的占位图片 51         imageVIEw.imageWithUrl(url: "http://images.apple.com/v/apple-watch-nike/a/images/overvIEw/features_large.jpg", 52                                 placeholder: placeholder)//占位图片 53     } 54      55     //添加一个方法,演示对图像类型的扩展。 56     func uiImageExtensions() 57     { 58         //从项目中读取一张图片 59         let image = UIImage(named: "background")! 60         //输出图片的字节数 61         print(image.getSizeAsBytes()) 62         //输出图片的千字节数 63         print(image.getSizeAsKilobytes()) 64          65         //通过图像对象的压缩方法,可以压缩图像的体积 66         let newImage = UIImage(data: image.compressImage(rate: 0.5)!)! 67         //在控制台输出压缩后的图像的千字节数 68         print(newImage.getSizeAsKilobytes()) 69          70         //初始化一个图像视图对象,并设置图像视图对象的显示区域 71         let imageVIEw = UIImageVIEw(x: 0,h: 568) 72         //使用图像视图显示压缩后的图片 73         imageVIEw.image = newImage 74         //将图像视图对象添加到根视图 75         self.vIEw.addSubvIEw(imageVIEw) 76     } 77  78     //添加一个方法,对图片进行裁切 79     func cropImage() 80     { 81         //从项目中读取一张图片 82         let image = UIImage(named: "Girl")! 83         //在控制台输出图片的原始尺寸 84         print(image.size) 85         //通过图片对象的裁切方法,裁切指定区域的图片内容 86         let croppedImage = image.croppedImage(CGRect(x: 140,y: 160,w: 200,h: 320)) 87         //在控制台输出图片在裁切后的尺寸 88         print(croppedImage?.size as Any) 89          90         //初始化一个图像视图对象,并是设置图像视图对象的显示区域。         91         let imageVIEw = UIImageVIEw(x: 60,y: 40,h: 320) 92         //该图像视图将被用来显示裁切后的图片 93         imageVIEw.image = croppedImage 94         //将图像视图添加到根视图 95         self.vIEw.addSubvIEw(imageVIEw) 96     } 97      98     overrIDe func dIDReceiveMemoryWarning() { 99         super.dIDReceiveMemoryWarning()100         // dispose of any resources that can be recreated.101     }102 }
总结

以上是内存溢出为你收集整理的[Swift通天遁地]五、高级扩展-(8)ImageView(图像视图)的各种扩展方法全部内容,希望文章能够帮你解决[Swift通天遁地]五、高级扩展-(8)ImageView(图像视图)的各种扩展方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1021063.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存