python-批量添加图片水印
前言:
最近总是被无良公众号和培训机构拷贝文章,他们根本不会给你备注原文出处,这种行为真的让人不高兴,所以计划以后的文章都添加上自己的水印。
话不多说,直接上代码。
一、单张图片添加文字水印
# -*- coding: utf-8 -*-
# @Time : 2018/5/9 上午11:31
# @Author : xiaoxi
# @File : watermark.py
from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont
imageFile = "/Users/截图图库/1.jpg"
im = Image.open(imageFile)
font = ImageFont.truetype('/Library/Fonts/Songti.ttc', 26)
font1 = ImageFont.truetype('/Library/Fonts/Zapfino.ttf', 16)
draw = ImageDraw.Draw(im)
draw.text((im.size[0]-330, im.size[1]-85), u'简书「小喜」', fill=(134, 153, 153), font=font)
draw.text((im.size[0]-500, im.size[1]-45), u'http://www.jianshu.com/u/da1677475c27', fill=(134, 153, 153),font=font1)
im.save(r"/Users/简书素材/target.jpg")
二、单张图片添加图片水印
# -*- coding: utf-8 -*-
# @Time : 2018/5/9 上午11:31
# @Author : xiaoxi
# @File : watermark.py
from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont
watermark = Image.open("/Users/截图图库/5.jpg")
imageFile = Image.open("/Users/截图图库/4.jpg")
layer = Image.new('RGBA', imageFile.size, (0,0,0,0))
layer.paste(watermark, (imageFile.size[0]-300, imageFile.size[1]-80))
out=Image.composite(layer,imageFile,layer)
out.save(r"/Users/简书素材/target.jpg")
三、批量图片添加文字水印
# -*- coding: utf-8 -*-
# @Time : 2018/5/9 上午11:31
# @Author : xiaoxi
# @File : watermark.py
import datetime
import glob
from time import sleep
from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont
def watermark():
for files in glob.glob('/Users/截图图库/*.png'):
font = ImageFont.truetype('/Library/Fonts/Songti.ttc', 26)
font1 = ImageFont.truetype('/Library/Fonts/Zapfino.ttf', 16)
im = Image.open(files)
draw = ImageDraw.Draw(im)
draw.text((im.size[0] - 330, im.size[1] - 85), u'简书「小喜」', fill=(134, 153, 153), font=font)
draw.text((im.size[0] - 500, im.size[1] - 45), u'http://www.jianshu.com/u/da1677475c27', fill=(134, 153, 153), font=font1)
dir = "/Users/简书素材/"
name = datetime.datetime.now().strftime("%Y%m%d%H%M%S")
filename = dir + name + '_result.jpg'
sleep(2)
im.save(filename)
if __name__=='__main__':
watermark()
四、相关答疑
1、添加中文水印时,必须选择支持中文的字体,例如:
2、glob库
glob库是最简单的模块之一,内容非常少。用它可以查找符合特定规则的文件路径名。跟使用 windows 下的文件搜索差不多。查找文件只用到三个匹配符:
”*”:匹配 0 个或多个字符;
“?”: ”?”匹配单个字符;
“[]”:”[]”匹配指定范围内的字符,如:[0-9]匹配数字;
以上,如果对你有帮助的话,点个赞吧❤️~
python-批量添加图片水印的更多相关文章
- 「Python实用秘技04」为pdf文件批量添加文字水印
本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第4期 ...
- Swift - 给图片添加图片水印(图片上绘制另一张图,并可设透明度)
我前面写了篇文章讲解如何给图片添加文字水印,而如果想要添加图片类型的水印也很简单,只要把原来代码里添加文字的部分改成图片即可. 1,效果图如下: (在图片左上角添加了一个半透明的logo图片) 2,为 ...
- javacpp-opencv图像处理之2:实时视频添加图片水印,实现不同大小图片叠加,图像透明度控制,文字和图片双水印
欢迎大家积极开心的加入讨论群 群号:371249677 (点击这里进群) javaCV图像处理系列: javaCV图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体.位置. ...
- 如何批量添加图片到ppt的方法
如何批量添加图片到ppt 许多时候会做一些幻灯片,需要大量的图片,但是往往一张以张的加图片,会很浪费时间,如何快速添加图片,一次解决呢? 步骤:插入-相册-点击相册 点击文件,批量选择你要插入的图片, ...
- Python批量修改图片格式和尺寸
Python批量修改图片格式和尺寸 备注: 1.导入了PIL库,是处理图片用的,很强大; 2.导入了的win32库,是判断隐藏文件用的,我们的项目需要删除隐藏文件,不需要的可以直接找到删除. 3.导入 ...
- 利用iTextSharp组件给PDF文档添加图片水印,文字水印
最近在做关于PDF文档添加水印的功能,折腾了好久,终于好了.以下做个记录: 首先会用到iTextSharp组件,大家可以去官网下载,同时我也会在本文中附加进来. 代码中添加引用为: using S ...
- python批量添加hexo文章封面
❝ 本文需要工具: 「excel」 「python3.x」 ❞ 今天突然觉得,我的博客的文章更新这么多了竟然还没有一个封面,觉得首页相当低调了- 首页 正好皮肤带有文章封面功能,所以我觉得要将文章批量 ...
- Python 批量修改图片格式和尺寸
公司的一个项目要求把所有4096x4096的图片全部转化成2048x2048的图片,这种批量转换图片大小的软件网上很多,我的同事原来使用的美图看看的批量转换,但是稍微有点麻烦,每次还需要指定要转换的图 ...
- tinypng的python批量压缩图片功能
tinypng网站提供的图片压缩功能很不错,但是直接在网站上压缩有限制,大量压缩图片时比较麻烦,还好官方提供了很多脚本的自动化压缩接口.下面简单说下python批量压缩步骤. 1.申请api key ...
随机推荐
- 4.5Python数据类型(5)之列表类型
返回总目录 目录: 1.列表的定义 2.列表的常规操作 3.列表的额外操作 (一)列表的定义: 列表的定义 [var1, var2, --, var n ] # (1)列表的定义 [var1, var ...
- 反射型XSS+文件上传+CSRF—DVWA
在学习的过程中,想到将几种漏洞进行组合练习,记录下学习过程.大佬请绕过!谢谢!! 测试环境:DVWA,安装方法参考上一篇:https://www.cnblogs.com/aq-ry/p/9220584 ...
- 【2017下集美大学软工1412班_助教博客】团队作业9——事后分析(Beta版本)成绩公示
作业要求 团队作业9 团队评分结果 编号 Total 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 2 ...
- Android事件处理第一节(View对Touch事件的处理)
http://ipjmc.iteye.com/blog/1694146 在Android里Touch是很常用的事件,尤其实在自定义控件中,要实现一些动态的效果,往往要对Touch进行处理.Androi ...
- 洛谷P1144 最短路计数
题目描述 给出一个N个顶点M条边的无向无权图,顶点编号为1-N.问从顶点1开始,到其他每个点的最短路有几条. 输入输出格式 输入格式: 输入第一行包含2个正整数N,M,为图的顶点数与边数. 接下来M行 ...
- PHP实现DES加密,解决乱码
PHP要实现DES加密,大体上有2个思路.一是用扩展,一是原生PHP实现. 这里推荐一个PHP原生实现的加密,是thinkphp的一个类库: https://github.com/top-think/ ...
- spring boot thymeleaf 标签未关闭报错
每天学习一点点 编程PDF电子书免费下载: http://www.shitanlife.com/code spring boot,input标签未关闭报bug,代码稍有不慎就出小问题,后来百度,goo ...
- 阿里巴巴android开发手册总结
每天学习一点点 编程PDF电子书免费下载: http://www.shitanlife.com/code 1 2. 3. 4. 5. 6. 7. 8. 9 每天学习一点点 编程PDF电子书免费 ...
- 你不得不知道的 .NET CORE —— .NET Framework, .NET Core 和 .NET Standard 的区别
.NET Framework 和 .NET Core 是平台应用框架,而 .NET Standard 是 .NET 底层库.因此只要用 .NET Standard 工程来写的代码可以直接在上层的平台应 ...
- Mac下安装Mongodb
Mac下安装Mongodb 一: 安装MongoDB: Mac下安装MongoDB有两种方法,第一种是通过源码安装,另一种是使用 homebrew, 下面我使用homebrew来安装,首先我们需要安装 ...