Начало работы с рисованием и 2D API - PullRequest
0 голосов
/ 12 декабря 2011

Я пытаюсь интегрировать некоторые функции рисования в мою программу.

У меня есть JLabel, на котором установлено изображение.

Я хочу написать метод для возврата моего изображения:

public Graphics getImage(){
    Graphics g = currentImage;
    return g
}

Но я не знаю, как преобразовать его из JLabel в графический объект.Затем, в качестве простого теста, я хочу нарисовать линию на этом изображении:

public void paint(Graphics g) {  
    g.drawLine(20, 500, 700, 600);
}

Некоторая помощь с началом работы будет очень полезной.

Ответы [ 2 ]

5 голосов
/ 12 декабря 2011

Переопределить paintComponent(Graphics g) метод JLabel и поместить туда весь чертежный код.

3 голосов
/ 12 декабря 2011

У меня есть JLabel, на котором установлено изображение.

Создайте копию изображения (BufferedImage image2..) и поместите image2 в метку.

Когда вам нужно нарисовать, позвоните image2.getGraphics() для Graphics объекта или image2.createGraphics() для Graphics2D объекта.


См. этот ответ для примеров создания и использования изображений.

image

...