apt-get install -y python-PIL

在图片右下角添加文字:

Python

# -*- coding: utf-8 -*-

from PIL import Image, ImageDraw, ImageFont

# 指定要使用的字体和大小;/Library/Fonts/是macOS字体目录;Linux的字体目录是/usr/share/fonts/

font = ImageFont.truetype('/usr/share/fonts/truetype/dejavu/DejaVuSerif.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=(76, 234, 124, 180))

image_with_text = Image.alpha_composite(rgba_image, text_overlay)

return image_with_text

im_before = Image.open("uouo123.jpg")

im_before.show()

im_after = add_text_to_image(im_before, 'blog.uouo123.com')

im_after.show()

# im.save('im_after.jpg')

-------------------------------------------------------------

添加图片水印:

Python

# -*- coding: utf-8 -*-

from PIL import Image, ImageDraw

defadd_watermark_to_image(image, watermark):

rgba_image = image.convert('RGBA')

rgba_watermark = watermark.convert('RGBA')

image_x, image_y = rgba_image.size

watermark_x, watermark_y = rgba_watermark.size

# 缩放图片

scale = 10

watermark_scale = max(image_x / (scale * watermark_x), image_y / (scale * watermark_y))

new_size = (int(watermark_x * watermark_scale), int(watermark_y * watermark_scale))

rgba_watermark = rgba_watermark.resize(new_size, resample=Image.ANTIALIAS)

# 透明度

rgba_watermark_mask = rgba_watermark.convert("L").point(lambda x: min(x, 180))

rgba_watermark.putalpha(rgba_watermark_mask)

watermark_x, watermark_y = rgba_watermark.size

# 水印位置

rgba_image.paste(rgba_watermark, (image_x - watermark_x, image_y - watermark_y), rgba_watermark_mask)

return rgba_image

im_before = Image.open("uouo123.jpg")

im_before.show()

im_watermark = Image.open("blog.jpg")

im_after = add_watermark_to_image(im_before, im_watermark)

im_after.show()

# im.save('im_after.jpg')

python的pillow给图片加文字_Python-Pillow库给图片添加文字、水印相关推荐

  1. vue本地项目配置图片加载失败_vue图片加载失败时用默认图片替换的方法

    vue图片加载失败时用默认图片替换的方法 前言 本文主要给大家介绍的关于vue实现图片加载失败时用默认图片替换的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 方法如下 原理 ...

  2. 【转】Android图片加载神器之Fresco-加载图片基础[详细图解Fresco的使用]

    Fresco简单的使用-SimpleDraweeView 百学须先立志-学前须知: 在我们平时加载图片(不管是下载还是加载本地图片-..)的时候,我们经常会遇到这样一个需求,那就是当图片正在加载时应该 ...

  3. Android图片加载神器之Fresco-加载图片基础[详细图解Fresco的使用](秒杀imageloader)...

    Fresco简单的使用-SimpleDraweeView 百学须先立志-学前须知: 在我们平时加载图片(不管是下载还是加载本地图片-..)的时候,我们经常会遇到这样一个需求,那就是当图片正在加载时应该 ...

  4. Android LruCache和DiskLruCache相结合打造图片加载框架(仿微信图片选择,照片墙)

    LrcCache和DiskLruCache相结合打造图片加载框架 转载请标明出处:http://blog.csdn.net/luoshishou/article/details/51299169 源码 ...

  5. 图片在canvas中显示,给canvas添加文字,文字描边,将canvas保存成图片下载到本地

    Canvas简介 HTML5新增标签 Canvas API(画布)是在HTML5中新增的标签用于在网页实时生成图像,并且可以操作图像内容,基本上它是一个可以用JavaScript操作的位图(bitma ...

  6. Android图片加载神器之Fresco-加载图片基础[详细图解Fresco的使用]

    前半部分找不到原文链接了 后半部分原文链接:http://www.jianshu.com/p/5364957dcf49 著作权归作者所有,转载请联系作者获得授权,并标注"简书作者" ...

  7. 苹果手机怎么在照片上添加文字_要给照片快速添加文字、图框、印章,用这款手机软件比较方便...

    现在手机的拍照功能越来越先进,人们走到哪儿,都会随拍几张照片,那么,如何后期才能让照片更加的赏心悦目呢?主要从添加文字.漂亮的文字排版.添加相框.以及添加印章元素等几个方面去处理.比如像下面几张照片的 ...

  8. 视频添加文字用什么软件,视频添加文字怎么弄

    随着plog.vlog等视频形式的兴起,视频添加文字变得越来越流行.与其选择插入音频解说,还不如加文字来得生动有趣.那么,视频添加文字用什么软件?视频添加文字怎么弄?接下来,本文会教大家使用一款简单好 ...

  9. python图片转换成文字_Python输出汉字字库及将文字转换为图片的方法

    用python输出汉字字库问题1:假设我们知道汉字编码范围是0x4E00到0x9FA5,怎么从十六进制的编码转成人类可读的字呢? 问题2:怎么把unicode编码的字写入文件呢,如果直接用open() ...

  10. python写gui导入图片并处理_Python图像处理库:Pillow 初级教程

    Image类 Pillow中最重要的类就是Image,该类存在于同名的模块中.可以通过以下几种方式实例化:从文件中读取图片,处理其他图片得到,或者直接创建一个图片. 使用Image模块中的open函数 ...

最新文章

  1. 没有任何基础学编程从哪开始_没有任何的绘画基础,该怎么学绘画?
  2. win10下gnuplot的安装和使用
  3. 网络配置命令优先级和元字符
  4. 图像降噪算法——稀疏表达:K-SVD算法
  5. Struts的MVC和Spring的MVC的区别
  6. oracle 12c dg新特性,oracle 12c:新特性-网格(Grid)基础架构的增强
  7. 树形结构:从二分查找,二叉搜索树寻找最近祖先,从递归到迭代,实现技巧总结
  8. c语言无法打开源文件xx.h,VS2015 + Qt5.9.2开发中无法打开源文件“ui_*.h” 和 error MSB6006: “cmd.exe”已退出,代码为 3之解决办法。...
  9. 海量数据处理分析(部分)
  10. linux应用程序安装PPT免费序,linux下应用程序安装的总结
  11. API接口的安全设计验证:ticket,签名,时间戳
  12. (三)MapReducer运行流程
  13. Mysql MMM 高可用
  14. SpringMVC教程
  15. 华为:行业危机时,只做一件事:抢人!
  16. Delphi窗体部分属性
  17. 【pytorch目标检测】FPN网络结构
  18. PHP生成二维码方法
  19. html可以转换wps嘛,如何将图文并茂的网页快速转换为WPS或word文档
  20. 劝学诗整理:安居不用架高堂,书中自有黄金屋。

热门文章

  1. html表单代码例子_关于React的这些细节,你知道吗?-表单
  2. 海洋分享lol皮肤插件_LOL战斗之夜客户端BUG频出服务器爆满!如何提前领取皮肤?...
  3. 腾讯天衍实验室招聘科研实习生
  4. 深度学习如何均衡精度、内存、计算和通信开销?
  5. 征稿 | 2019年全国知识图谱与语义计算大会(CCKS2019)投稿时间延长
  6. leetcode--数组(Medium2)
  7. 基于并行附加特征提取网络的SSD地面小目标检测模型
  8. 基于位置的知识图谱链接预测
  9. 一张图带你了解JRE、JDK、JVM
  10. 二叉树介绍与代码实现