前言
Windows 10 2004
Python 3.8.3
Pillow 7.1.2
代码
# encoding: utf-8
# author: qbit
# date: 2020-09-2
# summary: 给宽图片上下补白边,让其满足一定比例,然后缩放到指定尺寸
import math
from PIL import Image
def add_white_edge(inImgPath, outImgPath, width, height):
r"""
给宽图片上下补白边,让其满足一定比例,然后缩放到指定尺寸
inImgPath: 输入图片路径
outImgPath: 输出图片路径
width: 最终宽度
height: 最终高度
"""
print(f'{inImgPath}')
inImg: Image.Image = Image.open(inImgPath)
bgWidth = inImg.width
bgHeight = inImg.height
if bgWidth > bgHeight:
bgHeight = math.ceil((bgWidth * height) / width)
# 创建一个白色背景图片
bgImg: Image.Image = Image.new("RGB", (bgWidth, bgHeight), (255, 255, 255))
bgImg.paste(inImg, (0, round((bgHeight - inImg.height) / 2)))
bgImg.resize((width, height), Image.LANCZOS).save(outImgPath)
if __name__ == "__main__":
add_white_edge('wide.jpg', 'wide_out.jpg', 108, 150)
示例
相关阅读
本文出自 qbit snap
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。