一般使用UIKit给我们提供的绘图来绘制一些文字,图片这些东西.

UIKit给我们提供画图的方法底层也是分为四步.所以也必须在drawRect方法当中去写.

1.如何画文字?

先创建好要画的文字

使用UIKit提供的方法进行绘制.

方法说明:

drawAtPoint:要画到哪个位置

withAttributes:文本的样式.

[str drawAtPoint:CGPointZero withAttributes:nil];

2.如何添加绘制文字属性?

通过绘制方法的最后一个属性withAttributes来设置文字属性.

它要求传入的是一个字典.它是通过字典的key和Value的形式来设置文字样式.

那传什么key,什么值我们可以在UIKit头文件当中的NSAttributedString类当中去找.

使用形式如下:

创建一个可变的字典,设置key,value

NSMutableDictionary *dict = [NSMutableDictionary dictionary];

字体

dict[NSFontAttributeName] = [UIFont systemFontOfSize:50];

颜色

dict[NSForegroundColorAttributeName] = [UIColor redColor];

设置边框颜色

dict[NSStrokeColorAttributeName] = [UIColor redColor];

dict[NSStrokeWidthAttributeName] = @1;

阴影

NSShadow *shadow = [[NSShadow alloc] init];

shadow.shadowOffset = CGSizeMake(10, 10);

shadow.shadowColor = [UIColor greenColor];

shadow.shadowBlurRadius = 3;

dict[NSShadowAttributeName] = shadow;

3.drawAtPoint:和drawInRect:的区别?

drawAtPoint:不能够自动换行

drawInRect:能够自动换行

4.如果绘制图片?

绘制图片同样开始要先把图片素材导入.

AtPoint:参数说明图片要绘制到哪个位置.

通过调用UIKit的方法drawAtPoint:CGPointZero方法进行绘制;

5.在绘制图片过程当中.drawAtPoint:和drawInRect:两个方法的区别?

drawAtPoint:绘制出来的图图片跟图片的实际尺寸一样大

drawInRect:使用这个方法绘制出来的图片尺寸会和传入的rect区域一样大.

6.如果进行平铺图片?

[image drawAsPatternInRect:rect];

7.如何选用UIKit提供的方法快速画一个矩形?

快速的用矩形去填充一个区域

UIRectFill(rect);

8.如何利用UIKit裁剪一个区域?

UIRectClip(CGRectMake(0, 0, 50, 50));

这个方法必须要设置好裁剪区域,才能有裁剪

转载于:https://www.cnblogs.com/Lorraine1/p/4799078.html

关情纸尾-----Quartz2D-绘制富文本,绘制图片.相关推荐

  1. 关情纸尾-----UIKit基础--QQ自定义布心布局

    简述整个项目的开发过程 1.在main.stroybord 中搭建基本界面 2.创建模型,一个是数据模型,一个是frame模型 3.实现对cell操作的封装 4.解决显示时间的细节问题 5.解决聊天内 ...

  2. 小程序展示后台编辑好的富文本[文字图片视频等]

    小程序在开发的过程中都会遇到小程序官方给了富文本编辑器editor组件,但是只能在小程序端编辑,然后保存到后台的数据库中,但是一般都是网站后台编辑好,然后在小程序端展示后台编辑好的富文本信息.这样就可 ...

  3. 功能需要富文本编译器图片不转base64,琢磨了一下,上代码

    editor = new E('#div1');// 编辑器高度editor.config.height = 300;// 图片转base64(开这个是因为关闭,是因为文件上传窗口也会关闭)edito ...

  4. vue+element-ui实现富文本(含有图片粘贴拖拽上传)

    vue+element-ui实现富文本(含有图片粘贴拖拽上传) Just For Share | 仅仅分享 首先需要安装 cnpm i vue-quill-editor -D 富文本编辑器 cnpm ...

  5. 富文本内图片大小调整,判断有无图片,限制图片大小

    //限制富文本内图片大小,有无图片,限制图片大小const theEle = this.$refs.text; //获取到元素console.log(theEle.value);//获取到富文本内容v ...

  6. 微信小程序:rich-text 富文本中图片自适应

    /*** 处理富文本里的图片宽度自适应* 1.去掉img标签里的style.width.height属性* 2.img标签添加style属性:max-width:100%;height:auto* 3 ...

  7. uniapp的uParse富文本改图片大小

    uniapp的uParse富文本改图片大小 解决方法 <!-- #ifndef H5 --><u-parse class="content" :content=& ...

  8. 解决富文本中图片过大的问题

    富文本中图片如果不进行设置,就会出现下面这种现象. 解决方式: 创建生命周期函数:(注意修改其中的类名) updated(){let DomList=document.getElementsByCla ...

  9. 富文本编辑器图片上传失败的BUG解决:IndexError:list index out of range

    富文本编辑器图片上传失败的BUG解决 问题原因 我们将通过Django上传的图片保存到了FastDFS中,而保存在FastDFS中的文件名没有后缀名(.png/.jpg/.jif),而ckeditor ...

最新文章

  1. Hyperledger Fabric 链码(1) 类型
  2. struts2.1.8,hibernate3.3.2,spring2.5 整合需要哪些jar包
  3. nextgaussian_Java Random nextGaussian()方法与示例
  4. 程序员面试强行用代码画画被骂,20分钟后面试官闭嘴了
  5. mysql的find in set_mysql中find_in_set()函数的使用及in()用法详解
  6. HBuilder创建app 基础
  7. 5年IT从业的感悟和未来百万年薪畅想
  8. Windows远程桌面开发之九-虚拟显示器(Windows 10 Indirect Display 虚拟显示器驱动开发)
  9. TCP和UDP的区别和优缺点
  10. 计算机主机组装图,自己如何组装电脑主机?diy电脑组装教程图解详细步骤+装机心得(5)...
  11. 08系统装iss_安全信息系统| ISS | 第1部分
  12. python窗口中导入图片_Python3 tkinter基础 Text image 文本框中插入图片
  13. css路径自动加上了路径_CSS和关键路径
  14. 阿里云添加管理员用户
  15. selenium 获取元素getAttribute(“innerHTML“)和getAttribute(“outerHTML“)的区别
  16. mail.php,Postaci Webmail
  17. 什么叫html格式化,format是什么意思 格式化自己,只为删除你???
  18. 手机邮箱怎么弄_安卓手机如何接收邮件 教你安卓手机邮箱设置方法
  19. 【图像压缩】DCT图像压缩(压缩率可调)【含GUI Matlab源码 1049期】
  20. 素人做知识付费,还有没有机会

热门文章

  1. mysql存储过程split_mysql存储过程实现split示例
  2. 国土空间规划项目资料获取的途径
  3. 散点图 横纵坐标_厉害了我的Python!散点图还能这么画
  4. plotly包安装_Plotly(一)安装指南
  5. socketserver库的使用
  6. Java的反射(二)
  7. CentOS7.5 firefox Flash插件更新
  8. 搭建hadoop的HA集群模式(hadoop2.7.3+hive+spark)
  9. 201671010114 2016-2017-2 《Java程序设计》学习总结
  10. BDKRHash详解