Python Image.crop保存黑色图像

时间:2013-01-25 00:55:27

标签: python python-imaging-library

我正在尝试使用更大的背景图像为游戏制作图块并裁剪它们,但在保存前17张图像后,我开始遇到问题。第18张图像在底部变黑,其余图像全部为黑色。有什么想法吗?

这是我的代码。 imagesize =(512,512),tilesize =(32,32)

def __init__(self, path, imagesize, tilesize):
    self.tiles = dict()
    self.backimage = Image.open(path)
    self.backimage.resize(imagesize)
    self.x = imagesize[0]/tilesize[0]
    self.y = imagesize[1]/tilesize[1]
    currx = 0
    curry = 0
    for i in range(self.x):
        for j in range(self.y):
            tmp = path + str(i) + "_" + str(j) + ".png"
            self.tiles[(i, j)] = tmp
            image = self.backimage.crop((currx, curry, currx+tilesize[0], curry+tilesize[1]))
            image.save(tmp, "PNG")

            curry += tilesize[1]
        currx += tilesize[0]

1 个答案:

答案 0 :(得分:3)

您未在curry循环结束时重置j。它一直在增加,直到它超出范围。