给一张图片画上水印文字
.h给UIImage添加类目
#import <UIKit/UIKit.h>
@interface UIImage (Watermark)
- (UIImage *)watermarkImageWithText:(NSString *)text;
@end
#import "UIImage+Watermark.h"
@implementation UIImage (Watermark)
- (UIImage *)watermarkImageWithText:(NSString *)text
{
//1.取到上下文
UIGraphicsBeginImageContext(self.size);
//2.绘制图片
[self drawInRect:CGRectMake(0, 0, self.size.width, self.size.height)];
//3.绘制水印文字
CGRect textRect = CGRectMake(0, self.size.height - 30, self.size.width, 30);
NSMutableParagraphStyle *style = [[NSMutableParagraphStyle defaultParagraphStyle] mutableCopy];
style.alignment = NSTextAlignmentCenter;
NSDictionary *attr = @{
NSFontAttributeName: [UIFont boldSystemFontOfSize:25],
NSParagraphStyleAttributeName: style,
NSForegroundColorAttributeName: [UIColor whiteColor]
};
// [[UIColor whiteColor] set];
[text drawInRect:textRect withAttributes:attr];
//4.获取到绘制完成的图片
UIImage *watermarkedImage = UIGraphicsGetImageFromCurrentImageContext();
//5.结束在图片上的绘制
UIGraphicsEndImageContext();
return watermarkedImage;
}
@end
使用
- (void)viewDidLoad {
[super viewDidLoad];
//水印
UIImage *originImage = [UIImage imageNamed:@"baymax.jpg"];
UIImage *watermarkedImage = [originImage watermarkImageWithText:@"dddddddddddddddddddddd"];
UIImageView *imgView = [[UIImageView alloc] initWithImage:watermarkedImage];
imgView.frame = self.view.bounds;
[self.view addSubview:imgView];
}