IOS 给图片添加水印(文字)

有时候上传图片要加唯一标识,简单的就是添加一个水印。这里水印我们讲文字,可以是当前系统时间、坐标、地理位置等

原理就是把一个字符串写到图片上,并且字(font)的大小由图片大小控制。

以下是封装好的一个类方法:

//NavView.m

+ (UIImage *) addText:(UIImage *)img text:(NSString *)mark {

    int w = img.size.width;

    int h = img.size.height;

    UIGraphicsBeginImageContext(img.size);

    [Orange set];

    [img drawInRect:CGRectMake(0, 0, w, h)];

    [[self showWater:mark] drawInRect:CGRectMake(0, 0.7*h, w, 0.5*h) withFont:[UIFont systemFontOfSize:w/11.0/1.5] lineBreakMode:NSLineBreakByCharWrapping alignment:NSTextAlignmentCenter];

//现在文字高度我设的时0.7*h的位置,字的大小是图片的宽度的2/3

    UIImage *aimg = UIGraphicsGetImageFromCurrentImageContext();

    UIGraphicsEndImageContext();

    return aimg;

}

eg.加水印的基础图片image(UIImage) 水印文字为mark

image=[NavView  addText:image text: mark];

 

posted on 2014-08-06 22:38  ACM_Someone like you  阅读(1588)  评论(0编辑  收藏  举报

导航