您的位置:首页 > 移动开发 > IOS开发

ios 加水印

2015-07-14 21:09 429 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/iOS_And_Swift/article/details/46883575 1.加文字   -(UIImage *)addText:(UIImage *)img text:(NSString *)text1  {           //get image width and height           int w = img.size.width;          int h = img.size.height;          CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();          //create a graphic context with CGBitmapContextCreate          CGContextRef context = CGBitmapContextCreate(NULL, w, h, 8, 4 * w, colorSpace, kCGImageAlphaPremultipliedFirst);         CGContextDrawImage(context, CGRectMake(0, 0, w, h), img.CGImage);          CGContextSetRGBFillColor(context, 0.0, 1.0, 1.0, 1);          char* text = (char *)[text1 cStringUsingEncoding:NSASCIIStringEncoding];          CGContextSelectFont(context, "Georgia", 30, kCGEncodingMacRoman);          CGContextSetTextDrawingMode(context, kCGTextFill);          CGContextSetRGBFillColor(context, 255, 0, 0, 1);          CGContextShowTextAtPoint(context, w/2-strlen(text)*5, h/2, text, strlen(text));          //Create image ref from the context          CGImageRef imageMasked = CGBitmapContextCreateImage(context);          CGContextRelease(context);          CGColorSpaceRelease(colorSpace);          return [UIImage imageWithCGImage:imageMasked];  }   2.加图片 -(UIImage *)addImageLogo:(UIImage *)img text:(UIImage *)logo  {         //get image width and height          int w = img.size.width;          int h = img.size.height;         int logoWidth = logo.size.width;          int logoHeight = logo.size.height;          CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();                //create a graphic context with CGBitmapContextCreate          CGContextRef context = CGBitmapContextCreate(NULL, w, h, 8, 4 * w, colorSpace, kCGImageAlphaPremultipliedFirst);          CGContextDrawImage(context, CGRectMake(0, 0, w, h), img.CGImage);          CGContextDrawImage(context, CGRectMake(w-logoWidth, 0, logoWidth, logoHeight), [logo CGImage]);          CGImageRef imageMasked = CGBitmapContextCreateImage(context);          CGContextRelease(context);          CGColorSpaceRelease(colorSpace);          return [UIImage imageWithCGImage:imageMasked];          //  CGContextDrawImage(contextRef, CGRectMake(100, 50, 200, 80), [smallImg CGImage]);  }   3.加半透明的水印 - (UIImage *)addImage:(UIImage *)useImage addImage1:(UIImage *)addImage1 {            UIGraphicsBeginImageContext(useImage.size);                 [useImage drawInRect:CGRectMake(0, 0, useImage.size.width, useImage.size.height)];               [addImage1 drawInRect:CGRectMake(0, useImage.size.height-addImage1.size.height, addImage1.size.width, addImage1.size.height)];              UIImage *resultingImage = UIGraphicsGetImageFromCurrentImageContext();           UIGraphicsEndImageContext();                return resultingImage;    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: