python - 对 JPG 图像进行操作时获取 "cannot write mode P as JPEG"

标签 python macos python-imaging-library pillow

我正在尝试调整一些图像的大小,其中大部分是 JPG。但在一些图像中,我收到了错误:

Traceback (most recent call last):
  File "image_operation_new.py", line 168, in modifyImage
    tempImage.save(finalName);
  File "/Users/kshitiz/.virtualenvs/django_project/lib/python2.7/site-     packages/PIL/Image.py", line 1465, in save
   save_handler(self, fp, filename)
  File "/Users/kshitiz/.virtualenvs/django_project/lib/python2.7/site-   packages/PIL/JpegImagePlugin.py", line 455, in _save
    raise IOError("cannot write mode %s as JPEG" % im.mode)
IOError: cannot write mode P as JPEG

我没有更改图像类型,而是使用 Pillow 库。我的操作系统是 Mac OS X。我该如何解决这个问题?

最佳答案

您需要将图像转换为 RGB 模式。

Image.open('old.jpeg').convert('RGB').save('new.jpeg')

关于python - 对 JPG 图像进行操作时获取 "cannot write mode P as JPEG",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21669657/

相关文章:

python 使用 if 语句编辑文件

regex - 在 Bash 中提取 JSON 值

python - 从 Python 中的目录转换所有文件(.jpg 到 .png)

python - 安装包(Python PIL/Pillow)但我无法导入它

python - Odoo - 防止按钮关闭向导

python - django Rest Framework - 如何为序列化器添加静态字段值

python - 在 python 正则表达式中使用 OR 的最佳方法是什么

macos - 半透明 NSView

php - 在 Mac 上使用 Xampp 设置 Wordpress

python - 使用 PIL 在 Python 中进行图像处理并面对 fromarray() 的问题