iOS--给图片添加水印

在iOS开发的过程中,有时需要给图片添加水印,但UIImage并没有提供直接的方法,下面我们给UIImage添加一个catgory,增加一个方法实现水印添加

使用方法:
通过UIImage 直接调用,传入的参数分别是:
要添加水印的图片,
水印添加位置,一般是根据展示图片的UIImageView确定,
水印内容。

下面看实现代码:

在类别的头文件里增加一个类方法:

+ (UIImage *)addWatermarkInImage:(UIImage *)image AtPonit:(CGPoint)point WithText:(NSString *)string;

在实现文件里面实现这个方法:

+ (UIImage *)addWatermarkInImage:(UIImage *)image AtPonit:(CGPoint)point WithText:(NSString *)string{
    //开启一个图形上下文
    UIGraphicsBeginImageContextWithOptions(image.size, NO, 0.0);
    //绘制上下文:1-绘制图片
    [image drawAtPoint:point];
    
    //绘制上下文:2-添加文字到上下文
    NSDictionary *dic = @{
                          NSFontAttributeName:[UIFont systemFontOfSize:20],
                          NSForegroundColorAttributeName:[UIColor blackColor]
                          };
    
    [string drawAtPoint:point withAttributes:dic];
    
    //从图形上下文中获取合成的图片
    UIImage *watermarkImage = UIGraphicsGetImageFromCurrentImageContext();
    
    //关闭上下文
    UIGraphicsEndImageContext();
    
    return watermarkImage;
}

感谢大家的观看!