python之PIL模块基础功能
Image主要是打开图片后,对图片进行编辑,主要有以下一些常用功能:
1、读取并显示图片:
from PIL import Image
img = Image.open("H:\\salary.png",'r')
img.show()
2、显示图片大小:
from PIL import Image
img = Image.open("H:\\salary.png",'r')
print(img.size)
3、把图片旋转40度并显示:
from PIL import Image
img = Image.open("H:\\salary.png",'r')
img.rotate.show()
4、显示图片名称(包含路径):
from PIL import Image
img = Image.open("H:\\salary.png",'r')
print(img.filename)
5、图片缩小一倍(大概是这么算法):
from PIL import Image
img = Image.open("H:\\salary.png",'r')
img.thumbnail((img.size[0]/2,img.size[1]/2))
6、图片的像素点的缩放:
from PIL import Image
img = Image.open("H:\\salary.png",'r')
img_new = Image.eval(img,lambda x:x*2)
img_new.show()
7、图片合成或融合:
from PIL import Image
#img1和img2大小要一样,并且其一为透明的,否则只能看到一个图片
PIL.image.alpha_composite(img1,img2)
#alpha表示透明度
PIL.image.blend(im1,im2,alpha)
PIL.Image.composite(im1,im2,mask)
8、创建并保存图片:
from PIL import Image
#使用RGB模式创建一个黑色的图形(还有L和RGBA模式)
img = Image.new('RGB',(x,y),(0,0,0))
#L模式创建图形
img = Image.new('L',(x,y),255)
#RGBA模式创建图形
img = Image.new('RGBA',(x,y),(0,0,0,255))
img.show()
img.save('img.png')
#查看模式
print(img.mode)
9、将图片黑化(灰化):
from PIL import Image
img = Image.open("H:\\salary.png",'r')
img.convert("L").show()
10、图片的复制:
from PIL import Image
img = Image.open("H:\\salary.png",'r')
#这里也可以直接赋值
#img1 = img
img1 = img.copy()
img1.show()
11、获取对应坐标的像素:
from PIL import Image
img = Image.open("H:\\salary.png",'r')
print(img.getpixel(x,y))
12、粘贴一个图片到另外一个图片上:
from PIL import Image
#俩个图片的mode要一致,不一致可以用convert转换
img1 = Image.open("H:\\salary.png",'r')
img2 = Image.open("H:\\pig.png",'r')
img1.paste(img2,(50,15))
img1.show()
13、在给定图片上划直线:
from PIL import Image
from PIL import ImageDraw img = Image.open("H:\\salary.png",'r')
draw = ImageDraw.Draw(img)
#传入俩个元祖参数,第一个是直线的俩端点坐标,另外一个是RGB
draw.line((22,43,99,11),(150,150,150))
img.show()
14、在给定图片上写文字:
from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont img = Image.open("H:\\salary.png",'r')
draw = ImageDraw.Draw(img)
font = ImageFont.truetype('segoeuib.ttf',20)
#传入4个参数:文字开始坐标,文字,颜色以及字体(字体可以不传入,使用默认字体)
draw.text((50,60),'Hello,world',(140,255,166),font = font)
img1.show()
python之PIL模块基础功能的更多相关文章
- 使用Python的PIL模块来进行图片对比
使用Python的PIL模块来进行图片对比 在使用google或者baidu搜图的时候会发现有一个图片颜色选项,感觉非常有意思,有人可能会想这肯定是人为的去划分的,呵呵,有这种可能,但是估计人会累死, ...
- Python使用PIL模块生成随机验证码
PIL模块的安装 pip3 install pillow 生成随机验证码图片 import random from PIL import Image, ImageDraw, ImageFont fro ...
- Python学习之模块基础
模块就是程序 编写以下简单代码 print('hello python') 并将py文件保存在c盘的python(假设新建)文件下,通过pycharm的Terminal 或者windom命令窗口调出p ...
- python中PIL模块
Image模块 Image模块是在Python PIL图像处理中常见的模块,对图像进行基础操作的功能基本都包含于此模块内.如open.save.conver.show-等功能. open类 Image ...
- 【Python】PIL模块
Python自建库,在爬虫等基础应用中更加简单好记,做整理以备自查. 目录 Image模块 open类.Save类.format类.Mode类.convert类.Size类.Info类.new类.Co ...
- python的PIL模块安装
一.Centos安装PIL #尤其重要,否则会报错 yum install python-devel yum install libjpeg libjpeg-devel zlib zlib-devel ...
- Python之request模块-基础用法
Request模块参考中文手册:https://requests.readthedocs.io/zh_CN/latest/ Request模块 1.查看pip已装包(模块)的安装信息(模块的路径.版本 ...
- python中time模块常用功能
import time time模块提供了大量对时间进行处理的方法 time.time() # 获取当前时间戳,得到自1970年开始的秒数 >>>time.time() 155487 ...
- Python数据分析 Pandas模块 基础数据结构与简介(一)
pandas 入门 简介 pandas 组成 = 数据面板 + 数据分析工具 poandas 把数组分为3类 一维矩阵:Series 把ndarray强大在可以存储任意数据类型可以专门处理时间数据 二 ...
随机推荐
- C语言之标准源文件模板
/*======================================================================================* * 版权 : xxx ...
- Chrome浏览器 调试工具 vue-devtools 的安装和使用
https://www.cnblogs.com/yuqing6/p/7440549.html
- [leetcode]364. Nested List Weight Sum II嵌套列表加权和II
Given a nested list of integers, return the sum of all integers in the list weighted by their depth. ...
- Java日志框架-logback的介绍及配置使用方法(纯Java工程)(转)
说明:内容估计有些旧,2011年的,但是大体意思应该没多大变化,最新的配置可以参考官方文档. 一.logback的介绍 Logback是由log4j创始人设计的又一个开源日志组件.logback当前分 ...
- PHP开发——常量
概念 l 常量就是值永远不变的量.如:圆周率.身份证号码等. l 所谓常量值永远不变的量,是指在一次完整的HTTP请求过程中. l 常量在程序运行过程中,不能修改.也不能删除. l 常量比变量 ...
- 代码之髓读后感——语法&流程&函数&错误处理
title: 代码之髓读后感2.md date: 2017-07-08 17:33:11 categories: tags: Perl的设计者:Larry Wall在<Programming P ...
- dataTables分页实现两个前提
., 'desc' ]]}); .数据结构
- Python:每日一题004
题目: 输入某年某月某日,判断这一天是这一年的第几天? 程序分析: 以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于2时需考虑多加一天 个人的思路及 ...
- python之内部函数
1.bool,all,any (1)当内容为空时 >>> a=[] >>> bool(a) False >>> all(a) True >& ...
- 2019.02.11 bzoj4767: 两双手(组合数学+容斥dp)
传送门 题意简述:你要从(0,0)(0,0)(0,0)走到(ex,ey)(ex,ey)(ex,ey),每次可以从(x,y)(x,y)(x,y)走到(x+ax,y+ay)(x+ax,y+ay)(x+ax ...