1..引入框架
#import "CLLocation+GPSDictionary.h"
#import "NSDictionary+CLLocation.h"
#import <AssetsLibrary/AssetsLibrary.h>
2.
- (void) imagePickerController: (UIImagePickerController*) reader
 didFinishPickingMediaWithInfo: (NSDictionary*) info
{
    NSString *strType = [info objectForKey:UIImagePickerControllerMediaType];
    if ([strType isEqualToString:@"public.image"]) //当选择的类型是图片
    {
        __block NSMutableDictionary *imageMetadata = nil;
        NSURL *assetURL = [info objectForKey:UIImagePickerControllerReferenceURL];
        ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
        [library assetForURL:assetURL
                 resultBlock:^(ALAsset *asset)  {
                     imageMetadata = [[NSMutableDictionary alloc] initWithDictionary:asset.defaultRepresentation.metadata];
                     //控制台输出查看照片的metadata
                     self.picDataInfo = imageMetadata[@"{TIFF}"][@"DateTime"];
                     NSLog(@"%@**********", self.picDataInfo);
                     self.editeOrNot = YES;
                     UIImage *image = [info objectForKey:@"UIImagePickerControllerEditedImage"]; //先把图片转成NSData
                     self.image = image;
                     [reader dismissViewControllerAnimated:YES completion:nil]; //关闭相册界面
                     self.imageView = [CRMFactory createImageViewWithFrame:CGRectMake(15, self.takePhotoButton.frame.origin.y, 60, 60) image:image];
                     [self.view addSubview:_imageView];
                     //看大图
                     self.imageView.userInteractionEnabled = YES;
                     UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(showPic)];
                     [self.imageView addGestureRecognizer:tap];
                    
                     self.takePhotoButton.frame = CGRectMake(15 + 60 + 15, self.takePhotoButton.frame.origin.y, 60, 60);
                     UIImage *scaleImage = [CRMDatahandle scaleFromImage:image];
                     UIImage *waterPoint = [self addText:scaleImage text:self.picDataInfo];
                     NSData *data = UIImageJPEGRepresentation(waterPoint, 1.0);
                     self.picName = [CRMDatahandle picName];
                     [self uplosaToServersice:data];
                 }
                failureBlock:^(NSError *error) {
                }];
    }
}

#pragma mark - 添加水印
- (UIImage *)addText:(UIImage *)img text:(NSString *)mark {
    if (mark.length != 0) {
    } else {
        //将时间戳转换成时间
        NSDate *date = [NSDate date];
        //    限定格式
        NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
        [formatter setDateFormat:@" yyyy-MM-dd  hh:mm:ss"];
        [formatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
        NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"china"];//时区名字或地区名字
        [formatter setTimeZone:timeZone];
       mark = [formatter stringFromDate:date];
    }
   
    int w = img.size.width;
    int h = img.size.height;
    UIGraphicsBeginImageContext(img.size);
    [img drawInRect:CGRectMake(0, 0, w, h)];
    NSMutableParagraphStyle *paragraphStyle = [[NSParagraphStyle defaultParagraphStyle] mutableCopy];
    paragraphStyle.lineBreakMode = NSLineBreakByCharWrapping;
    NSDictionary *attribute = @{NSFontAttributeName: [UIFont systemFontOfSize:25],
                                NSParagraphStyleAttributeName: paragraphStyle,
                                NSForegroundColorAttributeName : [UIColor redColor],
                                NSTextEffectAttributeName: NSTextEffectLetterpressStyle
                                };
    [mark drawInRect:CGRectMake(0, h - 40, w , 40) withAttributes:attribute];
    UIImage *aImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return aImage;

}

转载于:https://www.cnblogs.com/tian-sun/p/5909953.html

