使用PIL给图像批量添加水印和改变大小

Posted 有挫败才有成长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用PIL给图像批量添加水印和改变大小相关的知识,希望对你有一定的参考价值。

# -*- coding:UTF-8 -*-
import os,time
from PIL import Image,ImageDraw,ImageFont
fontFile="ygyxsziti2.0.ttf" #字体文件
width,height=612,816 #

os.chdir(\'src\') #打开原始图片所在文件夹
for fileName in os.listdir(os.getcwdu()):
    extName=os.path.splitext(fileName)[1] #获得文件的扩展名
    if extName==\'.jpg\' or extName==\'.png\':
        t=time.ctime(os.path.getctime(fileName))
        text=t+"\\n"+u"代码改变生活!" #汉字加unicode编码,否则不显示
        im=Image.open(fileName) #im相当于指向图像的文件指针
        draw=ImageDraw.Draw(im) #draw相当于图像上的画笔
        fontSize=min(im.size)/30
        font=ImageFont.truetype(fontFile,fontSize) #font相当于画笔所使用的字体
        draw.text((50,50),text,font=font,fill=(255,0,0))  #用画笔开始在图像上写字

        rate=max(im.width/width,im.height/height) #缩放比例
        if rate!=0:
            im.thumbnail((im.size[0]/rate,im.size[1]/rate)) #注意参数是一个无组
        os.chdir(r\'..\\dst\') #切换到目标文件夹
        im.save(fileName) #存入图像
        im.close() #关闭文件
        os.chdir(r\'..\\src\') #切回源文件夹,注意当前在dst里, 回到上一级目录下的src里

以上是关于使用PIL给图像批量添加水印和改变大小的主要内容,如果未能解决你的问题,请参考以下文章

PIL图片添加文字水印

使用 GD 批量水印图像

python----图像简单处理(PIL or Pillow)

PHP imagecopy 函数根据主图像的高度和宽度改变图章大小

PIL如何根据图像大小缩放文本大小

怎么给PDF文件添加水印?