不用微信QQ,用Pillow裁剪图片

先来个题外话,zy是我最喜欢的明星

我们需要处理批量操作或者是程序化的图片裁剪工作时,用微信QQ自带的裁剪工具无法帮我们快速完成,这时候我们可以用 Pillow 来实现图片裁剪的功能。

先安装pillow

pip install pillow

我们要实现的效果如下,随便找一张图,裁剪后的效果图
在这里插入图片描述
首先通过open方法打开图片,得到一个Image对象

from PIL import Image
import requests
im = Image.open("test.jpg")

也可以使用使用网络上的图片URL链接

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:810735403

from PIL import Image
import requests
img_url = "https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/bc17b6c57e7c42aa905958a648e8c004~tplv-k3u1fbpfcp-watermark.image"
im = Image.open(requests.get(img_url, stream=True).raw)

Image对象提供了crop方法来裁剪图片,只需要指定裁剪的位置 (left, upper, right, lower),这4个参数表示什么意思呢?

其实就是裁剪后图片的左上角坐标(x1,y1)和右下角的坐标值(x2,y2),这四个值组成的元组

crpim = im.crop((left, upper, right, lower))

在这里插入图片描述
怎么获取这四个值呢?可以用图片编辑工具打开该图片,鼠标移上去就可以获取任意点的像素大小了。例如下图中的黑点的位置就是(104,21)
在这里插入图片描述
用同样的方法获取右下角的位置,最后另存为一张新的图片new.jpg即可。

完整代码如下:

from PIL import Image
import requests
# 如果是读取网络上的图片,用这种方式,
# img_url = "https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/bc17b6c57e7c42aa905958a648e8c004~tplv-k3u1fbpfcp-watermark.image"
# im = Image.open(requests.get(img_url, stream=True).raw)
im = Image.open("test.jpg")
box = (104, 21, 374, 299)
crpim = im.crop(box)
crpim.save("new.jpg")

另存为 new.jpg 就得到了最终的效果图
在这里插入图片描述
这个妹纸你们喜欢吗?

在这里还是要推荐下我自己建的Python开发交流学习(qq)群:810735403,群里都是学Python开发的,如果你正在学习Python ,欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python软件开发相关的),包括我自己整理的一份2021最新的Python进阶资料和高级开发教程,欢迎进阶中和想深入Python的小伙伴!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值