使用python给图片加上文字水印

使用python给图片加上文字水印

作用

  1. 给图片加上文字水印
  2. 文字水印的字体,颜色,位置可自定义

效果

原图:

加水印后的图:

代码

python 复制代码
from PIL import Image, ImageDraw, ImageFont


def add_text_watermark(input_image_path, output_image_path, text, position, font_path, font_size, color):
    # 打开图片
    img = Image.open(input_image_path)

    # 创建一个可以在给定图像上绘图的对象
    draw = ImageDraw.Draw(img)

    # 加载字体,并设置字体大小
    font = ImageFont.truetype(font_path, font_size)

    # 获取文本大小(宽度,高度)
    #text_width, text_height = draw.textsize(text, font)

    # 根据给定的位置调整文本位置
    # 这里假设position是一个元组,包含(x, y)坐标
    # 例如,如果你想让文本在右下角,你可以使用(img.width - text_width, img.height - text_height)
    x, y = position

    # 在图片上添加文本
    draw.text((x, y), text, fill=color, font=font)

    # 保存图片
    img.save(output_image_path)


# 使用示例
input_image_path = '心形.jpg'  # 输入图片路径
output_image_path = 'output_with_watermark.jpg'  # 输出图片路径
text = 'Watermark'  # 要添加的水印文本
position = (10, 10)  # 水印文本的起始位置(左上角)
font_path = 'arial.ttf'  # 字体文件路径,确保你有这个文件
font_size = 36  # 字体大小
color = (0, 0, 255)  # 字体颜色

add_text_watermark(input_image_path, output_image_path, text, position, font_path, font_size, color)
相关推荐
初级代码游戏6 分钟前
iOS开发 Swift 速记4:函数与闭包
开发语言·ios·swift
郭涤生19 分钟前
C++ 零拷贝(Zero-Copy)
linux·开发语言·c++
老白干29 分钟前
基于 Spring AOP 的操作日志记录:以 DeptController 增删接口为例
java·python·spring
回忆2012初秋32 分钟前
C# 中的 EAP:基于事件的异步编程全面指南(一)
开发语言·c#
ty_xiumud34 分钟前
以太网 MAC 详解:帧格式、位序、FCS 与收发流程
开发语言·macos·php
John jj38 分钟前
拆解 Telegram 群组频道收录市场:三类方案,一个可运行的评分模型,目前TG中文人工评分加模型评分机制——LetsTG收录“快速”、“无门槛”
大数据·后端·python·深度学习·搜索引擎·django·全文检索
aqi001 小时前
15天学会AI应用开发(十九)使用LangGraph实现持久记忆功能
人工智能·python·大模型·ai编程·ai应用
月光船幽幽1 小时前
KDTree查表实现观测到动作的统计映射
python
2401_868534781 小时前
论信息系统安全保障规划与设计
python·django