python 对图片进行简单的处理


Posted in Python onJune 23, 2021
目录
  • 安装Pillow包
  • 图片划线
  • 图片写字
  • 图片加图片水印
  • 图片模糊
  • 图片截取
  • 总结

 

安装Pillow包

pip install Pillow

 

图片划线

from PIL import Image, ImageDraw
im = Image.open("blur.jpg")
draw = ImageDraw.Draw(im)
draw.line((0, 0) + im.size, fill=128)
draw.line((0, im.size[1], im.size[0], 0), fill=128)
del draw
# write to stdout
im.save("blur.jpg", "PNG")

 

图片写字

有的时候我们可能需要往图片上写一些文字,比如说水印什么的,只要选择好我们本地的字体文件,直接就可以在图片上写字了

from PIL import ImageFont, ImageDraw,Image, ImageDraw
image = Image.open("image.png").convert('RGBA')
txt=Image.new('RGBA', image.size, (0,0,0,0))
font=ImageFont.truetype("c:/Windows/fonts/Tahoma.ttf", 20)
draw=ImageDraw.Draw(txt)
draw.text((txt.size[0]-100, txt.size[1]-30), "linshiyingdi", font=font)
out=Image.alpha_composite(image, txt)
out.save("imageWithText.png", "png")
out.show()

 

图片加图片水印

文字水印有时候不好看,想改成图片水印,也是可以的

from PIL import ImageFont, ImageDraw, Image, ImageDraw

image = Image.open("image.png")
logo = Image.open("logo.png")
layer = Image.new('RGBA', image.size, (0, 0, 0, 0))
layer.paste(logo, (50, 60))
out = Image.composite(layer, image, layer)
out.save("imageWithLogo.png", "png")
out.show()

如果水印图片过大时,可以直接缩小点,直接使用图片自带的thumbnail方法就行

from PIL import ImageFont, ImageDraw, Image, ImageDraw

image = Image.open("image.png")
logo = Image.open("logo.png")
logo.thumbnail((200, 100))
layer = Image.new('RGBA', image.size, (0, 0, 0, 0))
layer.paste(logo, (50, 60))
out = Image.composite(layer, image, layer)
out.save("imageWithLogo.png", "png")
out.show()

如下图,我们的水印图片放到了左上角,大小也非常合适。

python 对图片进行简单的处理

 

图片模糊

from PIL import Image, ImageFilter
# 打开一个jpg图像文件,直接放到当前路径下方便点:
im = Image.open('2822.jpg')
# 应用模糊滤镜:
im2 = im.filter(ImageFilter.BLUR)
im2.save('blur.jpg', 'jpeg')

 

图片截取

from PIL import Image
img = Image.open("image.png")
print(img.size)
cropped = img.crop((0, 0, 1303, 734))  # (left, upper, right, lower)
cropped.save("imageCropped.png")

可以看到的是如果这个图片的长度和宽度比1303和734小的时候会有透明的填充,感觉很难看,可以将对应的长度和宽度和这两个数字做个判断

from PIL import Image

img = Image.open("image.png")
print(img.size)
right = 1303
lower = 734
if img.size[0] < 1303:
    right = img.size[0]
if img.size[1] < 734:
    lower = img.size[1]
cropped = img.crop((0, 0, right, lower))  # (left, upper, right, lower)
cropped.save("imageCropped.png")

这样白边就被干掉了

 

总结

人生苦短,我用 Python,在强大的Pillow帮助下,我们只需几行代码就可以实现图片的各种处理。

以上就是python 对图片进行简单的处理的详细内容,更多关于python 图片处理的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python获取糗百图片代码实例
Dec 18 Python
python中文编码问题小结
Sep 28 Python
python制作websocket服务器实例分享
Nov 20 Python
python入门教程 python入门神图一张
Mar 05 Python
详解Python3中的迭代器和生成器及其区别
Oct 09 Python
python实现趣味图片字符化
Apr 30 Python
python twilio模块实现发送手机短信功能
Aug 02 Python
python 计算两个列表的相关系数的实现
Aug 29 Python
Python 异步协程函数原理及实例详解
Nov 13 Python
python使用html2text库实现从HTML转markdown的方法详解
Feb 21 Python
Django Admin后台添加数据库视图过程解析
Apr 01 Python
浅谈Selenium+Webdriver 常用的元素定位方式
Jan 13 Python
DjangoRestFramework 使用 simpleJWT 登陆认证完整记录
浅析Python中的套接字编程
Python中使用ipython的详细教程
详解Python类和对象内容
python析构函数用法及注意事项
Jun 22 #Python
Python自动化测试PO模型封装过程详解
python中的class_static的@classmethod的巧妙用法
Jun 22 #Python
You might like
用PHP将网址字符串转换成超链接(网址或email)
2010/05/25 PHP
PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
2013/07/03 PHP
PHP开发工具ZendStudio下Xdebug工具使用说明详解
2013/11/11 PHP
PHP中date与gmdate的区别及默认时区设置
2014/05/12 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
php格式文件打开的四种方法
2018/02/24 PHP
PHP explode()函数用法讲解
2019/02/15 PHP
[原创]保存的js无法执行的解决办法
2007/02/25 Javascript
常用简易JavaScript函数
2009/04/09 Javascript
JavaScript 语言的递归编程
2010/05/18 Javascript
网页前台通过js非法字符过滤代码(骂人的话等等)
2010/05/26 Javascript
深入理解JavaScript系列(13) This? Yes,this!
2012/01/18 Javascript
JavaScript高级程序设计(第3版)学习笔记6 初识js对象
2012/10/11 Javascript
js表头排序实现方法
2015/01/16 Javascript
JS仿淘宝实现的简单滑动门效果代码
2015/10/14 Javascript
BootStrap智能表单实战系列(九)表单图片上传的支持
2016/06/13 Javascript
jQuery 调用WebService 实例讲解
2016/06/28 Javascript
最全面的JS倒计时代码
2016/09/17 Javascript
JavaScript cookie详解及简单实例应用
2016/12/31 Javascript
小程序实现左滑删除的效果的实例代码
2020/10/19 Javascript
python实现的简单窗口倒计时界面实例
2015/05/05 Python
python实现AES和RSA加解密的方法
2019/03/28 Python
Python函数式编程实例详解
2020/01/17 Python
利用python生成照片墙的示例代码
2020/04/09 Python
德国婴儿服装和婴儿用品购买网站:Baby Sweets
2019/12/08 全球购物
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
2014端午节活动策划方案
2014/01/27 职场文书
医院护士见习期自我鉴定
2014/04/10 职场文书
关于学习的演讲稿
2014/05/10 职场文书
减负增效提质方案
2014/05/23 职场文书
2014年社区国庆节活动方案
2014/09/16 职场文书
开业庆典活动策划方案
2014/09/21 职场文书
学校政风行风评议工作总结
2014/10/21 职场文书
2015最新婚礼主持词
2015/06/30 职场文书
六五普法学习心得体会
2016/01/21 职场文书
正能量励志演讲稿三分钟(范文)
2019/07/11 职场文书