Python图片裁剪代码
时间: 2024-07-14 08:01:08 浏览: 72
在Python中,我们可以使用PIL(Pillow)库来进行图片的裁剪。以下是一个简单的例子,展示如何使用PIL对图片进行水平或垂直方向的裁剪:
```python
from PIL import Image
def crop_image(image_path, left=0, top=0, right=None, bottom=None):
# 打开图片
with Image.open(image_path) as img:
# 如果未提供右下角坐标,则根据提供的左上角和宽度高度计算
if not right or not bottom:
width, height = img.size
right = left + width if right is None else right
bottom = top + height if bottom is None else bottom
# 裁剪并保存新的图片
cropped_img = img.crop((left, top, right, bottom))
cropped_img.save('cropped_' + image_path)
# 示例用法
crop_image('original.jpg', left=50, top=100, right=300, bottom=400)
```
这个`crop_image`函数接受原图路径以及四个参数:左、上、右、下坐标。如果只提供左上角坐标,那么会默认裁剪出从该点开始到图像边缘的部分。
如果你想要更复杂的裁剪操作,比如根据比例裁剪或者指定裁剪区域,可能需要借助`bbox`参数,如`img.crop((x1, y1, x2, y2))`,其中`(x1, y1)`为左上角坐标,`(x2, y2)`为右下角坐标。
阅读全文