在Python中的Google App Engine上,如何检测JPEG是否使用CMYK颜色空间,以及如何将其转换为RGB?

应用转换时,Google App Engine中的Images API似乎无法正确处理CMYK JPEG图像.在生产服务器上,生成的图像看上去被洗掉了,在开发服务器上(GAE使用PIL的情况下),生成的图像更暗且清晰度较低.

该API似乎假定所有JPEG文件都是RGB.

有没有办法在Google App Engine上检测CMYK图像?

有没有办法将图像转换为RGB?

解决方法:

JPEG既可以指格式标准JIF,也可以指最广泛使用的兼容实现JFIF.

不幸的是,对于使用Adobe基于CMYK的格式编码的JPEG进行检测或转换,Images API没有文档支持.从技术上讲,这些是有效的JPEG,但是对格式的支持似乎很少.

hachoir-parser通过解析二进制流来支持detecting CMYK JPEGs.只要是纯python,它就可以在App Engine上运行.

您可以在App Engine issue tracker上的Images API中请求官方支持.

上一篇:Python:JPG->JPEG


下一篇:jQuery 图片上传