ios绘制基本图形之水印背景

 1 @interface NJTextImage : UIView
 2 @end
 3
 4
 5 @implementation NJTextImage
 6
 7 - (void)drawRect:(CGRect)rect
 8 {
 9 //    [self test];
10 //    1.加载图片到内存中
11     UIImage *image = [UIImage imageNamed:@"bg"];
12
13     // 利用OC方法将图片绘制到layer上
14     // 将图片绘制到指定的位置
15     [image drawAtPoint:CGPointMake(0, 0)];
16
17     // 利用drawInRect方法绘制图片到layer, 是通过拉伸原有图片
18 //    [image drawInRect:CGRectMake(0, 0, 40, 40)];
19
20     // 利用drawAsPatternInRec方法绘制图片到layer, 是通过平铺原有图片
21 //    [image drawAsPatternInRect:CGRectMake(0, 0, 320, 480)];
22
23 }
24
25 - (void)test
26 {
27     // 画文字
28     NSString *str = @"天气好热地方和计算机的开了房间了开始的解放路口时间疯狂的老师;快疯了;SD卡;焚枯食淡;李开复;顺丰快递说了;开发;拉伸放假快乐的设计风格看了就打算离开房间的数量会计分录开始觉得";
29
30     // 1.获取上下文
31     //    CGContextRef ctx = UIGraphicsGetCurrentContext();
32     // 2.绘图
33     // 不推荐使用C语言的方法绘制文字, 因为quraz2d中的坐标系和UIkit中的坐标系不一致, 绘制出来的文字是颠倒的, 而且通过C语言的方法绘制文字相当麻烦
34     //    CGContextSelectFont(<#CGContextRef c#>, <#const char *name#>, <#CGFloat size#>, <#CGTextEncoding textEncoding#>)
35     //    CGContextShowText(ctx, <#const char *string#>, <#size_t length#>)
36
37     // 绘制矩形
38     // 1.获取上下文
39     CGContextRef ctx = UIGraphicsGetCurrentContext();
40     // 2.绘图
41     CGContextAddRect(ctx, CGRectMake(50, 50, 100, 100));
42     // 3.渲染
43     CGContextStrokePath(ctx);
44
45     NSMutableDictionary *md = [NSMutableDictionary dictionary];
46     // 设置文字颜色
47     md[NSForegroundColorAttributeName] =[UIColor redColor];
48     // 设置文字背景颜色
49     md[NSBackgroundColorAttributeName] = [UIColor greenColor];
50     // 设置文字大小
51     md[NSFontAttributeName] = [UIFont systemFontOfSize:20];
52
53 //    将文字绘制到指点的位置
54 //    [str drawAtPoint:CGPointMake(10, 10) withAttributes:md];
55
56 //    将文字绘制到指定的范围内, 如果一行装不下会自动换行, 当文字超出范围后就不显示
57     [str drawInRect:CGRectMake(50, 50, 100, 100) withAttributes:nil];
58
59
60 }
61
62 @end
时间: 2024-10-31 22:13:46

ios绘制基本图形之水印背景的相关文章

Quartz2D--iOS下的图形绘制

