首页 > 其他分享 >批量将图片文件名以水印添加到图片上

批量将图片文件名以水印添加到图片上

时间:2023-09-15 12:05:10浏览次数:34  
标签:文件名 text image 水印 filename path os 图片

 

由于近来需要将大量的图片全屏展示给观众,然而试了各种全屏播放的软件均不能使某些近视眼又不愿意戴眼镜的观众看到当前图片的文件名,于是乎通过py实现,将当前图片的文件名以水印添加到图片上,又大又红这下就看的清楚了。

from PIL import Image, ImageDraw, ImageFont
import os

# 指定输入和输出目录
input_directory = r"D:\图斑"
output_directory = r"D:\图斑\修改后"

# 检查输出目录是否存在,如果不存在则创建
if not os.path.exists(output_directory):
    os.makedirs(output_directory)

# 设置水印文字的字体和大小
font = ImageFont.truetype("arial.ttf", 80)

# 设置水印文字的颜色
text_color = (255, 0, 0)  # 红色

# 遍历输入目录中的所有图片文件
for filename in os.listdir(input_directory):
    if filename.endswith(".jpg") or filename.endswith(".png"):
        # 加载图片
        image_path = os.path.join(input_directory, filename)
        image = Image.open(image_path)

        # 创建绘制对象
        draw = ImageDraw.Draw(image)

        # 提取文件名并作为水印文字
        watermark_text = os.path.splitext(filename)[0]

        # 计算文字位置
        text_width, text_height = draw.textsize(watermark_text, font)
        x = (image.width - text_width) // 2
        y = image.height - text_height - 10

        # 添加水印文字
        draw.text((x, y), watermark_text, font=font, fill=text_color)

        # 保存修改后的图片到输出目录
        output_path = os.path.join(output_directory, filename)
        image.save(output_path)

        print(f"水印已添加到 {filename}")

print("批量操作完成")

可自行修改代码中的目录与水印文字颜色字体等。该水印添加到图片的地步

修改前图片:

批量将图片文件名以水印添加到图片上_Image

修改后图片:

批量将图片文件名以水印添加到图片上_Image_02




标签:文件名,text,image,水印,filename,path,os,图片
From: https://blog.51cto.com/u_16263235/7479630

相关文章

  • 第15节课:AI框架图片识别之数据解析、Network初始化、Sigmoid激活函数及Feedforward函
    第15节课:AI框架图片识别之数据解析、Network初始化、Sigmoid激活函数及Feedforward函数详细内容请关注微信公众号:从零起步学习人工智能 https://mp.weixin.qq.com/s?__biz=MzU3OTc4OTEzNw==&mid=2247483658&idx=1&sn=3d8b40ce71e84c717428d4a1994581e0&chksm=fd618934ca1600229308......
  • CKEDITOR 展示word中复制的内容和多张图片
    从word中复制全部内容(包括文字、多图片),并在富文本框内展示(CKEDITOR)CKEDITOR.instances["editor"].on('instanceReady',function(elem){console.log(elem.editor.element);elem.editor.on("paste",function(e){console.log(e);......
  • 爬虫爬取网页图片《滕王阁序》文徵明 行草
    python爬取网页图片importurllib.request#python自带的爬操作url的库importre#正则表达式defgetImage(url):headers={'User-Agent':'Mozilla/5.0(linux;android6.0;Nexus5Build/MRA58N)\AppleWebKit/537.36(KHTML,likeGecko)Chrome/56.0.......
  • 后端返回图片乱码,前端解决方法
    后端返回的文件流格式  前端解决axios({url:"/api/Component/ins/downloadQr?codes="+data.codeIdentification,method:"GET",headers:{"Authorization":window.platToken.token_type+""+windo......
  • js:上传图片,通过file对象或blob对象获取用于显示的url,获取图片的base64编码;限制文件类
    1//URL.createObjectUrl(file):同步执行;创建一个指向file/blob对象的url,可用于元素的src/href属性23//fileReader.readAsDataURL():异步执行;读取file/blob对象的内容,result属性将返回一个包含data:URL格式的base64字符串45//fileReader.readAsDataURL()是异步的,所......
  • 删除根目录(文件夹里的)图片
    publicstringdelimge(stringAttachmentID,stringfileUrl){stringconnstrs="";try{connstrs=this.Request.Headers["ProjectType"].ToString();}catch(Exceptione){connstrs="SqlConnectio......
  • Java图片剪裁功能实现
    目前一些社交型互联网应用都有一些上传图片(例如头像,照片等)对预览图进行剪裁的功能。前一段时间在工作也遇到这个问题,总结一下基本实现步骤及代码(包含图片放大,缩小,设置品质,对指定点区域剪裁功能),使用JPEG格式图片测试通过,其它格式图片尚未验证。一、基本步骤:1.将图片文件的InputS......
  • flutter解析html的图片和链接
    html链接内容如下:"<p><ahref="https://www.hihonor.com/cn/m/notice-14658"rel="nofollow"><imgalt="750.png"src="https://hshop.honorfile.com/pimages/detailImg/2023/08/31/C757CDF3D975230D36F9176D41A90......
  • glob:Python中文件名的匹配
    前言既然在Pathlib库中提到了glob()函数,那么我们就专门用一篇内容讲解文件名的匹配。其实我们有专门的一个文件名匹配库就叫:glob。不过,glob库的API非常小,但是仅仅应用于文件名的匹配绰绰有余。只要是在实际的项目中需要过滤,或者匹配一组文件,都可以使用该库进行操作。通配符星......
  • 修改了虚拟机名称后,数据存储上的文件名称如何同步修改
    更改虚拟机名称虚拟机的名称在虚拟机所在的文件夹中必须是唯一的。如果将某虚拟机移至其他数据存储文件夹或移至具有相同名称的现有虚拟机的主机,则可以更改该虚拟机的名称以使其保持唯一。 更改某虚拟机的名称时,应更改 vCenterServer 清单中用于标识该虚拟机的名称。该操作......