jpg转png

时间:2023-02-27 15:11:43
对于jpg图片来说,有损压缩因子设置为0.5 可以大大减少图片的体积,而对图片的质量几乎没有太大影响:

下面是测试图片结果:

 
 

// UIImage *image_jpg = [UIImage imageNamed:@"jpgtest.jpg"];

// UIImage *image_png = [UIImage imageNamed:@"pngtest-1.png"];

//

// NSData *data_pngfrompng = UIImagePNGRepresentation(image_png);

// NSData *data_pngfromjpg = UIImagePNGRepresentation(image_jpg);

// NSData *data_jpgfrompng = UIImageJPEGRepresentation(image_png, 0.5);

// NSData *data_jpgfromjpg = UIImageJPEGRepresentation(image_jpg, 0.5);

//

// NSString *documents = [NSHomeDirectory() stringByAppendingString:@"/Documents/"];

//

// NSString *pathpngfrompng = [documents stringByAppendingString:@"data_pngfrompng.png"];

// NSString *pathpngfromjpg = [documents stringByAppendingString:@"data_pngfromjpg.png"];

// NSString *pathjpgfrompng = [documents stringByAppendingString:@"data_jpgfrompng.jpg"];

// NSString *pathjpgfromjpg = [documents stringByAppendingString:@"data_jpgfromjpg.jpg"];

//

// [data_pngfrompng writeToFile:pathpngfrompng atomically:YES];

// [data_pngfromjpg writeToFile:pathpngfromjpg atomically:YES];

// [data_jpgfrompng writeToFile:pathjpgfrompng atomically:YES];

// [data_jpgfromjpg writeToFile:pathjpgfromjpg atomically:YES];

UIImage *image_jpg = [UIImage
imageNamed:@"2231249403.jpg"];

NSData *data_jpgfromjpg = 
UIImageJPEGRepresentation(image_jpg, 0.5);

NSString *documents = [NSHomeDirectory()
stringByAppendingString:@"/Documents/"];

NSString *pathjpgfromjpg = [documents 
stringByAppendingString:@"datcccc.jpg"];
[data_jpgfromjpg
writeToFile:pathjpgfromjpg 
atomically:YES];

NSLog(@"documents=%@",documents);

随机推荐

  1. whereis 和which

    这两个命令用的好,可以很快找出文件的路径 [root@oc3408554812 zip-3.0]# which passwd/usr/bin/passwd[root@oc3408554812 zip- ...

  2. HTML5 拖动

    触发的事件有:dragstart事件.drag事件和dragend事件. 按下鼠标键并开始移动鼠标的时候,会在被拖拽的元素上触发dragstart事件.这时候光标变成”不能放”符号(圆环中有一条反斜线 ...

  3. 网络编程(一):用C#下载网络文件的2种方法

    使用C#下载一个Internet上的文件主要是依靠HttpWebRequest/HttpWebResonse和WebClient.具体处理起来还有同步和异步两种方式,所以我们其实有四种组合. 1.使用 ...

  4. 128. Longest Consecutive Sequence

    Given an unsorted array of integers, find the length of the longest consecutive elements sequence. F ...

  5. fedora 禁止nouveau加载

    To remove / disable nouveau drivers from kernel initramfs ## Backup old initramfs nouveau image ## m ...

  6. 搜索——[HAOI2012]添加号

    题目:[HAOI2012]添加号 描述: [题目描述] 有一个由数字1,2,…9组成的数字串(长度不超过8),问如何将M(M<=5)个加号"+"插入到这个数字串中,使所形成的 ...

  7. MyEclipse取消Show in Breadcrumb的方法

    eclipse中的Show in Breadcrumb是快速导航条,可以清晰的看到我们当前的类,属性或方法的导航 定位. 如果不喜欢的话,取消掉的方法如下: Window -> Customiz ...

  8. Android Lights

    Android Lights 很多Android手机上都配有LED灯,手机在充电.新来短信等时候都会有相应的指示灯提示. Android系统之中,一共定义了8个逻辑灯,包含:背光,键盘灯,按键灯,充电 ...

  9. dwr出现session error

    把项目冲tomcat6迁移到tomcat7之后,在项目运行中发现用到dwr的地方出现了session error错误, 网上搜了一下,是因为tomcat7的安全机制. 解决方法: 在项目的web.xm ...

  10. zigzag方式编码

    按以下公式转换: ParameterInteger = (value << 1) ^ (value >> 31) 参数值不支持大于pow(2,31) - 1或-1 * (pow ...