• IOS图像处理(2)绘制文本


    IOS中可以通过CGContextShowTextAtPoint来绘制文字,但这个方法不支持中文字符,而且在ios7之后也不推荐使用

    我们可以通过NSString的drawAtPoint以及drawInRect实现更加简单的文字绘制

    - (void)drawRect:(CGRect)rect
    {
        //获取图像上下文对象
        CGContextRef context = UIGraphicsGetCurrentContext();
        CGContextSetRGBStrokeColor(context, 250/255.0, 250/255.0, 250/255.0, 1);
        CGContextSetFillColorWithColor(context, [UIColor greenColor].CGColor);
        CGContextSetShadowWithColor(context, CGSizeMake(1, 1), 3, [UIColor yellowColor].CGColor);
        
        
        //使用填充模式绘制文字
        CGContextSetTextDrawingMode(context,kCGTextFill);
        NSString *str = @"this is a jock";
        [str drawAtPoint:CGPointMake(20, 20) withAttributes:@{NSFontAttributeName:[
                                                                  UIFont fontWithName:@"Arial" size:30],NSForegroundColorAttributeName:[UIColor greenColor]}];
        
        //使用描边模式绘制文字
        CGContextSetTextDrawingMode(context, kCGTextStroke);
        [str drawAtPoint:CGPointMake(20, 70) withAttributes:@{NSFontAttributeName:[
                                                                                   UIFont fontWithName:@"Arial" size:30],NSForegroundColorAttributeName:[UIColor magentaColor]}];
        
        CGContextSetTextDrawingMode(context, kCGTextFillStroke);
        [str drawInRect:CGRectMake(20, 120, 100, 100) withAttributes:@{NSFontAttributeName:[UIFont fontWithName:@"Arial" size:30],NSForegroundColorAttributeName:[UIColor redColor]}];
       
    }

    运行结果

  • 相关阅读:
    数据分析(3)-matplotlib基础
    zabbix部署-版本3.2.6
    mysql5.6.35源码安装记录
    mysql数据库主从操作记录
    zabbix+docker
    爬与反爬
    爬虫基础 之(一) --- 初识爬虫
    android p 解锁 忽然亮屏后 恢复亮度
    ddr
    ipi
  • 原文地址:https://www.cnblogs.com/zanglitao/p/4034956.html
Copyright © 2020-2023  润新知