• 关于图片的重绘,从而进行压缩


    //重新画图像

    -(NSData *)drawPicture:(UIImage *)image

    {

        // 加载图片

    //    UIImage *image = [UIImage imageNamed:@"小黄人"];

        

        // 1.开启上下文

        // size:位图上下文,一般根图片一样大

        // opaque:不透明度,只要跟上下文相关的都是叫不透明度,根view相关的叫透明度

        // opaque:YES 不透明 NO: 透明,一般都是使用透明的上下文

        // scale: 0 表示不需要缩放

        UIGraphicsBeginImageContextWithOptions(image.size, NO, 0.1);

        

        // 2.画图片

        [image drawAtPoint:CGPointZero];

        

        

        // 4.把上下文中的内容生成一张图片,从上下文中获取图片

        image = UIGraphicsGetImageFromCurrentImageContext();

        

        // 5.关闭上下文

        UIGraphicsEndImageContext();

        

        // 把图片转换成二进制数据

        NSData *data = UIImagePNGRepresentation(image);

        

        // 写入桌面

        return data;

    }

    对比与直接用

      UIImageJPEGRepresentation(<#UIImage * _Nonnull image#>, <#CGFloat compressionQuality#>)

     进行压缩。第一种方法的优势是不会使图片变形,只是像素变小,等比例压缩

  • 相关阅读:
    【VirtualBox】共享文件夹失效问题
    【Ubuntu】全局代理
    phpStudy(lnmp)集成环境安装
    MemcacheQ 的安装与使用
    Windows 64位下安装Redis详细教程
    http与https的区别
    cookie 和session 的区别详解
    setcookie各个参数详解
    MySQL 数据备份与还原
    linux命令行下导出导入.sql文件
  • 原文地址:https://www.cnblogs.com/handsomeBoys/p/5083188.html
Copyright © 2020-2023  润新知