我有以下代码行进行图像裁剪
im = Image.open('path/to/image.jpg')
outfile = "path/to/dest_img.jpg"
im.copy()
im.crop((0, 0, 500, 500))
im.thumbnail(size, Image.ANTIALIAS)
im.save(outfile, "JPEG")
但它似乎没有裁剪图像.我有更大的图像尺寸,例如2048 x 1536 px.
[编辑]
这也是解决方案,我自己无法回答这个问题,所以在这里添加答案.
实际上用新的处理程序裁剪返回图像,我意识到我犯了错误.我应该在新的处理程序中分配裁剪,如下所示
crop_img = im.crop((0, 0, 500, 500))
完整代码如下:
im = Image.open('path/to/image.jpg')
outfile = "path/to/dest_img.jpg"
im.copy()
crop_img = im.crop((0, 0, 500, 500))
crop_img.thumbnail(size, Image.ANTIALIAS)
crop_img.save(outfile, "JPEG")
请注意,在裁剪线之后,正在使用crop_img处理程序.
最佳答案 您忘记在某些语句中分配返回值.
im = Image.open('path/to/image.jpg')
outfile = "path/to/dest_img.jpg"
im = im.crop((0, 0, 500, 500))
im = im.thumbnail(size, Image.ANTIALIAS)
im.save(outfile, "JPEG")