欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)為圖片批量添加隨機(jī)水印

 更新時(shí)間:2023年11月23日 11:44:14   作者:mYlEaVeiSmVp  
這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)為圖片批量添加隨機(jī)水印,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

應(yīng)部分朋友的問題寫的Python,

須提前安裝第三方庫,安裝PIL庫(Pillow):在命令行中輸入pip install pillow進(jìn)行安裝;

將此py文件放入根目錄,

另外根目錄中有三個(gè)文件夾。

watermark(水印文件夾)、original(需加水印圖片的文件夾)、output(成品文件夾)

代碼如下:

from PIL import Image, ImageDraw
import os, random
 
water_path = './watermark'  #  水印文件夾路徑
watermark_list = os.listdir(water_path)
 
def do(file_name):
    # 打開原始圖片和水印圖片
    original_image = Image.open(file_name)
    random_mark = random.choice(watermark_list)  # 選擇隨機(jī)水印圖片
    # print(random_mark)
    watermark_image = Image.open(f'{water_path}/{random_mark}')
 
    # 將水印圖片縮放到合適的大小
    watermark_width, watermark_height = watermark_image.size
    base_width, base_height = original_image.size
 
    watermark_image = watermark_image.resize((base_width,int(base_width/watermark_width*watermark_height)))
 
    # 創(chuàng)建一個(gè)和原始圖片相同大小的空白畫布
    canvas = Image.new('RGBA', original_image.size)
 
    # 將原始圖片粘貼到畫布上
    canvas.paste(original_image, (0, 0))
 
    # 將水印圖片粘貼到畫布上
    canvas.paste(watermark_image, (0, 0))
 
    # 保存帶有水印的圖片
    name = file_name.split("\\")[-1]
    canvas.save(f'./output/do_{name}')  # 成品保存路徑
    print(f">>>>  {name} 添加  {random_mark}  水印  成功。")
 
 
for root, dirs, files in os.walk("./original"):  # 需要加水印的文件夾路徑
    for name in files:
        file_name = os.path.join(root, name)
        do(file_name)

以下為一個(gè)Python給圖片添加文字水印的示例

from PIL import Image, ImageDraw, ImageFont
 
def add_watermark(input_image_path, output_image_path, watermark_text):
    # 打開原始圖片
    base_image = Image.open(input_image_path).convert("RGBA")
 
    # 創(chuàng)建一個(gè)可以在給定圖像上繪圖的對(duì)象
    draw = ImageDraw.Draw(base_image)
 
    # 設(shè)置字體和大小
    font = ImageFont.truetype("arial.ttf", 15)  # 水印文字的字體,大小,這是英文字體不支持中文,換成自己的字體即可
 
    # 在圖片上添加水印,設(shè)置水印位置和顏色等
    draw.text((20,20), watermark_text, fill=color, font=font)
 
    # 保存帶有水印的圖片
    base_image.save(output_image_path)
 
# 使用示例
add_watermark("../img-test/orig.jpg",  # 需加水印的圖片
              "../img-test/orig--out.png",   # 最終的圖片
              "Watermark Text")  # 水印文字

以下一個(gè)給圖片添加透明圖片水印的例子

from PIL import Image
 
# 打開背景圖片和水印圖片
background = Image.open('../img-test/orig.jpg')  # 需加水印的圖片
watermark = Image.open('../img-test/mark.png').convert("RGBA")  # 透明背景的水印圖片
 
 
# 將水印圖片粘貼到背景圖片上
background.paste(watermark, (0, 0),mask=watermark)  # 水印位置(0,0)
 
# 保存合并后的圖片
background.save('../img-test/orig_mark.png')

到此這篇關(guān)于Python實(shí)現(xiàn)為圖片批量添加隨機(jī)水印的文章就介紹到這了,更多相關(guān)Python圖片添加隨機(jī)水印內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用Python實(shí)現(xiàn)畫一個(gè)中國地圖

    使用Python實(shí)現(xiàn)畫一個(gè)中國地圖

    今天小編就為大家分享一篇使用Python實(shí)現(xiàn)畫一個(gè)中國地圖,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python的時(shí)間模塊datetime詳解

    Python的時(shí)間模塊datetime詳解

    本文給大家分享的是在python中的時(shí)間模塊datetime的使用方法,注意事項(xiàng)以及簡(jiǎn)單示例,有需要的小伙伴可以參考下
    2017-04-04
  • Python2與Python3的區(qū)別實(shí)例分析

    Python2與Python3的區(qū)別實(shí)例分析

    這篇文章主要介紹了Python2與Python3的區(qū)別,結(jié)合實(shí)例形式分析了Python2與Python3在輸出、編碼、函數(shù)、運(yùn)算等操作的常見區(qū)別與使用技巧,需要的朋友可以參考下
    2019-04-04
  • Python棧類實(shí)例分析

    Python棧類實(shí)例分析

    這篇文章主要介紹了Python棧類,實(shí)例分析了Python實(shí)現(xiàn)棧的入棧、出棧、移除、判定為空的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • pytest配置文件pytest.ini的詳細(xì)使用

    pytest配置文件pytest.ini的詳細(xì)使用

    這篇文章主要介紹了pytest配置文件pytest.ini的詳細(xì)使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • 聊聊python在linux下與windows下導(dǎo)入模塊的區(qū)別說明

    聊聊python在linux下與windows下導(dǎo)入模塊的區(qū)別說明

    這篇文章主要介紹了聊聊python在linux下與windows下導(dǎo)入模塊的區(qū)別說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Jupyter Notebook折疊輸出的內(nèi)容實(shí)例

    Jupyter Notebook折疊輸出的內(nèi)容實(shí)例

    這篇文章主要介紹了Jupyter Notebook折疊輸出的內(nèi)容實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • 使用Python操作ArangoDB的方法步驟

    使用Python操作ArangoDB的方法步驟

    這篇文章主要介紹了使用Python操作ArangoDB的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • 昨晚我用python幫隔壁小姐姐P證件照然后發(fā)現(xiàn)

    昨晚我用python幫隔壁小姐姐P證件照然后發(fā)現(xiàn)

    大家好,我是Lex 喜歡欺負(fù)超人那個(gè)Lex 建議大家收藏哦,以后幫小姐姐P自拍,證件照,調(diào)尺寸,背景,摳圖,直接10行代碼搞定,瞬間高大上
    2021-08-08
  • Python中的True,False條件判斷實(shí)例分析

    Python中的True,False條件判斷實(shí)例分析

    這篇文章主要介紹了Python中的True,False條件判斷的用法,實(shí)例分析了針對(duì)不同數(shù)據(jù)類型的條件判斷用法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-01-01

最新評(píng)論