Pillow图片格式转换

Pillow 库支持多种图片格式,您可以直接使用 open() 方法来读取图片,并且无须考虑图片是何种类型。同时,Pillow 能够很轻松地实现图片格式之间的转换。

图片格式之间的转换主要有以下两种方法,下面分别对它们进行了介绍:
save()
顾名思义,save() 方法用于保存图像,当不指定文件格式时,它会以默认的图片格式来存储;如果指定图片格式,则会以指定的格式存储图片。save() 的语法格式如下:
Image.save(fp, format=None)
参数说明如下:
fp:图片的存储路径,包含图片的名称,字符串格式;
format:可选参数,可以指定图片的格式。

示例如下:

from PIL import Image
im = Image.open(“C:/Users/Administrator/Desktop/c-net.png”)
im.save(‘C:/Users/Administrator/Desktop/c.biancheng.net.bmp’)
此时您的计算机桌面上会存在一个 c.bianchneg.net.BMP格式的图片。
convert()+save()

注意,并非所有的图片格式都可以用 save() 方法转换完成,比如将 PNG 格式的图片保存为 JPG 格式,如果直接使用 save() 方法就会出现以下错误:

from PIL import Image
im = Image.open(“C:/Users/Administrator/Desktop/c-net.png”)
im.save(‘C:/Users/Administrator/Desktop/c.biancheng.net.jpg’)

错误信息如下所示:

#系统错误,RGBA不能作为JPEG图片的模式

OSError: cannot write mode RGBA as JPEG
引发错误的原因是由于 PNG 和 JPG 图像模式不一致导致的。其中 PNG 是四通道 RGBA 模式,即红色、绿色、蓝色、Alpha 透明色;JPG 是三通道 RGB 模式。因此要想实现图片格式的转换,就要将 PNG 转变为三通道 RGB 模式。

Image 类提供的 convert() 方法可以实现图像模式的转换。该函数提供了多个参数,比如 mode、matrix、dither 等,其中最关键的参数是 mode,其余参数无须关心。语法格式如下:

convert(mode,parms**)
mode:指的是要转换成的图像模式;
params:其他可选参数。

修改后的代码如下所示:

from PIL import Image
im = Image.open(“C:/Users/Administrator/Desktop/c-net.png”)
#此时返回一个新的image对象,转换图片模式
image=im.convert(‘RGB’)
#调用save()保存
image.save(‘C:/Users/Administrator/Desktop/c.biancheng.net.jpg’)
通过以上代码,成功将 PNG 格式的图片转换为了 JPG 格式。

Pillow图片格式转换相关推荐

  1. python图片保存jpg、show变成bmp_Python 图片格式转换

    图片格式转换可以利用各种软件 今天介绍一下如何使用 Python 实现各种图片格式的转换 1. SVG 转其他格式 读取 SVG 格式文件,需要安装 svglib 库 pip install svgl ...

  2. 关于图片格式转换(png、jpg转tif)

    关于图片格式转换(png.jpg转tif) 看来网上很多文章,图片格式的转换有opencv库和PIL库,由于只是简单对图像进行格式转换,所以选择了PIL库(Pillow支持最新的3.x版本)进行相应的 ...

  3. Python 实现图片格式转换,jpg\png\webp等,附源码

    Python 实现图片格式转换,jpg\png\webp等,附源码 需要使用 PIL库,但python 3是无法安装该库的,如果是python 3安装pillow库即可. 1.安装 python 2 ...

  4. ASP.NET2.0图片格式转换【月儿原创】

    ASP.NET2.0图片格式转换 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.4.20 说明:本文实现了 图片格式随意转换( ...

  5. Winform中实现图片格式转换(附代码下载)

    场景 选择一张照片并选择保存位置和要转换的图片格式实现图片格式转换. 项目运行效果 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸 ...

  6. python gif_python 将png图片格式转换生成gif动画

    先看知乎上面的一个连接 用Python写过哪些[脑洞大开]的小工具? 这个哥们通过爬气象网站的气象雷达图,生成一个gif的动态图.非常有趣且很实用,那咱也实现下. 我们先实现一个从GIF提取帧的代码 ...

  7. 图片格式转换 - .webp 转格式为 .png / .jpg

    图片格式转换 - .webp 转格式为 .png / .jpg 很多时候,网页上素材图片格式出现了.webp格式的,PS无法正常打开查看或使用,所以需要转换一下其他格式(如.png / .jpg 等等 ...

  8. php怎么将网页变成图片格式,php如何实现图片格式转换

    [摘要] PHP即"超文本预处理器",是一种通用开源脚本语言.PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言.PHP独特的语法混合了C.Java.Perl以及 ...

  9. Python图片格式转换,图片压缩

    PyQt 图片格式转换,图片压缩 界面展示 # -*- coding: utf-8 -*- import osfrom PIL import Image from PIL.ImageFile impo ...

最新文章

  1. 【OpenCV 4开发详解】图像上绘制几何图形
  2. HCNA多区域OSPF配置
  3. linux 加密库 libsodium 安装
  4. cnblogs_504 Gateway Time-out
  5. AI应用开发基础傻瓜书系列3-激活函数
  6. java swt 下拉列表_求助:SWT 下拉列表
  7. android里R.layout.的问题
  8. Scrapy 轻松定制网络爬虫
  9. eplan 2.7安装过程中multikey黄色感叹号解决办法
  10. 260道网络安全工程师面试题(附答案)
  11. 2022腾讯云学生服务器申请流程(全攻略)
  12. Oracle如何导出存储过程
  13. WD --蓝盘绿盘黑盘红盘的区别
  14. Codeforces Round #620 (Div. 2)(D. Shortest and Longest LIS)(O(n log n)的最长上升子序列或者贪心)
  15. 快速幂运算(入门完整版)
  16. Redis系列之——Redis-Cluster
  17. 用python-sklearn做广州房价预测——以此为例说明如何使用python做简单的数据分析
  18. 《简明数学分析》郇中丹——1.2对课程学习的忠告
  19. 雅思N、NG专项(目标是保证一个都不错)
  20. linux lvm 8e下继续划分分区,linux下LVM学习_逻辑卷管理

热门文章

  1. 建荣AX3298作为航拍启动流程
  2. cxf-spring-pratice-service
  3. opencv —— morphology形态学操作函数讲解(python)
  4. syslog-ng 和syslog-ng tls 服务端配置
  5. SAP BOM详细解析
  6. 单机单卡,单机多卡,多机多卡训练代码
  7. MotioninJoy安装教程-版本0.6.0003
  8. 2021年中国民爆行业企业经营情况及主要产品产销量分析:工业雷管、工业炸药产销量均有所下滑[图]
  9. FIFO深度计算公式
  10. Linux 的FHS