使用Python合成图片的实现代码(图片添加个性化文本,图片上叠加其他图片)


Posted in Python onApril 30, 2020

1.业务需求背景

业务提供一张底层图片1以及需要在底层图片上添加的图片2,两张图片大小不一致,将小图2添加到底图1中,并在其他的空白部分添加个性化的文本信息

2.图片处理逻辑

在底层图片上添加文本信息,图片另存到一个新的路径,命名为图3
将图3和图2合并,处理位置信息,透明率等,将处理完成之后的图片另存到新的路径,命名为图4

3.代码处理部分

3.1 图片上添加文本信息

from PIL import Image,ImageDraw,ImageFont
# 底图添加字体文本

im = Image.open("./底图.png").convert('RGBA')

# 查看原图的大小
print(im.mode,im.size) 
# 生成与原图大小完全一致的新图片,设定为完全透明
txt=Image.new('RGBA', im.size, (0,0,0,0)) 
# 设置字体,字号
fnt=ImageFont.truetype(r"C:\Windows\Fonts\STXINWEI.TTF", 50)
d=ImageDraw.Draw(txt)
# 拼接需要在图片上填写的文本
name = "李敏"
date_today = "2020-04-28"
a = """
  亲爱的{0}:
      叮。
      确认收货:专属生日祝福!
      快乐属于您,幸福属于您!
      温馨属于您,好运属于您!
      工作在忙碌,本能照顾您!
                
                \r\r\r\rXX部门
                \r\r\r\r{1}          
""".format(name,date_today)
# 设置字体信息所在的位置,写入的信息,颜色
d.text((txt.size[0]-950,txt.size[1]-1300),a,font=fnt,fill=(28,28,28,255))
# 保存新的图片
out=Image.alpha_composite(im,txt)
out.save(r"NEW-1.png")

3.2 两张大小不一致的图片重叠

import cv2
import numpy as np
import matplotlib.pyplot as plt
import os
from PIL import Image,ImageDraw,ImageFont
# 读取两张图片信息
os.chdir('E:\RPA\生日贺卡')
bear = cv2.imread('./baiyang+gou.png')
sky = cv2.imread('./NEW-1.png')
"""
bear 小图
sky  大图
"""
# 根据小图像的大小,在大图像上创建感兴趣区域roi(放置位置任意取)
rows, cols = bear.shape[:2] #获取bear的高度、宽度
roi = sky[0:rows, 0:cols]

dst = cv2.addWeighted(bear,1,roi,0,0) #图像融合,设置透明度,大小等
add_img = sky.copy() #对原图像进行拷贝
add_img[800:rows+800, 75:cols+75] = dst # 将融合后的区域放进原图,可通过改数值修改位置
# 读取融合之后的图片数据(数据类型为dateframe对象)
ret = cv2.cvtColor(add_img,cv2.COLOR_BGR2RGB)

im = Image.fromarray(ret)
im.save("./完整图.png")
print("图片保存完成")

到此这篇关于使用Python合成图片的实现代码(图片添加个性化文本,图片上叠加其他图片)的文章就介绍到这了,更多相关Python合成图片内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
Nov 15 Python
Python list操作用法总结
Nov 10 Python
最大K个数问题的Python版解法总结
Jun 16 Python
python实现ID3决策树算法
Dec 20 Python
Python基于csv模块实现读取与写入csv数据的方法
Jan 18 Python
浅析PHP与Python进行数据交互
May 15 Python
python验证码识别教程之利用滴水算法分割图片
Jun 05 Python
python读取并写入mat文件的方法
Jul 12 Python
Win10+GPU版Pytorch1.1安装的安装步骤
Sep 27 Python
python实现超市管理系统(后台管理)
Oct 25 Python
Python 为什么推荐蛇形命名法原因浅析
Jun 18 Python
selenium3.0+python之环境搭建的方法步骤
Feb 01 Python
解决Python发送Http请求时,中文乱码的问题
Apr 30 #Python
Pytorch高阶OP操作where,gather原理
Apr 30 #Python
python利用Excel读取和存储测试数据完成接口自动化教程
Apr 30 #Python
Python闭包与装饰器原理及实例解析
Apr 30 #Python
python+requests接口压力测试500次,查看响应时间的实例
Apr 30 #Python
Pycharm连接远程服务器过程图解
Apr 30 #Python
python3发送request请求及查看返回结果实例
Apr 30 #Python
You might like
PHP 最大运行时间 max_execution_time修改方法
2010/03/08 PHP
javascript引用对象的方法
2007/01/11 Javascript
JS 页面内容搜索,类似于 Ctrl+F功能的实现代码
2007/08/13 Javascript
javascript 贪吃蛇实现代码
2008/11/22 Javascript
window.onload 加载完毕的问题及解决方案(上)
2009/07/09 Javascript
关于UTF-8的客户端用AJAX方式获取GB2312的服务器端乱码问题的解决办法
2010/11/30 Javascript
jquery实现每个数字上都带进度条的幻灯片
2013/02/20 Javascript
jquery DIV撑大让滚动条滚到最底部代码
2013/06/06 Javascript
JavaScript DOM操作表格及样式
2015/04/13 Javascript
jQuery 跨域访问解决原理案例详解
2016/07/09 Javascript
Angular2利用组件与指令实现图片轮播组件
2017/03/27 Javascript
基于JavaScript实现无限加载瀑布流
2017/07/21 Javascript
jQuery实现所有验证通过方可提交的表单验证
2017/11/21 jQuery
JS实现获取进今年第几天是周几的方法分析
2018/06/27 Javascript
基于Vue实现可以拖拽的树形表格实例详解
2018/10/18 Javascript
JavaScript链式调用实例浅析
2018/12/19 Javascript
js中实例与对象的区别讲解
2019/01/21 Javascript
[01:13:59]LGD vs Mineski Supermajor 胜者组 BO3 第三场 6.5
2018/06/06 DOTA
[52:02]DOTA2-DPC中国联赛 正赛 Phoenix vs Dragon BO3 第二场 2月26日
2021/03/11 DOTA
python获取图片颜色信息的方法
2015/03/18 Python
python使用正则表达式分析网页中的图片并进行替换的方法
2015/03/26 Python
理解Python中函数的参数
2015/04/27 Python
Python中使用items()方法返回字典元素对的教程
2015/05/21 Python
Python读取图片属性信息的实现方法
2016/09/11 Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
2017/11/14 Python
TensorFlow实现AutoEncoder自编码器
2018/03/09 Python
pytorch 转换矩阵的维数位置方法
2018/12/08 Python
Django中的静态文件管理过程解析
2019/08/01 Python
Python 实现毫秒级淘宝抢购脚本的示例代码
2019/09/16 Python
pycharm快捷键汇总
2020/02/14 Python
详解HTML5中div和section以及article的区别
2015/07/14 HTML / CSS
NIHAOMARKET官方海外旗舰店:意大利你好华人超市
2018/01/27 全球购物
Jack Rogers官网:美国经典的女性鞋靴品牌
2019/09/04 全球购物
大学奖学金获奖感言
2014/08/15 职场文书
群众路线教育实践活动对照检查材料
2014/09/22 职场文书
毕业生自我鉴定范文
2019/05/13 职场文书