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 ftp 按目录结构上传下载的实现代码

具体代码如下所示: #!/usr/bin/python # coding=utf-8 from ftplib import FTP import time import os def...

简单讲解Python编程中namedtuple类的用法

Python的Collections模块提供了不少好用的数据容器类型,其中一个精品当属namedtuple。 namedtuple能够用来创建类似于元祖的数据类型,除了能够用索引来访问数...

python+Django实现防止SQL注入的办法

先看看那种容易被注入的SQL id = 11001 sql = """ SELECT id, name, age FRO...

非递归的输出1-N的全排列实例(推荐)

网易游戏笔试题算法题之一,可以用C++,Java,Python,由于Python代码量较小,于是我选择Python语言。 算法总体思路是从1,2,3……N这个排列开始,一直计算下一个排列...

django orm 通过related_name反向查询的方法

如下所示: class level(models.Model): l_name = models.CharField(max_length=50,verbose_name="等级名...