往期回顾

Python实现自动监测Github项目并打开网页

Python实现文件自动归类

Python实现帮你选择双色球号码

Python实现每日更换“必应图片”为“桌面壁纸”

前言:

今天我们就利用python脚本实现批量加水印。直接开整~

效果展示

有时候,为了保护版权,需要给作品中的图片加上水印。

一种是把水印(logo)加在图片的一个角落,就像有的是公众号会在后台把水印打开。

更厉害的一种是,水印在整个图上有很多,有个轻微的透明度,更安全。

PYTHON自动化

今天就来带大家,用Python给图片批量加上水印。有的小伙伴可能会说,网上也有很多工具有类似的功能,何必重复造轮子,被我猜到了吧。

既然如此,那就先看看用Python做这个工具的特点吧:

  • 可以设置字体(大小)
  • 可以设置角度
  • 可以设置透明度
  • 可以设置颜色
  • 可以批量处理
  • 可以设置水印的间隔

这个工具,其实是一个大神开源在Github上的项目,我只是个搬运工。

贴个地址:

https://github.com/2Dou/watermarker

代码可以从Github上下载,也可在“文末”找到下载方式。

重要的事说三遍:

记得把文件夹放在英文目录下 、记得把文件夹放在英文目录下 、记得把文件夹放在英文目录下

下载之后的目录结构是这样的:

  • font
  • input
  • output
  • marker.py
  • README.md

“字体”文件夹,存放的是“青鸟华光简琥珀.ttf ”

“input”文件夹,存放的是你要处理的图片,那么“output”自然就是输出的结果了

“marker.py”是实现功能的脚本文件

“README.md”是一个介绍文档

值得注意的有两点:

1、把“青鸟华光简琥珀.ttf ” 改为 “bird.ttf”, 名字不重要,只要是换成英文。另外,你也可以把你本地的字体(你喜欢的)替换过来。

2、在“marker.py”脚本中,把对应的字体名称替换掉。

看看效果

到这里,可以运行试试了。

在“marker.py”的同级目录下,打开Terminal/cmd,输入如下命令:

python marker.py -f ./input/test.png -m 天作之程

  • -f参数,输入图片的位置(可以是具体的一张照片,也可以是整个文件夹)
  • -m参数,你要添加的内容

另外,上边提到的其他功能参数:

  • -o 参数,指定输出水印文件的位置,默认为output文件夹。
  • -c 参数,指定水印的颜色,默认值为黄色,#8B8B1B
  • -s 参数,指定水印之间的空隙,默认值为75。
  • -a 参数,指定水印的旋转角度,默认值30度。
  • --size参数,指定水印文本字体大小,默认值为50。
  • --opacity参数,指定透明度,默认为0.15,数值越小越透明。

这里放一个我觉得比较舒服的参数:

python marker.py -f ./input -m 天作之程 -c#232862 --opacity 0.05

如果觉得颜色不够完美,可以从下面的链接找到颜色对应的16进制,copy过来即可。

https://www.sioe.cn/yingyong/yanse-rgb-16/

文章到这里就结束了,感谢你的观看,Python实用脚本系列,下篇文章分享Python破译zip压缩文件

为了感谢读者们,我想把我最近收藏的一些编程干货分享给大家,回馈每一个读者,希望能帮到你们。

干货主要有:

① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)

⑥ 两天的Python爬虫训练营直播权限

All done~详见个人简介或者私信获取完整源代码。。

