随笔 - 23  文章 - 0  评论 - 0  阅读 - 11594

【Python】SystemError: tile cannot extend outside image:【PIL Image crop()】

# 图片裁剪,需要设置边缘间距【left,upper,right,lower】
image_5=image.crop(box=(1000,1000,1000,1000))
image_5.show()

出现错误

SystemError: tile cannot extend outside image

意思就是超限了,裁剪参数超出边缘了。

这里就说明了BOX里面四个参数的不是单纯的裁剪边缘距离。

而是:

left:左边裁剪起始位置

upper:上边裁剪起始位置

right:需要裁剪多大像素,从左边起始位置开始算起,所以这个数值必须大于left,否则会报错。因为真正裁剪的宽尺寸是:right-left

lower:需要裁剪的像素末端,也就是从上边开始到这个数值为裁剪的尺寸大小:lower-upper。所以这个数值需要比upper大。

正确的应该是:

# 图片裁剪,需要设置边缘间距【left,upper,right,lower】
image_5=image.crop(box=(1000,1000,5000,5000))
image_5.show()

如果后面的末端位置超过了原本图片的像素大小,会自动留黑裁剪。具体自行测试查看具体效果。

 

posted on   至清无物  阅读(796)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示