详解在Python中把.PNG转换成.GIF

  • Post category:Python

在Python中将.PNG转换为.GIF需要用到Python Imaging Library(PIL)库,下面为详细操作流程:

步骤1:安装Python Imaging Library(PIL)库

安装PIL库所需的命令行代码如下:

pip install Pillow

步骤2:导入库并打开PNG图片

首先在代码中引入PIL库:

from PIL import Image

打开PNG文件:

with Image.open('sample.png') as image:
    image.show()   # 显示PNG文件

步骤3:将PNG文件保存为GIF格式

PNG文件可以转换成多种格式,包括GIF格式,使用PIL库将PNG文件转换为GIF格式的代码如下:

image = Image.open('sample.png')
image.save('sample.gif')

上述代码将打开“sample.png”的PNG图像,将其保存为“sample.gif”的GIF格式。

示例1: 通过循环将文件夹下所有PNG文件转换为GIF文件

import os
from PIL import Image

dir = './images/'
for filename in os.listdir(dir):
    if filename.endswith('.png'):
        image = Image.open(os.path.join(dir, filename))
        image.save(os.path.join(dir, filename[:-4]+'.gif'))

上述代码将循环遍历“images”文件夹下所有以“.png”结尾的文件,并将它们保存为同名的GIF文件。

示例2: 转换文件的大小和透明度

import os
from PIL import Image

dir = './images/'
for filename in os.listdir(dir):
    if filename.endswith('.png'):   
        image = Image.open(os.path.join(dir, filename)).convert('RGBA')
        resized_image = image.resize((100, 100)) 
        resized_image.putalpha(128) # 设置透明度
        resized_image.save(os.path.join(dir, filename[:-4]+'.gif'))

上述代码将会把大小为100*100的PNG图片转换成透明背景GIF文件。要设置透明度,需要将PNG文件转换为RGBA模式,并使用“putalpha”函数添加透明度。