一.基本介绍 Quartz 2D是一个二维绘图引擎,Quartz 2D的API是C语言,来自CoreGraphics框架,没有面向对象的思想. 1.作用:绘制图形:线条.三角形.矩形.圆.弧等 绘制文字 绘制.生成图片(图形) 读取.生成PDF 截图.裁剪图片 自定义UI控件 2.图形上下文(Graphics Context):是一个CGContextRef类型的数据 图形上下文的作用:1.保存绘图信息.绘图状态 2.决定绘制的输出目标(绘制到什么地方,输出目标可以是PDF文件.Bitmap或者

iOS开发UI之Quartz2D使用(绘制基本图形)

iOS开发UI篇—Quartz2D使用(绘制基本图形) 一.简单说明 图形上下文(Graphics Context):是一个CGContextRef类型的数据 图形上下文的作用:保存绘图信息.绘图状态 决定绘制的输出目标(绘制到什么地方去?)(输出目标可以是PDF文件.Bitmap或者显示器的窗口上) 相同的一套绘图序列,指定不同的Graphics Context,就可将相同的图像绘制到不同的目标上. Quartz2D提供了以下几种类型的Graphics Context: Bitmap Grap

转:iOS绘制一个UIView

绘制一个UIView 绘制一个UIVIew最灵活的方式就是由它自己完成绘制.实际上你不是绘制一个UIView,你只是子类化了UIView并赋予子类绘制自己的能力.当一个UIVIew需要执行绘图操作的时,drawRect:方法就会被调用.覆盖此方法让你获得绘图操作的机会.当drawRect:方法被调用,当前图形上下文也被设置为属于视图的图形上下文.你可以使用Core Graphics或UIKit提供的方法将图形画到该上下文中. 你不应该手动调用drawRect:方法!如果你想调用drawRect:

鼠标绘制简单图形

功能: 1.绘制的图形包括直线.椭圆和矩形,通过菜单对绘制的图形切换 2.在视图中使用鼠标动态的绘制图形 分析: 当窗口尺寸发生变化时,引起窗口重绘,会发送WM_PAINT消息,这时首先会擦除窗口的背景,然后再进行重绘操作,这样就把窗口中先前绘制的图形擦除掉了:可以将绘制图形的三要素(起点.终点.绘制类型)保存下来,在窗口重绘调用程序视图类窗口的OnDraw函数中再将图形根据保存的三要素重新输出: 1.数据 在视图中添加两个点坐标 CPoint m_ptOrigin;  //起点坐标 CPoin

[Tool] 使用Astah绘制UML图形

[Tool] 使用Astah绘制UML图形 前言 在软件开发的过程中,开发人员可以绘制UML图形来将分析设计内容转化为图形化文件,方便在团队之间传递分析设计结果.但在团队经费有限的情景中,可能没办法为每个项目成员都配置专业的UML绘制工具,例如Visual Studio Ultimate,来绘制UML图形,这时可以选择一些免费版本的绘制工具,做为团队间绘制UML图形的工具. 本篇文章介绍Astah这个提供免费版本的UML绘制工具,用来在团队经费有限的状况下,为每个成员配置UML绘制工具,避免软件

使用gd2绘制基本图形

应用GD2函数可以绘制的图形有多种,最基本的图形包括条.圆.方形等.无论开发人员绘制多么复杂的图形,都是在这些最基本的图形的基础上进行深化的,只有掌握了最基本的图形的绘制方法,才能绘制出各种具有独特风格的图形. 在GD2中可以分别应用imageline()函数.imagearc()函数和imagerectangle()函数绘制直线,圆形和方法. 下面将介绍这些函数的使用方法: bool imageline( resource image, int x1, int y1, int x2, int

Java入门:绘制简单图形

在上一节,我们学习了如何使用swing和awt工具创建一个空的窗口,本节学习如何绘制简单图形. 基本绘图介绍 Java中绘制基本图形,可以使用Java类库中的Graphics类,此类位于java.awt包中.在我们自己的java程序文件中,要使用Graphics类就需要使用import java.awt.Graphics语句将Graphics类导入进来. Graphics类提供基本的几何图形绘制方法,主要有:画线段.画矩形.画圆.画带颜色的图形.画椭圆.画圆弧.画多边形等.本项目仅用到画直线的功

UIBezierPath+CAShapeLayer 绘制自定义图形

转载注明出处,谢谢. 使用CAShapeLayer与UIBezierPath可以实现不在view的drawRect方法中就画出一些想要的图形. 1.背景知识: UIBezierPath:UIBezierPath是在UIKit中的一个类,继承于NSObject,可以创建基于矢量的路径.此类是Core Graphics框架关于path的一个OC封装.使用此类可以定义常见的圆形.多边形等形状.我们使用直线.弧(arc)来创建复杂的曲线形状.每一个直线段或者曲线段的结束的地方是下一个的开始的地方.每一个

iOS Quartz2D 渐变图形 CGGradient CGShading

最近在学习iOS Quartz2D二维图形绘制--->渐变效果 Quartz2D 渐变 Quartz提供了两个不透明数据odgago创建渐变: CGShadingRef 和 CGGradientRef 可以使用任何一种来创建轴向(axial)或径向(radial)渐变.一个渐变是从一个颜色到另一个颜色的填充 一个轴向渐变(也成为线性渐变) 不说废话直接上干货, 代码和注释还算全,不懂的自行百度吧 <span style="font-size:18px;">// Qua