Python实用案例,Python脚本,Python实现批量加水印的更多相关文章

  1. Python实用案例,Python脚本,Python实现每日更换“必应图片”为“桌面壁纸”

    往期回顾 Python实现自动监测Github项目并打开网页 Python实现文件自动归类 Python实现帮你选择双色球号码 前言: 今天我们就利用python脚本实现每日更换"必应图片& ...

  2. Python实用案例,Python脚本,Python实现自动监测Github项目并打开网页

    往期回顾 Python实现文件自动归类 前言: 今天我们就利用Python脚本实现Github项目的更新,提醒方式是邮箱.直接开整~ 项目地址: https://github.com/kenwoodj ...

  3. Python实用案例,Python脚本,Python实现帮你选择双色球号码

    往期回顾 Python实现自动监测Github项目并打开网页 Python实现文件自动归类 前言: 今天我们就利用python脚本实现帮你选择双色球号码.直接开整~ 开发工具: python版本: 3 ...

  4. Python实用案例,Python脚本,Python实现文件自动归类

    前言: 今天我们就利用Python脚本实现文件自动归类吧.直接开整~ 预备知识 这个脚本实现比较简单,我把涉及的知识点列了出来. 1.相对路径.绝对路径,绝对路径就是最完整的路径. 'D:/code/ ...

  5. 【Python】简单的脚本,轻松批量修改文件名称

    使用python脚本,批量修改文件夹名称 先创建一些没用的案例文件 import os #创建新文件夹 dir = os.makedirs('D:\\SomeThing\\testfile') #将文 ...

  6. python 实用案例 supervisord管理进程详解

    Supervisor是由python语言编写,基于linux操作系统的一款服务器管理工具,用以监控服务器的运行,发现问题能立即自动预警及自动重启等功能.Supervisor类似于monit,monit ...

  7. 【Python爬虫案例学习】Python爬取天涯论坛评论

    用到的包有requests - BeautSoup 我爬的是天涯论坛的财经论坛:'http://bbs.tianya.cn/list.jsp?item=develop' 它里面的其中的一个帖子的URL ...

  8. 【Python爬虫案例学习】python爬取淘宝里的手机报价并以价格排序

    第一步: 先分析这个url,"?"后面的都是它的关键字,requests中get函数的关键字的参数是params,post函数的关键字参数是data, 关键字用字典的形式传进去,这 ...

  9. 【Python爬虫案例学习】Python爬取淘宝店铺和评论

    安装开发需要的一些库 (1) 安装mysql 的驱动:在Windows上按win+r输入cmd打开命令行,输入命令pip install pymysql,回车即可. (2) 安装自动化测试的驱动sel ...

随机推荐

  1. 【模板】Tarjian求LCA

    概念 公共祖先,就是两个节点在这棵树上深度最大的公共的祖先节点 举个例子吧,如下图所示4和5的最近公共祖先是2,5和3的最近公共祖先是1,2和1的最近公共祖先是1. 算法 常用的求LCA的算法有:Ta ...

  2. 20204107 孙嘉临《Python程序设计》实验一报告

    课程:<python程序设计> 班级:2041 姓名:孙嘉临 学号:20204107 实验教师:王志强 实验日期:2021年4月12日 必修/选修:公选课 ##一.实验内容 1.熟悉Pyt ...

  3. Java实现工厂模式

    工厂模式(Factory),当需要根据运行时的一些条件来决定创建具体对象时,就应该考虑使用工厂设计模式,将创建对象的任务交给工厂集中处理. 工厂模式有多种写法,总体分为简单工厂模式和抽象工厂模式 工厂 ...

  4. CentOS7详细安装教程(图文)

    CentOS7安装过程:(图文详解) 为了做实验,装台Linux的虚拟机,手上有这个7的ISO文件就懒得去下载8的了. 0X01.虚拟机配置 0X02.CentOS7系统配置安装 分别创建/boot区 ...

  5. .net core 支付宝,微信支付 三

    支付回调: 获取HttpRequest的body内容,之前使用Request.Form有时候数据请求不到(可能是跟.net core 版本有关?) var s = HttpRequest.Body; ...

  6. 利用C语言判别用户输入数的奇偶性和正负性

    要求:利用C语言判别用户输入数的奇偶性和正负性 提示:可以利用%求余数来判别 由题可知 我们需要if..else的结构来实现区分奇偶和正负 区分奇偶我们可以用: if (a % 2 == 0) { p ...

  7. Center OS 7 通过Docker部署yapi

    Center OS 7 通过Docker部署yapi 版本要求 Linux Center OS 7 安装Docker #Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前 ...

  8. 如何筛选CRM客户系统无效数据

    企业将各个渠道获得的大量数据导入CRM系统之后,要如何筛选CRM客户系统无效数据?销售人员应该将更多的时间用于发掘潜在客户,而不是浪费时间来检索CRM数据.Zoho CRM能够呈现最有价值的客户,让销 ...

  9. maven与eclipse的集成

    由于篇幅问题,本文将不介绍maven的安装和配置. 一.maven的概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平 ...

  10. linux学习之路第三天

    开机,重启和用户登陆注销 关机&重启命令 shutdown shutdown -h now :表示立即关机 shutdown -h 1 :表示一分钟后关机 shutdown -r now :表 ...