专栏首页木子昭的博客Python为图片加水印

Python为图片加水印

Pillow是python的一个功能强大的图像处理的库,可对图像进行高质量的压缩变换等操作,前几天看到一些公众号,提供了为用户头像加装饰的操作,于是自己试了一下,20行搞定!

网络上能看到的拼接图片的教程,需要手动指定透明位置,下面提供的方法,直接分离了透明图层,可简单快速的图像拼接;而且实现了图片尺寸的简单变换,用户提供任意尺寸的图片,都可以输出300*300的标准头像尺寸

原图:

image1.png

hnu.png

效果图:

f.png

源码:

from PIL import Image
#创建底图
target = Image.new('RGBA', (300, 300), (0, 0, 0, 0))
#打开头像
nike_image = Image.open("./image1.png")
nike_image = nike_image.resize((300, 300))
#打开装饰
hnu_image = Image.open("./hnu.png")
# 分离透明通道
r,g,b,a = hnu_image.split()
# 将头像贴到底图
nike_image.convert("RGBA")
target.paste(nike_image, (0,0))

#将装饰贴到底图
hnu_image.convert("RGBA")
target.paste(hnu_image,(0,0), mask=a)

# 保存图片
target.save("f.png")

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Windows如何优雅显示键盘按键? ​

    ​最近打算做一个 「昭昭的奇妙技能书」系列(取名借鉴自 「JOJO的奇妙冒险」),以问答的形式开篇,用简短的gif图演示,文章最后放出软件的下载链接,每次只讲软...

    zhaoolee
  • 新媒体必修课: 如何快速将gif图调整到300帧以内?

    ​为保证最终gif图的流畅,可以采用每隔N帧,抽取1帧的方式, 一张504帧的图片,我们需要每隔1帧抽取1帧微信一直以「克制」著称,为了给用户节省流量,微信公众...

    zhaoolee
  • 用gogs搭建属于自己的git网站

    如果配置过程中,你的gogs的docker环境挂掉了,可以使用docker start gogs 重新开启gogs

    zhaoolee
  • Java集合中的AbstractMap抽象类

    AbstractMap抽象类实现了一些简单且通用的方法,本身并不难。但在这个抽象类中有两个方法非常值得关注,keySet和values方法源码的实现可以说是教科...

    用户1148394
  • 这家为无人机无人车做雷达的公司牛在哪,盖茨竟然连投两轮?

    李杉 编译整理 量子位 报道 | 公众号 QbitAI ? △ Echodyne CEO Eben Frankenberg 周一,西雅图雷达创业公司Echody...

    量子位
  • Django CSRF认证的几种解决方案

    浏览器在发送请求的时候,会自动带上当前域名对应的cookie内容,发送给服务端,不管这个请求是来源A网站还是其它网站,只要请求的是A网站的链接,就会带上A网站的...

    星星在线
  • Emlog加cdn获取不到真实IP的解决办法

    Youngxj
  • Emlog加cdn获取不到真实IP的解决办法

    雨尘
  • 高薪全栈工程师必备Linux 基础

    Linux 几乎无处不在,不论是服务器构建,还是客户端开发,操作系统的基础技能对全栈来说都是必备的。 系统的选择 Linux发行版本可以大体分为两类,一类是商...

    小小科
  • Android点击两次返回键退出应用

    IT大飞说

扫码关注云+社区

领取腾讯云代金券