今天学长给大家带来了 Python 实现图片添加 logo 的功能。
编写代码
要求:批量给图片加上 logo,并保存为新的图片。
下面是一个简单的 Python 脚本,可以快速实现这个功能,代码如下:
import os
from PIL import Image
# 指定图片所在目录和保存目录
save_dir = './tmp/logo'
# 创建保存目录
os.makedirs(save_dir, exist_ok=True)
# 打开logo图像
logo_image_path = "./resources/logo.png"
logo_image = Image.open(logo_image_path)
# 定义logo在主图上的位置(右下角)
logo_ratio = 0.2 # 您可以调整此比例以控制logo的大小
# 待处理图像所在目录
image_directory = "./resources/logo"
# 待处理图像文件扩展名
image_extensions = [".jpg", ".jpeg", ".png"]
# 遍历目录下的所有图像文件
for filename in os.listdir(image_directory):
if any(filename.lower().endswith(ext) for ext in image_extensions):
# 打开主图像
main_image_path = os.path.join(image_directory, filename)
main_image = Image.open(main_image_path)
# 根据原图的比例缩放logo
main_width, main_height = main_image.size
logo_width, logo_height = logo_image.size
new_logo_width = int(main_width * logo_ratio)
new_logo_height = int(logo_height * (new_logo_width / logo_width))
resized_logo = logo_image.resize((new_logo_width, new_logo_height))
# 计算logo在主图上的位置(右下角)
logo_position = (main_width - new_logo_width, main_height - new_logo_height)
# 将logo粘贴到主图上
main_image.paste(resized_logo, logo_position)
# 保存添加logo后的图像
output_path = os.path.join(save_dir, filename)
main_image.save(output_path)
print(f"成功将logo添加到 {filename} 的右下角并保存到 {output_path}")
print("所有图像处理完成")
运行结果
然后运行该程序,就可以实现批量给图片加 logo,并导出成新的图片,如下图:
结论
通过本文的介绍,你学会了如何使用 Python 快速实现批量给图片加上 logo,并保存为新的图片。
原文始发于微信公众号(学长工具库):15. Python 实现图片添加 logo 功能
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/267467.html