Objective-c 版本

UIKIT_EXTERN UIImage * __nullable UIColorAsImage(UIColor * __nonnull color, CGSize size) {CGRect rect = CGRectMake(0, 0, size.width, size.height);UIGraphicsBeginImageContextWithOptions(rect.size, NO, [UIScreen mainScreen].scale);CGContextRef context = UIGraphicsGetCurrentContext();CGContextSetFillColorWithColor(context,color.CGColor);CGContextFillRect(context, rect);UIImage *image = UIGraphicsGetImageFromCurrentImageContext();UIGraphicsEndImageContext();return image;
}

使用

// 复制上面代码放在任意头文件中,并引用该头文件,在需要的地方调用如下
UIImage *image = UIColorAsImage([UIColor redColor], CGSizeMake(200, 100));

Swift 版本

extension UIColor {func asImage(_ size: CGSize) -> UIImage? {var resultImage: UIImage? = nillet rect = CGRect(x: 0, y: 0, width: size.width, height: size.height)UIGraphicsBeginImageContextWithOptions(rect.size, false, UIScreen.main.scale)guard let context = UIGraphicsGetCurrentContext() else {return resultImage}context.setFillColor(self.cgColor)context.fill(rect)resultImage = UIGraphicsGetImageFromCurrentImageContext()UIGraphicsEndImageContext()return resultImage}
}

使用

let colorImage = UIColor.black.asImage(CGSize(width: 100, height: 100));

iOS开发:UIColor转成纯色图片(UIImage)相关推荐

  1. iOS开发系列--无限循环的图片浏览器

    概述 UIKit框架中有大量的控件供开发者使用,在iOS开发中不仅可以直接使用这些控件还可以在这些控件的基础上进行扩展打造自己的控件.在这个系列中如果每个控件都介绍一遍确实没有必要,所谓授人以鱼不如授 ...

  2. IOS开发基础之截图、图片文字水印

    IOS开发基础之截图.图片文字水印 项目源码在我的主页里面. // // ViewController.m // 31-屏幕截图 // // Created by 鲁军 on 2021/2/22. / ...

  3. iOS开发:利用SDWebImage实现图片加载与缓存

    iOS开发:利用SDWebImage实现图片加载与缓存 SDWebImage是一套开源框架,这个类库提供一个UIImageView类别以支持加载来自网络的远程图片.具有缓存管理.异步下载.同一个URL ...

  4. iOS开发之好用的图片选择第三方TZImagePickerController

    最近的项目中涉及到了类似于发布朋友圈的功能,其中就需要上传照片等媒体内容,所以为了方便和效果好看,使用了TZImagePickerController第三方来管理和调用媒体内容,现在就是简单介绍一下这 ...

  5. iOS开发-UIColor转UIIamge方法

    只能说太神奇了,完美应用到我的毕业设计 - (UIImage*) createImageWithColor: (UIColor*) color {CGRect rect=CGRectMake(0,0, ...

  6. iOS开发--基于AFNetWorking3.0的图片缓存分析

    图片在APP中占有重要的角色,对图片做好缓存是重要的一项工作.[TOC] 理论 不喜欢理论的可以直接跳到下面的Demo实践部分 缓存介绍 缓存按照保存位置可以分为两类:内存缓存.硬盘缓存(FMDB.C ...

  7. iOS开发 关于tableView加载图片时出现卡顿时的解决办法

    新手做开发的时候一般都会遇到使用tableView从网上加载图片并显示图文的时候会有卡顿现象,而这种卡顿现象也是因为多种原因造成的.一般可以分为两种:一种是由于网上加载图片需要动态定义cell的高度( ...

  8. ios开发 把视频文件和图片保存到相册

    保存图片: UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextIn ...

  9. iOS开发--汉字转成没有声调也没有空格的拼音

    //汉字转成没有声调也没有空格的拼音 - (NSString *)transformToPinYin:(NSString *)wordStr {     NSMutableString *mutabl ...

最新文章

  1. 一些常用工具地址,随时更新中~
  2. 2021年春季学期-信号与系统-第五次作业参考答案-第十一移小题—MATLAB
  3. ubuntu 16.04 搭建 python 开发环境
  4. 8乘8led点阵显示数字_51单片机程序设计:[7]88点阵显示汉字
  5. Mybatis源码:Executor 模板模式
  6. [html] 怎样计算首屏和白屏的时间?
  7. pyvex 的正确安装方式
  8. vi测试仪维修成功率高吗?_欧森杰检测仪:臭氧检测仪的六大特点,您真的了解吗?...
  9. python3 抓包 解包_Python结构包,解包
  10. 登录 Unix 操作系统
  11. 苹果系统与win10连接到服务器,苹果手机怎么连接win10电脑详细步骤
  12. 【20211208】【Python】UCI数据集的简单介绍和使用Python保存UCI数据集为.mat文件
  13. 饼状统计图php,制作圆饼统计图
  14. ffmpeg 截取切割视频报错
  15. html 单元格被撑开_CSS教程:表格不被撑开的解决办法—css教程
  16. java星座测试需求分析_如何进行软件测试需求分析
  17. Android两个app间跳转-deepLink的使用
  18. 【OMNET+Veins+SUMO】【视频】车联网仿真框架搭建指南
  19. POJ 3842 An Industrial Spy 快筛质数+STL乱搞
  20. easyui datebox时间控件改为年月视图,值也为年月

热门文章

  1. vb.net程序可以在触摸屏上运行么_马自达 3 为什么抛弃了触摸屏?
  2. 贴片电阻阻值降低失效分析
  3. 计算机应用基础学是高级的书,清华大学出版社-图书详情-《计算机应用基础初级教程》...
  4. [ESC]Linux终端远程连接不上服务器的问题解决,报错:Could not connect to ... (port 22): Connection failed.
  5. 找咨询代理CMMI认证的好处
  6. 阿里云旺(即时通讯)基础使用
  7. 如何设置PCB过孔盖油 AD、 Protel 99 SE、 PADS Layout
  8. java登陆器_Java登陆器
  9. JAVA计算机毕业设计德云社票务系统Mybatis+系统+数据库+调试部署
  10. Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment