zoukankan      html  css  js  c++  java
  • OSError: cannot write mode RGBA as JPEG

    不好使,RGBA转化不了RGB啊!!!!!

    原代码

    captcha.save('code.jpg')
    1
    原因:RGBA意思是红色,绿色,蓝色,Alpha的色彩空间,Alpha指透明度。而JPG不支持透明度,所以要么丢弃Alpha,要么保存为.png文件

    解决
    方法一

    captcha=captcha.convert('RGB')
    captcha.save('code.jpg')
    1
    2
    方法二

    captcha.save('code.png')
    ————————————————
    版权声明:本文为CSDN博主「小小蒲公英」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/weixin_39777626/article/details/82774270/

    ---------------------

    https://www.it610.com/article/1294407617384357888.htm

    # -*- coding: utf-8 -*-
    import os
    import glob
    from PIL import Image
    import os.path
    file='D:/dogdog'
    if 'jpg' in file[-4:]:
        im = Image.open(file)
        r, g, b, a = im.split()
        im = Image.merge("RGB", (r, g, b))
        os.remove(file)
        im.save(file[:-4] + ".jpg")
    
    file = file[:-4] + ".jpg"
    
    #修改图片文件大小jpgfile:图片文件;savedir:修改后要保存的路径'''
    def convertjpg(jpgfile, savedir, width=1280, height=800):
        img = Image.open(jpgfile)
        new_img = img.resize((width, height), Image.BILINEAR)
        new_img.save(os.path.join(savedir, os.path.basename(jpgfile)))
    
    #''查找给定路径下图片文件,并修改其大小'''
    def modifyjpgSize(file, saveDir):
        for jpgfile in glob.glob(file):
            convertjpg(jpgfile, saveDir)
    
    
    # 测试代码
    
    saveDir = r'D:\dog2'
    modifyjpgSize(file, saveDir)
  • 相关阅读:
    大牛都是这样写测试用例的,你get到了嘛?
    炸!分享美团面试关于selenium的面试题
    功能测试如何快速转向自动化测试?
    接口测试之深入理解HTTPS
    Linux之用户和权限
    Hash函数及其应用
    用代码控制网络断开与重连
    Windows Azure初体验
    JS跨域知识整理
    最大子序列和问题
  • 原文地址:https://www.cnblogs.com/auschwitzer/p/15710484.html
Copyright © 2011-2022 走看看