基于Python的Pillow库实现图片的批量格式转换并添加水印(上完整代码不废话)

以下是一个更完整且带有详细说明的基于Python的  Pillow  库实现图片的批量格式转换并添加水印的程序示例:
 

from PIL import Image, ImageDraw, ImageFont
import os


# 函数用于批量转换图片格式并添加水印
def batch_convert_and_watermark(input_folder, output_folder, watermark_text, font_path="arial.ttf", font_size=36,
                                watermark_color=(255, 255, 255, 128), output_format="png"):
    """
    这个函数实现对指定输入文件夹内的所有图片进行批量处理,包括添加水印以及转换格式后保存到输出文件夹。

    参数:
    - input_folder (str): 存放原始图片的文件夹路径,函数会遍历该文件夹下的所有图片文件进行处理。
    - output_folder (str): 处理后的图片要保存到的目标文件夹路径。需要确保该文件夹存在,若不存在程序会尝试创建它。
    - watermark_text (str): 要添加到图片上的水印文字内容。
    - font_path (str, 可选): 字体文件的路径,默认是 "arial.ttf",需保证该字体文件在相应路径可获取到,可根据实际情况替换为其他字体文件。
    - font_size (int, 可选): 水印文字的字体大小,默认是36像素,可按需调整大小。
    - watermark_color (tuple, 可选): 水印文字的颜色及透明度,以RGB和透明度的元组形式表示,默认是白色半透明 (255, 255, 255, 128),
                                       可根据喜好修改颜色值(RGB范围0-255)以及透明度值(0-255)。
    - output_format (str, 可选): 处理后图片的输出格式,默认是 "png",支持常见的图片格式如 "jpg", "jpeg" 等,根据需求修改后缀名即可。
    """
    # 检查输出文件夹是否存在,如果不存在则创建它
    if not os.path.exists(output_folder):
        os.makedirs(output_folder)

    try:
        # 加载字体文件
        font = ImageFont.truetype(font_path, font_size)
    except OSError:
        print(f"无法加载字体文件 {font_path},请检查字体文件路径是否正确,将使用默认字体替代。")
        font = ImageFont.load_default()

    # 遍历输入文件夹中的所有文件
    for file_name in os.listdir(input_folder):
        file_path = os.path.join(input_folder, file_name)
        # 判断是否为图片文件,这里简单通过文件名后缀来判断,可根据实际情况完善判断逻辑
        if file_name.lower().endswith(('.png', '.jpg', '.jpeg', '.bmp&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值