Как получить размер спрайта в спрайте "Лист"?

Моя проблема - получить Спрайт в Листе.

    public class Blocks extends Sprite{
        public Blocks() throws IOException
            {
                super(Image.createImage("/blockSprite.png"),20,30);
            }
    }        

"blockSprite.png содержит изображения спрайтов, множество спрайтов в одном изображении"

Проблема здесь заключается в использовании этой строки кода, как я должен получить размер / размер Sprite в изображении?

Спрайт Лист:
Ширина - 162
Высота - 280

Я хочу знать ширину / высоту спрайтов в листе? и как определить ширину / высоту спрайтов в листе спрайтов?

1 ответ

Решение

Вы знаете, сколько спрайтов есть в каждой строке и столбце, верно? затем просто разделите ширину на количество спрайтов в столбце и разделите высоту на количество спрайтов в ряду.

(Я могу неправильно указать столбец и строку, я не являюсь носителем английского языка, но вам следует просто переключить строку / столбец, если первая попытка не сработала)

Одним из способов является использование программного обеспечения для редактирования изображений (скажем, GIMP, оно бесплатно). Что вам нужно сделать, это

  • Откройте изображение в GIMP
    • Нажмите на инструмент выбора прямоугольника (или нажмите r), ваша мышь превратится в перекрестие
    • Теперь, когда вы щелкнете по изображению, в панели инструментов под опциями инструмента вы увидите положение XY точки, по которой вы щелкнули
    • Круто, теперь нарисуйте прямоугольник вокруг спрайта, который вы хотите. Увеличьте масштаб, прежде чем сделать это, чтобы фактически выбрать весь спрайт.
    • Теперь вы получите координаты XY верхнего левого угла прямоугольника, который вы нарисовали, а также высоту и ширину изображения.

После этого просто используйте https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Tutorial/Using_images.

Повеселись!!

Другие вопросы по тегам