Chinaunix首页 | 论坛 | 博客
  • 博客访问: 48604
  • 博文数量: 40
  • 博客积分: 825
  • 博客等级: 准尉
  • 技术积分: 365
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-01 10:46
文章分类

全部博文(40)

文章存档

2013年(2)

2012年(15)

2011年(23)

我的朋友

分类: 嵌入式

2012-10-23 09:33:55


点击(此处)折叠或打开

  1. CGRect rect = CGContextGetClipBoundingBox(ctx);
  2.     CGContextSetFillColorWithColor(ctx, [[UIColor whiteColor] CGColor]);
  3.     CGContextFillRect(ctx, rect);
  4.     
  5.     CGContextSetAllowsAntialiasing(ctx, YES);
  6.     CGContextSetFillColorWithColor(ctx, [[UIColor blackColor] CGColor]);

  7.     NSString *str = @"fucking";
  8.     [str drawInRect:CGRectMake(100, 100, 100, 100) withFont:[UIFont systemFontOfSize:24.0]];
  9.     
  10.     UIFont *_font = [UIFont systemFontOfSize:24.0];
  11.     CGContextSelectFont(ctx, [_font.fontName UTF8String], _font.pointSize, kCGEncodingMacRoman);
  12.     CGContextSetTextMatrix(ctx, CGAffineTransformScale(CGAffineTransformIdentity, 1, -1));
  13.     CGContextSetTextDrawingMode(ctx, kCGTextFill);
  14.     CGContextShowTextAtPoint(ctx, 100.0, 200.0, [str UTF8String], str.length);
  15.     
  16.     CGContextSetStrokeColorWithColor(ctx, [UIColor blueColor].CGColor);
  17.     CGContextStrokeRect(ctx, CGRectMake(100, 100, 100, 100));
  18.     CGContextStrokeRect(ctx, CGRectMake(100, 200, 100, 100));
  19.     
  20.     CGContextStrokePath(ctx);

上面是一段进行文本绘制的代码,第一种绘制方法绘制时候传入的矩形的左上角是开始绘制文本的左上角,后面一种传入的坐标相当于传入的是绘制基准线的开始位置,和Android中的drawText函数中传入的参数是对应的,当然再使用后面一种方式进行绘制的时候需要进行更多的相关设置,如设定旋转矩阵,因为iOS的CG坐标体系是从上到下递增的,还需要设定绘制模式以及字体等,这里不进行详细描述,具体运行结果如下图:

阅读(1993) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~