通过Python的filestools库给图片添加全图水印的示例详解

 

前言

大家好,我是空空star,本篇给大家分享一下通过Python的filestools库给图片添加全图水印。

 

一、filestools库简介

filestools目前包含四个工具包,分别是树形目录显示、文件差异比较、图片加水印和curl请求转python代码。

 

二、安装filestools

pip install filestools

 

三、查看filestools版本

pip show filestools

Name: filestools
Version: 0.1.3
Summary: 仿Linux的tree命令、文件差异比较工具、图片加水印和curl请求转python代码。
Home-page: UNKNOWN
Author: 小小明
License: GPLv3
Requires: cchardet, Pillow, pyperclip, rich
Required-by:

 

四、图片添加全图水印

1.引入库

from watermarker.marker import add_mark

2.添加水印

add_mark(file="demo.jpg",
       out="out",
       mark="空空star",
       color="white",
       size=30,
       opacity=0.3,
       angle=45,
       space=75)

3.效果

 

五、参数调整对比

1.水印颜色

默认#8B8B1B

1.1通过名称设置颜色

# 通过RGB值设置颜色-红色
color = (255, 0, 0)

1.2通过RGB值设置颜色

# 通过RGB值设置颜色-红色
color = (255, 0, 0)

1.3通过十六进制设置颜色

# 通过十六进制设置颜色-绿色
color = '#6FE000'

2.水印字体的大小

默认30

# 左size=30
# 右size=50

3.水印的透明度

默认0.15

# 左opacity=0.3
# 右opacity=0.6

4.水印直接的间隔

默认75个空格

# 左space=75
# 右space=100

5.水印旋转角度

默认30度

# 左angle=45
# 右angle=-45

 

总结

查看marker.py,可以发现,这个水印处理就是基于PIL库做的。也能看到水印字体的默认值。

从以下代码中,也可以看到相关参数的默认值。

def add_mark(file, mark, out="output", color="#8B8B1B", size=30, opacity=0.15, space=75, angle=30):
  if os.path.isdir(file):
      names = os.listdir(file)
      for name in names:
          image_file = os.path.join(file, name)
          add_mark2file(image_file, mark, out, color, size, opacity, space, angle)
  else:
      add_mark2file(file, mark, out, color, size, opacity, space, angle)

关于通过Python的filestools库给图片添加全图水印的文章就介绍至此,更多相关Python添加全图水印内容请搜索编程宝库以前的文章,希望以后支持编程宝库

本文介绍基于PowerShell语言,对文件夹中全部文件的名称加以批量替换、修改的方法。在之前的文章基于Python实现自动批量修改文件名称中,我们介绍了基于Python语言,批量修改大量文 ...