PIL实现两张图片合成一张,和图片加文字

文章目录:

  • 一、PIL实现两张图片合成一张
    • 1、方法一:
    • 2、方法二
  • 二、图片添加文字

首先说明一下:
(小姐姐是谁,是my sweetheart ,请勿使用,谢谢!!!)

一、PIL实现两张图片合成一张

1、方法一:

使用说明:

主要是通过吧图片转换成RGBA通道,增加一个透明度,这样就可以通过调节两张图片的透明度的比例大小,然后实现两张图片同时显示。
blended_img = img1 * (1 – alpha) + img2* alpha 进行。


注意:

  • 两张图片的尺寸大小要一直
  • 如果是jpg格式图片,要转换成RGBA格式,png本身就是含有透明度的
__Author__ = 'Shliang'from PIL import Imagedef blend_images1():img1 = Image.open("test_img/1482928474796.jpg")img1 = img1.convert('RGBA')img2 = Image.open("test_img/7104436331f8db26-1.jpg")img2 = img2.convert('RGBA')img2 = img2.resize(img1.size)print(img2.size)img = Image.blend(img1, img2, 0.3)img.show()img.save("blend1.png")if __name__ == "__main__":blend_images1()

显示效果:

2、方法二

__Author__ = 'Shliang'from PIL import Image# 该接口使用掩码(mask)的形式对两幅图像进行合并。
def blend_images2():img1 = Image.open("test_img/1482928474796.jpg")img1 = img1.convert('RGBA')img2 = Image.open("test_img/7104436331f8db26-1.jpg")img2 = img2.convert('RGBA')r, g, b, alpha = img2.split()alpha = alpha.point(lambda i: i > 0 and 204)  # 204起到的效果和使用blend()接口时的0.3类似。print("=========", alpha)  # <PIL.Image.Image image mode=L size=751x1334 at 0x1B517958160>img = Image.composite(img2, img1, alpha)img.show()img.save("blend2.png")if __name__ == "__main__":blend_images2()

显示效果:

二、图片添加文字

from PIL import Image, ImageDraw, ImageFontdef images_add_test(image_path):img = Image.open(image_path)print(img.size)  # (300, 300)draw = ImageDraw.Draw(img)  # 生成绘制对象drawtypeface = ImageFont.truetype('xindexingcao57.ttf', 18)  # 参数: 字体  字体大小# darw.text()回执文字并生成图片draw.text((75, 150), "我的意中人\n   会踩着七彩祥云来接我", fill=(255, 0, 0),font=typeface)    # 参数: 位置  文字   文字颜色  字体img.show()img.save("result.png")  # 保存if __name__ == "__main__":images_add_test("emotion.jpeg")

原图:

加上文字之后的效果图:





♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠

