如何利用python给图片添加半透明水印

yipeiwu_com6年前Python基础

前言

本文主要给大家介绍了关于python图片添加半透明水印的相关资料,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧

示例代码:

# coding:utf-8

from PIL import Image, ImageDraw, ImageFont


def add_text_to_image(image, text):
 font = ImageFont.truetype('C:\Windows\Fonts\STXINGKA.TTF', 36)

 # 添加背景
 new_img = Image.new('RGBA', (image.size[0] * 3, image.size[1] * 3), (0, 0, 0, 0))
 new_img.paste(image, image.size)

 # 添加水印
 font_len = len(text)
 rgba_image = new_img.convert('RGBA')
 text_overlay = Image.new('RGBA', rgba_image.size, (255, 255, 255, 0))
 image_draw = ImageDraw.Draw(text_overlay)

 for i in range(0, rgba_image.size[0], font_len*40+100):
  for j in range(0, rgba_image.size[1], 200):
   image_draw.text((i, j), text, font=font, fill=(0, 0, 0, 50))
 text_overlay = text_overlay.rotate(-45)
 image_with_text = Image.alpha_composite(rgba_image, text_overlay)

 # 裁切图片
 image_with_text = image_with_text.crop((image.size[0], image.size[1], image.size[0] * 2, image.size[1] * 2))
 return image_with_text


if __name__ == '__main__':
 img = Image.open("test.jpg")
 im_after = add_text_to_image(img, u'测试使用')
 im_after.save(u'测试使用.png')

效果图:

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

使用 Python 玩转 GitHub 的贡献板(推荐)

使用 Python 玩转 GitHub 的贡献板(推荐)

细心的人都会发现GitHub个人主页有一个记录每天贡献次数的面板,我暂且称之为贡献面板。就像下图那个样子。只要当天在GitHub有提交记录,对应的小格子就会变成绿色,当天提交次数越多,颜...

Python使用itchat 功能分析微信好友性别和位置

Python使用itchat 功能分析微信好友性别和位置

这样就将你所有微信好友的信息都返回了,我们并不需要这么多的信息,我们选取一些信息存储到 csv 文件中 注意:返回的信息是一个 list,其中第一个是我自己的信息,所以要从第二项开始...

Python实现多态、协议和鸭子类型的代码详解

多态 问起面向对象的三大特性,几乎每个人都能对答如流:封装、继承、多态。今天我们就要来说一说 Python 中的多态。 所谓多态:就是指一个类实例的相同方法在不同情形有不同表现形式。多态...

python过滤字符串中不属于指定集合中字符的类实例

本文实例讲述了python过滤字符串中不属于指定集合中字符的类。分享给大家供大家参考。具体如下: # -*- coding: utf-8 -*- import sets class...

从零开始学Python第八周:详解网络编程基础(socket)

一,Socket编程 (1)Socket方法介绍 Socket是网络编程的一个抽象概念。通常我们用一个Socket表示“打开了一个网络链接“,而打开一个Socket需要知道目标计...