图片加自定义文字水印功能,欢迎各路大神指教
公司每次出去办事,拿营业执照出去,都得打开photoshop在图于上加入仅适用于在某某地方办理什么业务使用,实在太麻烦,于是想着做个加文字水印功能源码,在网上找到很多都是加入一个LOGO文件,不适用于我这种每次水印对应文字都不同的工作现在贴出源码,欢迎各路大神指教,关于水印位置调整其实没太搞懂,就一点一点的改位置试验出来,某些尺寸的图片可能会出现水印显示不全,但能力有限,大部分可以就行啦
from PIL import Image,ImageFont,ImageDraw
import wx,winreg
from tkinter import filedialog,messagebox
def water(img_name,word):
a = Image.open(img_name).convert('RGBA')
w,h = a.size
b = Image.new('RGBA',a.size,(0,0,0,0))
if w>h:
max_size = int(w/30)
else:
max_size = int(h/30)
fnt = ImageFont.truetype('pingfang-bold.otf',max_size)
c = ImageDraw.Draw(b)
c.text((w/5,h/2),word,font=fnt,fill=(0,0,0,50)) if w > h else c.text((h/10,w/2),word,font=fnt,fill=(0,0,0,50))
b = b.rotate(40)
d = Image.alpha_composite(a,b).convert('RGB')
d.save(desktop_dir + '\\text.jpg')
messagebox.showinfo(title='信息框',message='新图片已保存到桌面')
def get_word(hyg_word):
file_path = filedialog.askopenfilename(title='请选择图片文件',filetypes=[('图片文件','*.jpg *.png *.jpg')])
water(file_path,hyg_word)
desktop_dir = winreg.QueryValueEx(winreg.OpenKey(winreg.HKEY_CURRENT_USER,'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders',),'Desktop')
app = wx.App()
box = wx.TextEntryDialog(None,'请输入欲插入的水印文字','输入窗口')
if box.ShowModal() == wx.ID_OK:
get_word(box.GetValue())
app.MainLoop()
图片加自定义文字水印功能 用这个软件,https://www.52pojie.cn/forum.php?mod=viewthread&tid=1572803&highlight=%C3%C0%CD%BC%D0%E3%D0%E3
页:
[1]