给图片添加水印

# 先安装pillow,安装命令:pip install pillow
from PIL import Image, ImageDraw, ImageFont
# 字体后缀 都是ttf
font = ImageFont.truetype('jww.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)
    # 设置文本文字位置
    print(rgba_image)
    text_xy = (rgba_image.size[0] - text_size_x, rgba_image.size[1] - text_size_y)
    # 设置文本颜色和透明度
    image_draw.text(text_xy, text, font=font, fill=(0, 0, 124, 180))

    image_with_text = Image.alpha_composite(rgba_image, text_overlay)

    return image_with_text


im_before = Image.open("a.jpg")
# im_before.show()
im_after = add_text_to_image(im_before, '紫夜')
im_after.show()
# im.save('im_after.jpg')

 文件结构为:

给图片添加水印_第1张图片

字体文件从网上下载,格式为ttf

给图片添加水印_第2张图片

代码运行后图片效果:

给图片添加水印_第3张图片

你可能感兴趣的:(Django)