У меня есть лист спрайтов, каждое изображение которого сосредоточено в ячейке 32x32. Реальные изображения не 32x32, а немного меньше. Мне хотелось бы взять ячейку и обрезать прозрачные пиксели, чтобы изображение было как можно меньше.
Как бы мне это сделать на Java ( JDK 6)?
Вот пример того, как я сейчас разбиваю лист плиток на ячейки:
Код: Выделить всё
BufferedImage tilesheet = ImageIO.read(getClass().getResourceAsStream("/sheet.png");
for (int i = 0; i < 15; i++) {
Image img = tilesheet.getSubimage(i * 32, 0, 32, 32);
// crop here..
}
Моя текущая идея заключалась в том, чтобы проверить каждый пиксель от центра, продвигаясь к нему, чтобы увидеть, является ли он прозрачным, но мне было интересно, есть ли более быстрый/чистый способ сделать это.
Подробнее здесь:
https://stackoverflow.com/questions/322 ... ls-in-java