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实现线程池代码分享

原理:建立一个任务队列,然多个线程都从这个任务队列中取出任务然后执行,当然任务队列要加锁,详细请看代码 import threading import time import sig...

Flask框架学习笔记之使用Flask实现表单开发详解

Flask框架学习笔记之使用Flask实现表单开发详解

本文实例讲述了使用Flask实现表单开发。分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="en"> <head...

Python编程scoketServer实现多线程同步实例代码

本文研究的主要是Python编程scoketServer实现多线程同步的相关内容,具体介绍如下。 开发过程中,为了实现不同的客户端同一时刻只能有一个使用共同数据。 虽说用Python编写...

Python 中 Meta Classes详解

接触过 Django 的同学都应该十分熟悉它的 ORM 系统。对于 python 新手而言,这是一项几乎可以被称作“黑科技”的特性:只要你在models.py中随便定义一个Model的子...

opencv resize图片为正方形尺寸的实现方法

opencv resize图片为正方形尺寸的实现方法

在深度学习中,模型的输入size通常是正方形尺寸的,比如300 x 300这样.直接resize的话,会把图像拉的变形.通常我们希望resize以后仍然保持图片的宽高比. 例如:...