生成方形缩略图:
Pillow是Python里很常用的图形处理库,我们可以使用Pillow对图片进行缩放和格式转换等处理。对于生成方形的缩略图,我们可以使用Pillow中的thumbnail()函数。
以下是基于Pillow中生成方形缩略图的详细步骤:
- 安装Pillow库。
可以使用pip在命令行中安装Pillow:
pip install Pillow
- 导入Pillow库。
from PIL import Image
- 打开要处理的图片。
with Image.open('image.jpg') as im:
im.show() # 用于显示原图片
- 使用thumbnail()函数生成缩略图并保存。
with Image.open('image.jpg') as im:
size = (300, 300)
im.thumbnail(size)
im.save('thumbnail.jpg')
以上代码将生成一个大小为300×300像素的缩略图。如果想要生成其他不同大小的缩略图,只需要更改size的值即可。
生成圆形缩略图:
要生成圆形的缩略图,我们需要先生成一个圆形的mask,然后把mask应用到图片上。
以下是基于Pillow中生成圆形缩略图的详细步骤:
- 安装Pillow库。
可以使用pip在命令行中安装Pillow:
pip install Pillow
- 导入Pillow库。
from PIL import Image, ImageOps
- 打开要处理的图片,并使用ImageOps中的fit()函数将图片转换为正方形。
with Image.open('image.jpg') as im:
im = ImageOps.fit(im, size, Image.ANTIALIAS) # 将图片转换为正方形
- 生成一个圆形的mask。
mask = Image.new('L', size, 0)
draw = ImageDraw.Draw(mask)
draw.ellipse((0, 0) + size, fill=255)
del draw
- 将mask应用到图片上,生成圆形的缩略图。
im.putalpha(mask)
im.save('thumbnail.jpg')
以上代码将生成一个圆形的缩略图。如果想要生成其他不同大小的缩略图,只需要更改size的值即可。