Quartz2D - 给图片加文字水印

//
//  ViewController.m


#import "ViewController.h"

@interface ViewController ()

@property (weak, nonatomic) IBOutlet UIImageView *imageView;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    /*
     注意:我们需要绘制图片到新的图片上,因此需要用到位图上下文
            位图上下文的获取方式跟layer上下文不同,位图上下文跟view无关,所以不需要在drawRect:上。
     */
    
    // 0.加载图片
    UIImage *image = [UIImage imageNamed:@"小黄人"];
    
    // 1.开启一个图形上下文
    /*
     opaque:不透明度
     scale:通常不需要缩放上下文
     */
    UIGraphicsBeginImageContextWithOptions(image.size, NO, 0);
    
    // 2.绘制原生的图片
    [image drawAtPoint:CGPointZero];
    
    // 3.给原生的图片添加文字
    NSMutableDictionary *dict = [NSMutableDictionary dictionary];
    dict[NSForegroundColorAttributeName] = [UIColor redColor];
    dict[NSFontAttributeName] = [UIFont systemFontOfSize:20];
    NSString *str = @"爱多久阿里噶多";
    [str drawAtPoint:CGPointMake(200, 200) withAttributes:dict];
    
    // 4.生成一张图片给我们,从上下文获取图片
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
    
    // 5.关闭图形上下文
    UIGraphicsEndImageContext();
    
    // 6.显示
    self.imageView.image = newImage;
}

@end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值