帮我写一个输入png图片,按照我的要求自动输出不同大小的png图片的函数
时间: 2024-02-17 08:01:36 浏览: 24
好的,以下是一个Python的示例函数,可以实现输入PNG图片,自动输出不同大小的PNG图片的功能:
```python
from PIL import Image
def resize_png(input_path, output_path, sizes):
"""
:param input_path: 输入PNG图片的路径
:param output_path: 输出PNG图片的路径
:param sizes: 一个包含不同尺寸的列表,如[100, 200, 300]
"""
with Image.open(input_path) as im:
# 遍历每个尺寸
for size in sizes:
# 计算新的宽度和高度
width, height = im.size
if width > height:
new_width = size
new_height = int(size * height / width)
else:
new_height = size
new_width = int(size * width / height)
# 调整大小并保存为新文件
new_im = im.resize((new_width, new_height))
new_path = f"{output_path}_{size}.png"
new_im.save(new_path)
# 示例用法
input_path = "example.png"
output_path = "example_resized"
sizes = [100, 200, 300]
resize_png(input_path, output_path, sizes)
```
你可以将`input_path`替换为你的PNG图片路径,将`output_path`替换为你想要输出的文件名(不包含文件扩展名),并修改`sizes`列表以包含你需要的不同尺寸即可。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)