首頁 > 軟體

通過Python的filestools庫給圖片新增全圖水印的範例詳解

2023-09-07 18:00:07

前言

大家好,我是空空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新增全圖水印內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com