у меня есть spritesheet с спрайтов 40x30 каждого, и я пытаюсь разбить его на indivdual спрайтов по имени из 0-number_of_sprites
Подушка: расщеплении spritesheet в seprate изображений
from PIL import Image
from os import mkdir
mkdir("assets/icons")
sheet = Image.open("assets/icons.png")
count = 0
for x in range(12):
for y in range(97):
a = (x + 1) * 40
b = (y + 1) * 30
icon = sheet.crop((a - 40, b - 30, a, b)) # Problem here
icon.save("assets/icons/{}.png".format(count))
count += 1
И проблема в том, где я отметил как таковой. Координаты a, b
являются верхний левый и верхний правый каждого спрайта, переходя от 40, 30
к 480, 2910
EDIT: Введена в котором проблема была, случайно удалили его раньше. Моя проблема заключается в том, что этот код получает каждый отдельный спрайт, но, похоже, делает это в совершенно случайном порядке, например, # 384 в списке, по какой-то причине был сохранен как # 32, а # 10 как # 1
Где вы отметили проблему. Пожалуйста, отредактируйте свой вопрос и сделайте это (и добавление объяснения проблемы будет еще лучше). – martineau