用Python pillow 创建和保存GIF动画

用Python pillow 创建和保存GIF动画

在这篇文章中,我们将使用一个pillow库来创建和保存gif。

GIFs:图形交换格式(gif)是一种位图图像格式,由美国计算机科学家Steve Wilhite于1987年6月15日领导的在线服务提供商CompuServe的一个团队开发。

一个GIF文件通常存储一个图像,但该格式允许在一个文件中存储多个图像。该格式还有一些参数,可用于对图像进行排序,在短时间内显示每张图像,然后用下一张图像取代它。简单地说,GIF是一种移动图像。

Pillow: Pillow用于在python中进行图像处理。Pillow是在PIL(python图像库)的基础上开发的。PIL在Python 3中不被支持,所以我们使用了一个Pillow

这个模块没有预装在Python中。所以要安装它,在命令行中执行以下命令。

pip install pillow

让我们创建一个gif的步骤:

第1步:首先我们导入我们对PIL模块的要求。

from PIL import Image, ImageDraw

第2步:在我们输入圆圈的数值后创建一个列表。(0,255,0)它是绿色的颜色代码,(255,0,0)是红色的颜色代码。

images = []
width = 200
center = width // 2
color_1 = (0,255, 0)
color_2 = (255, 0, 0)
max_radius = int(center * 1.5)
step = 8

第3步:用For循环来创建一个动画图像。第2行代码用来设置正方形的值,该正方形包含红色,其边缘大小为200。

for i in range(0, max_radius, step):
    im = Image.new('RGB', (width, width), color_2)
    draw = ImageDraw.Draw(im)
    draw.ellipse((center - i, center - i,
                  center + i, center + i), 
                 fill=color_1)
    images.append(im)

第4步:保存gif图像。

images[0].save('pillow_imagedraw.gif',
               save_all = True, append_images = images[1:],
               optimize = False, duration = 10)

以下是完整的实现方案:

from PIL import Image, ImageDraw
  
images = []
  
width = 200
center = width // 2
color_1 = (0,255, 0)
color_2 = (255, 0, 0)
max_radius = int(center * 1.5)
step = 8
  
for i in range(0, max_radius, step):
    im = Image.new('RGB', (width, width), color_2)
    draw = ImageDraw.Draw(im)
    draw.ellipse((center - i, center - i,
                  center + i, center + i),
                 fill = color_1)
    images.append(im)
  
images[0].save('pillow_imagedraw.gif',
               save_all = True, append_images = images[1:], 
               optimize = False, duration = 10)

输出:

用Python创建和保存GIF动画 - pillow

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Python pil