python实现图片上添加图片

yipeiwu_com6年前Python基础

在介绍完给图上添加文字后,我们再介绍给图片上添加图片,也就是图片的叠加。

需要使用的Python的图像库:PIL.更加详细的知识点如下:

Imaga模块:用来创建,打开,保存图片文件

  • new(path):用来创建一个新的图片文件.该文件位于path所在的路径中。打开后返回Image类型的图片。
  • open(path):用来打开已经存在的图片文件.该文件位于path所在的路径中。打开后返回Image类型的图片。
  • save(path):用来把创建或者打开的图片保到path所在的路径中。
  • paste(img,(x,y)):用来把img引用的图片粘贴到另外一张图片上,粘贴的坐标为第二个参数。

这些函数中,只有最后一个函数是新介绍的,其它的函数,我们以前介绍过。

下面是完整的代码,请参考:

from PIL import Image

def addImg(img):
 markImg = Image.new('RGBA',(120,120),'white')
 img.paste(markImg,(0,0))
 img.save(path)

path = input("Please input the image file with path: ")

try:
 print("path: "+path)
 oriImg = Image.open(path)
 addImg(oriImg)
 oriImg.show()
except IOError:
 print("can't open the file,check the path again")
 newImg = Image.new('RGBA',(320,240),'blue')
 newImg.save(path)

在代码中,我们先创建了一个320*240的蓝色图片,然后再创建一个120*120的白色图片。
通过paste函数把白色图片添加到了蓝色图片中,添加的位置位于蓝色图片左上角。

下面是程序的运行结果,请参考:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

使用python将mdb数据库文件导入postgresql数据库示例

mdb格式文件可以通过mdbtools工具将内中包含的每张表导出到csv格式文件。由于access数据库和postgresQL数据库格式上会存在不通性,所以使用python的文件处理,将...

Python collections中的双向队列deque简单介绍详解

前言 在python神书《Python+Cookbook》中有这么一段话:在队列两端插入或删除元素时间复杂度都是 O(1) ,而在列表的开头插入或删除元素的时间复杂度为 O(N)。 于...

运动检测ViBe算法python实现代码

运动检测ViBe算法python实现代码

运动物体检测一般分为背景建模和运动物体分析两步。即构建不包含运动物体的背景模型。然后将新的视频帧和背景模型对比,找出其中的运动物体。目前比较好的背景建模算法有两种:1)文章(Zivkov...

Django分页功能的实现代码详解

Django分页功能的实现代码详解

Django分页功能的实现 打开命令行窗口,创建Django工程,使用以下命令: django-admin startproject djpage cd djpage python ma...

python中不能连接超时的问题及解决方法

python中不能连接超时的问题及解决方法

 要是我们大天朝的防火墙技术进步神速         解决方法 #只有修改pip源了。 #临时使用:...