jkpang / PPNetworkHelper

AFNetworking 3.x 与YYCache封装
MIT License
1.58k stars 344 forks source link

不能上传含有透明的图片,看相关代码,jpg会导致透明度丢失 #20

Closed 1617176084 closed 7 years ago

1617176084 commented 7 years ago

// 图片经过等比压缩后得到的二进制文件 NSData *imageData = UIImageJPEGRepresentation(images[i], imageScale ?: 1.f); // 默认图片的文件名, 若fileNames为nil就使用

jkpang commented 7 years ago

有这样的问题? 你直接用AFN上传看看会出现这样的问题吗? @1617176084

1617176084 commented 7 years ago

AFN一切正常,看我给你的代码,你的问题出在那里!

jkpang commented 7 years ago

你用AFN上传的时候对图片进行了压缩没? 如果压缩的话是用哪种方式压缩的? @1617176084

1617176084 commented 7 years ago

直有jpg才能压缩,一旦压缩就失去通道值,老哥你肯定要给个选项啊,不使用压缩才能有透明值。

jkpang commented 7 years ago

好的,关于透明图片通道值的问题我确实不知道,今天受教了. 你看使用UIImagePNGRepresentation这个方法处理透明的PNG图片会失去通道值吗.如果不会失去, 我会加进去这个方法. (我这边不好测试图片上传,麻烦了) @1617176084

1617176084 commented 7 years ago

UIImagePNGRepresentation可以的

1617176084 commented 7 years ago

还有 一个东西,static AFHTTPSessionManager *_sessionManager;这个属性要提供一个方法开放出来,一般需求不能满足时要自定义方法,需要用到这个来扩展需求,不然的话很蛋疼。

jkpang commented 7 years ago

好的,到下一个版本我会做相应的调整,非常感谢你的建议 @1617176084

1617176084 commented 7 years ago

非常感谢你的更改,让我少写很多代码