ios 给图片添加水印

//第一种添加水印方法

-(UIImage *)watermarkImage:(UIImage *)img withName:(NSString *)name{
   NSString* mark = name;
   int w = img.size.width;
   int h = img.size.height;

   UIGraphicsBeginImageContext(img.size);
   [img drawInRect:CGRectMake(, , w, h)];

   NSDictionary *attr = @{
              NSFontAttributeName: [UIFont boldSystemFontOfSize:],//设置字体
                NSForegroundColorAttributeName : [UIColor redColor] //设置字体颜色
              };
   [mark drawInRect:CGRectMake(, , , ) withAttributes:attr];//左上角
   [mark drawInRect:CGRectMake(w - , , , ) withAttributes:attr];      //右上角
   [mark drawInRect:CGRectMake(w - , h - - , , ) withAttributes:attr];  //右下角
   [mark drawInRect:CGRectMake(, h - - , , ) withAttributes:attr];    //左下角
   UIImage *aimg = UIGraphicsGetImageFromCurrentImageContext();
   UIGraphicsEndImageContext();

   return aimg;
}

//第二种 画水印方法

- (UIImage *) imageWithWaterMask:(UIImage*)mask inRect:(CGRect)rect

{

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 40000

 if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 4.0)

 {

 UIGraphicsBeginImageContextWithOptions([self size], NO, 0.0); // 0.0 for scale means "scale for device‘s main screen".

 }

#else

 if ([[[UIDevice currentDevice] systemVersion] floatValue] < 4.0)

 {

 UIGraphicsBeginImageContext([self size]);

 }

#endif

 //原图

 [self drawInRect:CGRectMake(0, 0, self.size.width, self.size.height)];

 //水印图

 [mask drawInRect:rect];

 UIImage *newPic = UIGraphicsGetImageFromCurrentImageContext();

 UIGraphicsEndImageContext();

 return newPic;

}

 
时间: 2024-09-26 22:31:12

ios 给图片添加水印的相关文章

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

有时候上传图片要加唯一标识,简单的就是添加一个水印.这里水印我们讲文字,可以是当前系统时间.坐标.地理位置等 原理就是把一个字符串写到图片上,并且字(font)的大小由图片大小控制. 以下是封装好的一个类方法: //NavView.m + (UIImage *) addText:(UIImage *)img text:(NSString *)mark { int w = img.size.width; int h = img.size.height; UIGraphicsBeginImageCo

IOS 给图片添加水印 打印文字

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 CGBitmapContex

iOS边练边学--(Quartz2D)图片添加水印

一.给图片添加水印的基本步骤 加载图片 手动创建位图上下文 绘制原生的图片 给原生的图片添加文字 生成一张图片给我们,从上下文中获取图片 关闭上下文 二.注意:位图上下文的获取方式跟layer上下文不一样.位图上下文需要我们手动创建 三.效果图

麦子学院ios笔记:IOS把图片缓存到本地的几种方法

把ios的图片缓存到本地的方法有几种?现在来看看学生在麦子学院学习ios开发的笔记中有讲到哪几种方法呢? <code>把图片缓存到本地,在很多场景都会用到,如果是只储存文字信息,那建一个plist文件,或者数据库就能很方便的解决问题,但是如果存图片到沙盒就没那么方便了.这里介绍两种保存图片到沙盒的方法. </code> 一.把图片转为base64的字符串存到数据库中或者plist文件中,然后用到的时候再取出来 <code class="hljs" obje

Android 图片添加水印图片或者文字

给图片添加水印的基本思路都是载入原图,添加文字或者载入水印图片,保存图片这三个部分 添加水印图片: private Bitmap createWaterMaskImage(Context gContext, Bitmap src, Bitmap watermark) { String tag = "createBitmap"; Log.d(tag, "create a new bitmap"); if (src == null) { return null; } i

IOS把图片做成圆形效果

利用CAShapeLayer可以制作出任意的几何图形,把它作为UIImageView的遮罩,达到把图片做成圆形效果. imgView = [[UIImageView alloc]initWithFrame:CGRectMake(10, 35, 80, 80)]; imgView.image = [UIImage imageNamed:@"ma.jpg"]; UIBezierPath* path = [UIBezierPath bezierPathWithArcCenter:CGPoin

iOS 把图片存到相册中

把图片存到相册中 -(void)savaPicAction{ UIImageWriteToSavedPhotosAlbum(_imageView.image, nil, nil, nil); UIAlertView * alert = [[UIAlertView alloc] initWithTitle:nil message:@"保存成功" delegate:self cancelButtonTitle:nil otherButtonTitles:@"确定", n

iOS多图片下载

iOS多图片下载.在cell里面下载图片.做了缓存优化. (app.icon是图片地址) // 先从内存缓存中取出图片 UIImage *image = self.images[app.icon]; if (image) { // 内存中有图片 cell.imageView.image = image; } else { // 内存中没有图片 // 获得Library/Caches文件夹 NSString *cachesPath = [NSSearchPathForDirectoriesInDo

一般处理程序为图片添加水印

1.效果图片 2.代码说明 aspx页面上调用方法. <img src="waterImg.ashx"/> 一般处理程序页面代码. private void outputAutoSizeImg(HttpContext Context) { Context.Response.ContentType = "image/png";//设置响应头数据类型,给浏览器看. //根据物理路径读取图片到内存中 using (Image img = Image.FromF