基于Python批量生成指定尺寸缩略图代码实例
作者:艺赛旗RPA社区 时间:2021-12-15 14:58:48
这篇文章主要介绍了基于Python批量生成指定尺寸缩略图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
最近我们商城上架的应用越来越丰富了。但在应用上传的过程中遇到这样的一个问题:每一个上架的应用需要配置一个应用封面图片,并且封面的图片大小有指定的范围:300*175。而 我们制作完的图片一般都会大于这个尺寸。所以每次手动调整大小,又让我产生了偷懒的想法,想法有了那就开始行动吧。
代码
import requests as req
from PIL import Image
from io import BytesIO
def make_thumb(url, sizes=(300, 175)):
"""
生成指定尺寸缩略图
:param path: 图像路径
:param sizes: 指定尺寸
:return: 无返回,直接保存图片
"""
response = req.get(path)
im = Image.open(BytesIO(response.content))
mode = im.mode
if mode not in ('L', 'RGB'):
if mode == 'RGBA':
# 透明图片需要加白色底
alpha = im.split()[3]
bgmask = alpha.point(lambda x: 255 - x)
im = im.convert('RGB')
im.paste((255, 255, 255), None, bgmask)
else:
im = im.convert('RGB')
# 切成方图,避免变形
width, height = im.size
if width == height:
region = im
else:
if width > height:
# h*h
delta = (width - height) / 2
box = (delta, 0, delta + height, height)
else:
# w*w
delta = (height - width) / 2
box = (0, delta, width, delta + width)
region = im.crop(box)
# resize
thumb = region.resize((sizes[0], sizes[1]), Image.ANTIALIAS)
#保存图片
filename = url.split('/')[-1]
name, ext = filename.split('.')
savename = name + str(sizes[0]) + '_' + str(sizes[1]) + '.' + ext
thumb.save(savename, quality=100)
path = r'C:\Users\HP\Desktop\luckylttory.png'
make_thumb(path)
结果展示
原图:
结果图:
来源:https://www.cnblogs.com/isearch/p/11888034.html
标签:python,批量,生成,缩略,图
0
投稿
猜你喜欢
Sql Server 查询性能优化之走出索引的误区分析
2012-05-22 18:56:52
判定IE的各个版本
2010-01-19 14:01:00
一个简单的python程序实例(通讯录)
2023-05-16 06:49:11
python运行cmd命令行的3种方法总结
2023-07-15 18:40:49
SQL Server中导入导出数据的三种方式
2008-11-28 15:53:00
Python PaddleNLP开源实现快递单信息抽取
2023-01-21 04:35:11
python实现的一个火车票转让信息采集器
2023-09-05 11:42:53
详解python 爬取12306验证码
2022-07-17 20:38:20
使用ASP实现广告代理
2010-05-27 12:15:00
Python中使用ipython的详细教程
2023-05-28 13:14:48
python+opencv 读取文件夹下的所有图像并批量保存ROI的方法
2021-02-23 13:07:23
python实现定时提取实时日志程序
2023-03-03 22:31:24
Oracle中时间日期转化函数to_date和to_char的具体使用
2023-07-15 20:20:20
python基础之元组
2021-06-28 08:06:24
pygame实现雷电游戏雏形开发
2021-04-14 13:52:31
Python实战之设计一个多功能办公小工具
2023-05-26 02:54:11
Python实现简易Web爬虫详解
2021-12-11 01:29:16
python轻松过滤处理脏话与特殊敏感词汇
2022-02-07 15:53:28
Asp用分页符实现长文章分页
2007-10-19 18:35:00
在Python的Django框架中包装视图函数
2021-01-08 03:45:45