iOS 选择的照片或者拍照的图片上添加日期水印相关推荐

  1. 如何将已有图片做成透明水印_如何用Photoshop在图片上添加透明水印?

    我们经常会在网上看到一些漂亮的图片上有添加各种水印,添加水印可以让图片有一个标记,也可以防止别人盗用你的成果.那么图片上的这些水印是怎么添加的呢?今天,小编就给大家介绍用Photoshop软件来制作图 ...

  2. Java实现在图片上添加文字(水印)

    今天分享一个:通过Java代码,给图片添加文字. 比如下面这个图片,我们在左下角就添加了一个文字版的水印,那么这是如何实现的呢 ? 目录 [1]获取原图片对象 (1.1)读取本地图片 (1.2)读取网 ...

  3. uniapp 调用手机相机拍照实现图片上传

    uniapp 调用手机相机拍照实现图片上传 参考资料:https://blog.csdn.net/weixin_46391646/article/details/108450898 调用相机相册 un ...

  4. iOS在图片上添加文字或图片

    Objective-C在图片上添加文字,请使用如下方法: /**在图片上添加文字,只支持英文,如果想添加其他文字,请看下面的方法@param image 图片@param string 要添加的文字@ ...

  5. iOS在图片上添加文字 图片

    图片上添加文字,在网上找的都是iOS10弃用的一个方法(怕以后麻烦就找了另一种方法替代)弃用链接 简洁版 - (UIImage*)text:(NSString*)text addToImage:(UI ...

  6. 如何在图片上添加贴图?试试这几种方法

    你平时在拍照的时候,有没有遇到过这样的情况:当你拍照后,发现背景不是很符合你的心意出现了一些你不想分享的物品,这个时候你会怎么办呢?一般情况下,有的小伙伴会选择使用马赛克来遮住这些物品,但是有些图片如 ...

  7. 在图片上添加文字并生成图片

    在图片上添加文字并生成图片 开发工具与关键技术:Visual Studio 2015 作者:李德新 撰写时间:2019年6月04日 在我们的日常生活中,我们经常能看到各样格式的表单,而且有时候我们还要 ...

  8. 不懂如何在图片上添加贴纸?马上教你图片加贴纸方法

    有时候我们拍摄的图片上,画面上偶尔会出现一些一些隐私的东西,这个时候怎么办呢?或许很多人首先会想到的就是马赛克吧,其实呢,马赛克确实能帮助我们遮挡住一些私密的东西,但是与此同时,它一方面影响美观,另一 ...

  9. 图片上添加贴纸怎么做?这几种方法很简单

    在图片上添加贴纸是一种非常实用的图片编辑技巧,通过添加贴纸,图片可以变得更加生动有趣,吸引人们的眼球.贴纸可以是各种形状.颜色和大小,从而丰富图片的视觉效果.例如,在一张风景照片中添加一只卡通动物的图 ...

最新文章

  1. Laravel之Eloquent ORM访问器调整器及属性转换
  2. 成功解决matplotlib绘图的时候,自定义横坐标和纵坐标刻度数值(调整坐标轴刻度间隔)
  3. boost::mpi模块对gather() 和gatherv() 集合的测试
  4. 深度残差网络和Highway网络
  5. 配置jvm堆最大内存eden区与s0或者s1区域比例
  6. python封装exe 时间time问题_python模块之datetime
  7. (10)FPGA顶层通用模块(学无止境)
  8. java.util.concurrent 学习(一)
  9. 【已解决】bootstrap table 参数后台获取不到
  10. python自动化看什么书_《Python编程快速上手:让繁琐工作自动化》(异步图书出品)...
  11. matlab投资组合权重,马科维茨投资组合理论(均方模型)学习笔记――基于Matlab(四)...
  12. Java之批量分卷压缩与解压缩实现
  13. kali安装磊科NW392教程
  14. 2017-09-27 ~ 2017-10-02 稻城亚丁旅行笔记
  15. php 数字转大写人民币
  16. htc系统Android 7.1,HTC太强大,被誉为刷机之王,一路升到安卓7
  17. [转] Windows下Hook DirectX
  18. 判断一个字符串中是否包含另一个字符串
  19. boostrap老黄历代码的实现
  20. python3之多线程(应用一)

热门文章

  1. Java中的作用域有哪些
  2. SAPGUI系统登录页面配置的SAProuter有什么用
  3. SqlCommand.Parameters的使用
  4. oracle 打印SQL
  5. NetBeans优化技巧 提升启动速度
  6. Literal的使用和作用
  7. python 易支付sdk
  8. photoshop(ps) cs6中文版
  9. wget的url获取方式
  10. python实现后台系统的JWT认证