PIL实现两张图片合成一张,和图片加文字相关推荐

  1. 什么相片可以两张弄成一张_怎么将两张图片合成一张?

    有时候我们需要将两张图片放在一起相比较,但是两张图片相互切换对比起来比较困难,有没有什么办法将两张图片合成一张?方法是肯定有的,而且还是多种多样的,本文就给大家介绍一种对普通用户来说最简单方便快捷的方 ...

  2. 什么相片可以两张弄成一张_ps怎么把两张图片合成一张

    ps怎么把两张图片合成一张 图片应用在我们的生活中十分广泛,Photoshop似乎已经离不开我们的生活.点点滴滴回忆刻印成一张张图片.不过有不少网友却不知道ps怎么把两张图片合成一张,下文将一一为大家 ...

  3. 如何将两张图片合成一张pdf

    在职场工作中,学会处理PDF文件是必不可少的技能.由于PDF文档的特殊性,许多新手在编辑PDF文件时往往不知道从何入手.比如一些非pdf格式的文件,像图片,在使用的时候被指定必须使用pdf格式的,这个 ...

  4. android 两张电信_两张图片合成一张app-2张图片合成一张app下载1.2.9 官方安卓版-西西软件下载...

    两张图片合成一张app是一款可以把手机上的2张图片合成一张并且看不出是合成的图片的工具,玩转2张图片叠加,可以让你和偶像合照不是梦很逼真的!带你打造与众不同的作品!可以制作双重曝光效果的APP,带你打 ...

  5. 实用常识 | 如何将多张图片合成一张gif图片(使用Win10自带工具or利用Photoshop实现)

    今天遇到了一个需求,需要将多张图片合成一张gif图片,利用搜索引擎搜来搜去,尝试了很多在线的网页端工具,不过要么是有水印,要么是需付费,而且合成效果也不是很好,找来找去,Win10自带的视频合成工具也 ...

  6. 使用canvas来实现两张图片合成一张

    写在开头: 最近遇到一个需求,就是上传一张图片,原来的图片作为底图,两张图片组合在一起,形成一张新的图片.并能点击另存. 网上各种百度,谷歌.有很多方法.然后在我的需求里面都不是很适用.就结合前人的成 ...

  7. java gif合成_java图片处理——多张图片合成一张Gif图片并播放或Gif拆分成多张图片...

    1.多张jpg图合成gif动画 /*** 把多张jpg图片合成一张 *@parampic String[] 多个jpg文件名 包含路径 *@paramnewPic String 生成的gif文件名 包 ...

  8. 小程序canvan画布,现两张图片合成一张,并保存到本地

    微信小程序合成照片 应用canvas把他们绘制到一张图上保存到本地相册然后点击分享 自定义一个组件 components/canvas.js里 // components/canvas/canvas. ...

  9. 【Opencv】Python+openCV实现全景图拼接(左右两张图片拼接成一张全景图)

    Python+openCV实现全景图拼接(左右两张图片拼接成一张全景图) 全景图拼接 思路 具体步骤 代码与结果 代码 效果测试1 效果测试2 全景图拼接 思路 这个就是简单对左右两张图进行拼接,希望 ...

最新文章

  1. TensorFlow之变量OP
  2. ORACLE 表空间SQL
  3. mysql往前一天同一时间_Mysql时间轴数据 获取同一天数据的前三条
  4. kodi android 目录,Kodi添加本机和电脑上的电影视频、音乐、图片目录教程
  5. 回发或回调参数无效。在配置中使用 enableEventValidation=true或在页面中启用了事件验证...(转)...
  6. mt4双线macd_【名师讲堂第三季】第六期:基于MACD指标的买卖策略精讲
  7. oracle number长度转换,Oracle Number型数值存储与转换的实现详解
  8. 删除华为电视鸿蒙系统,华为解决互联网电视痛点:鸿蒙系统首发设备欲屏蔽开机广告...
  9. [转贴]如何成为一个优秀的jsp程序员
  10. EmmyLua Unity断点调试
  11. QComboBox代理
  12. JavaWeb学习总结详解
  13. 运算放大器的简要理解
  14. 从感性和理性的角度谈APS系统
  15. 第十一天 乐在其中-Android与远端之JDBC
  16. Spring boot如何集成Redis(四)
  17. 消息队列(mq)是什么?
  18. SSA ASS (Advanced SubStation Alpha) 字幕
  19. 这是一篇有温度的NLP秋招面经
  20. 实验报告总结_你的年终总结,决定了你在企业的未来

热门文章

  1. Golang简单写文件操作的四种方法
  2. 为什么现有的工作制度 对 上班族不利
  3. Floyd_Warshall POJ 1847 Tram
  4. Syntax error, type parameters are only available if source level is 1.5
  5. 3D游戏编程入门(十五)索引缓存
  6. SQL Server 表分区注意事项(转载)
  7. 用python绘制柱状图标题-Python数据可视化:5种绘制柱状图表的方法(附源码)...
  8. 财务需要学python-8年老财务:财务分析学python就能提高效率?一半人是骗子
  9. python怎么画条形图-python绘制条形图方法代码详解
  10. python图片识别-python图像识别