Python如何為圖片添加水印
添加水印的主要目的是為了版權(quán)保護(hù),使自己的圖像不被抄襲或者惡意轉(zhuǎn)載。網(wǎng)上有很多制作水印的工具,本帖介紹怎么使用Python-Pillow庫(kù)給圖片添加水印。
使用ImageMagick添加圖片水?。璍inux 添加文本水印
在圖片右下角添加文字:
from PILimport Image, ImageDraw, ImageFont # 指定要使用的字體和大?。?Library/Fonts/是macOS字體目錄;Linux的字體目錄是/usr/share/fonts/ font = ImageFont.truetype('/Library/Fonts/Arial.ttf', 24) # image: 圖片 text:要添加的文本 font:字體 def add_text_to_image(image, text, font=font): rgba_image = image.convert('RGBA') text_overlay = Image.new('RGBA', rgba_image.size, (255, 255, 255, 0)) image_draw = ImageDraw.Draw(text_overlay) text_size_x, text_size_y = image_draw.textsize(text, font=font) # 設(shè)置文本文字位置 print(rgba_image) text_xy = (rgba_image.size[0] - text_size_x, rgba_image.size[1] - text_size_y) # 設(shè)置文本顏色和透明度 image_draw.text(text_xy, text, font=font, fill=(76, 234, 124, 180)) image_with_text = Image.alpha_composite(rgba_image, text_overlay) return image_with_text im_before = Image.open("lena.jpg") im_before.show() im_after = add_text_to_image(im_before, 'WTF') im_after.show() # im.save('im_after.jpg')
添加圖片水印
fromPILimportImage, ImageDraw defadd_watermark_to_image(image, watermark): rgba_image = image.convert('RGBA') rgba_watermark = watermark.convert('RGBA') image_x, image_y = rgba_image.size watermark_x, watermark_y = rgba_watermark.size # 縮放圖片 scale = 10 watermark_scale = max(image_x / (scale * watermark_x), image_y / (scale * watermark_y)) new_size = (int(watermark_x * watermark_scale), int(watermark_y * watermark_scale)) rgba_watermark = rgba_watermark.resize(new_size, resample=Image.ANTIALIAS) # 透明度 rgba_watermark_mask = rgba_watermark.convert("L").point(lambda x: min(x, 180)) rgba_watermark.putalpha(rgba_watermark_mask) watermark_x, watermark_y = rgba_watermark.size # 水印位置 rgba_image.paste(rgba_watermark, (image_x - watermark_x, image_y - watermark_y), rgba_watermark_mask) return rgba_image im_before = Image.open("lena.jpg") im_before.show() im_watermark = Image.open("watermark.jpg") im_after = add_watermark_to_image(im_before, im_watermark) im_after.show() # im.save('im_after.jpg')
相關(guān)文章
Python3 pandas.concat的用法說(shuō)明
這篇文章主要介紹了Python3 pandas.concat的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03python將pandas datarame保存為txt文件的實(shí)例
今天小編就為大家分享一篇python將pandas datarame保存為txt文件的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-02-02python微信跳一跳系列之自動(dòng)計(jì)算跳一跳距離
這篇文章主要為大家詳細(xì)介紹了python微信跳一跳系列之自動(dòng)計(jì)算跳一跳距離,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02基于Django URL傳參 FORM表單傳數(shù)據(jù) get post的用法實(shí)例
今天小編就為大家分享一篇基于Django URL傳參 FORM表單傳數(shù)據(jù) get post的用法實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05DjangoWeb使用Datatable進(jìn)行后端分頁(yè)的實(shí)現(xiàn)
這篇文章主要介紹了DjangoWeb使用Datatable進(jìn)行后端分頁(yè)的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05