Рисование фигур в Java

В некоторых случаях вам может понадобиться создать различные объекты, нарисовав такие фигуры, как круги, линии, прямоугольники и т. д. Кроме того, вам может понадобиться нарисовать эти фигуры на изображениях для комментирования. В этой статье вы узнаете, как программно рисовать фигуры в Java. В частности, вы научитесь рисовать линии, эллипсы, дуги и прямоугольники и создавать их изображения.

Java API для рисования фигур — скачать бесплатно

Чтобы нарисовать фигуры и сгенерировать выходные изображения, мы будем использовать Aspose.Imaging for Java. Это мощный API для редактирования изображений, который предоставляет широкий спектр функций для управления изображениями и создания рисунков. Вы можете либо скачать API, либо установить его, используя следующие конфигурации Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository> 

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging</artifactId>
    <version>22.9</version>
</dependency>

Нарисуйте линию с помощью Java

Ниже приведены шаги для рисования линии в Java.

  • Сначала создайте объект класса BmpOptions и установите биты на пиксель с помощью метода setBitsPerPixel().
  • Затем назначьте StreamSource с помощью метода setSource().
  • Создайте новое изображение и инициализируйте его с помощью объекта BmpOptions, а также высоты и ширины изображения.
  • Создайте объект класса Graphics и инициализируйте его объектом Image.
  • Очистите поверхность изображения некоторым цветом, используя метод Graphics.clear().
  • Нарисуйте линию, используя метод Graphics.drawLine(Pen, int, int, int, int).
  • Сгенерируйте и сохраните изображение с помощью метода Image.save().

В следующем примере кода показано, как нарисовать линию в Java.

// Создать BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// Определите исходное свойство для экземпляра BmpOptions.
bmpCreateOptions.setSource(new StreamSource());

// Создает экземпляр Image и вызывает метод create, передавая
// объект bmpCreateOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 500, 500);

// Создайте и инициализируйте экземпляр класса Graphics.
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// Очистить поверхность изображения белым цветом
graphic.clear(com.aspose.imaging.Color.getWhite());

// Нарисуйте пунктирную линию, указав объект Pen синего цвета и
// координаты точек
graphic.drawLine(new Pen(com.aspose.imaging.Color.getBlue(), 3), 18, 18, 200, 200);
graphic.drawLine(new Pen(com.aspose.imaging.Color.getBlue(), 3), 18, 200, 200, 18);

// Нарисуйте непрерывную линию, задав объект Pen с Solid
// Кисть красного цвета с двумя точечными структурами
graphic.drawLine(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getRed()), 3),
		new com.aspose.imaging.Point(18, 18), new com.aspose.imaging.Point(18, 200));

// Нарисуйте непрерывную линию, задав объект Pen с Solid
// Кисть белого цвета с двумя точечными структурами
graphic.drawLine(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getOrange()), 3),
		new com.aspose.imaging.Point(200, 18), new com.aspose.imaging.Point(18, 18));

// Сохранить все изменения
image.save("draw_lines.bmp");

Ниже приведен вывод приведенного выше примера кода.

нарисовать линию в Java

Нарисуйте эллипс с помощью Java

Ниже приведены шаги для рисования эллипса в Java.

  • Сначала создайте объект класса BmpOptions и установите биты на пиксель с помощью метода setBitsPerPixel().
  • Затем назначьте StreamSource с помощью метода setSource().
  • Создайте новое изображение и инициализируйте его с помощью объекта BmpOptions, а также высоты и ширины изображения.
  • Создайте объект класса Graphics и инициализируйте его объектом Image.
  • Очистите поверхность изображения некоторым цветом, используя метод Graphics.clear().
  • Нарисуйте эллипс, используя метод Graphics.drawEllipse(Pen, Rectangle).
  • Сгенерируйте и сохраните изображение с помощью метода Image.save().

В следующем примере кода показано, как нарисовать эллипс на изображении в Java.

// Создать BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// Определите исходное свойство для экземпляра BmpOptions.
bmpCreateOptions.setSource(new StreamSource());

// Создает экземпляр Image и вызывает метод create, передавая
// объект bmpCreateOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// Создайте и инициализируйте экземпляр класса Graphics.
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// Очистить поверхность изображения белым цветом
graphic.clear(com.aspose.imaging.Color.getWhite());

// Нарисуйте пунктирную форму эллипса, указав, что объект Pen имеет красный цвет.
// цвет и окружающий прямоугольник
graphic.drawEllipse(new Pen(com.aspose.imaging.Color.getRed(), 3),
		new com.aspose.imaging.Rectangle(60, 40, 70, 120));

// Нарисуйте форму непрерывного эллипса, указав объект Pen, имеющий
// solid brush with blue цвет и окружающий прямоугольник
graphic.drawEllipse(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getBlue()), 3),
		new com.aspose.imaging.Rectangle(40, 60, 120, 70));

// Сохранить все изменения
image.save("draw_ellipse.bmp");

Ниже приведен вывод приведенного выше примера кода.

нарисовать эллипс в Java

Нарисуйте дугу с помощью Java

Ниже приведены шаги для рисования дуги в Java.

  • Сначала создайте объект класса BmpOptions и установите биты на пиксель с помощью метода setBitsPerPixel().
  • Затем назначьте StreamSource с помощью метода setSource().
  • Создайте новое изображение и инициализируйте его с помощью объекта BmpOptions, а также высоты и ширины изображения.
  • Создайте объект класса Graphics и инициализируйте его объектом Image.
  • Очистите поверхность изображения некоторым цветом, используя метод Graphics.clear().
  • Нарисуйте дугу, используя метод Graphics.drawArc(Pen, float x, float y, float width, float height, float startAngle, float floatAngle).
  • Сгенерируйте и сохраните изображение с помощью метода Image.save().

В следующем примере кода показано, как нарисовать дугу на изображении в Java.

// Создать BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// Определите исходное свойство для экземпляра BmpOptions.
bmpCreateOptions.setSource(new StreamSource());

// Создает экземпляр Image и вызывает метод Create, передавая
// Объект BmpOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// Создайте и инициализируйте экземпляр класса Graphics.
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// Очистить поверхность изображения белым цветом
graphic.clear(com.aspose.imaging.Color.getWhite());

// Нарисуйте пунктирную форму дуги, указав объект Pen, имеющий красный черный цвет.
// цвет и координаты, высота, ширина, начальный и конечный углы
int width = 200;
int height = 300;
int startAngle = 45;
int sweepAngle = 270;

// Нарисуйте дугу на экране
graphic.drawArc(new Pen(com.aspose.imaging.Color.getBlack(), 3), 0, 0, width, height, startAngle, sweepAngle);

// Сохранить все изменения
image.save("draw_arc.bmp");

Ниже приведен вывод приведенного выше примера кода.

нарисовать дугу в Java

Нарисуйте прямоугольник с помощью Java

Ниже приведены шаги для рисования прямоугольника в Java.

  • Сначала создайте объект класса BmpOptions и установите биты на пиксель с помощью метода setBitsPerPixel().
  • Затем назначьте StreamSource с помощью метода setSource().
  • Создайте новое изображение и инициализируйте его с помощью объекта BmpOptions, а также высоты и ширины изображения.
  • Создайте объект класса Graphics и инициализируйте его объектом Image.
  • Очистите поверхность изображения некоторым цветом, используя метод Graphics.clear().
  • Нарисуйте прямоугольник, используя метод Graphics.drawRectangle(Pen, Rectangle).
  • Сгенерируйте и сохраните изображение с помощью метода Image.save().

В следующем примере кода показано, как нарисовать прямоугольник на изображении в Java.

// Создать BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// Определите исходное свойство для экземпляра BmpOptions.
bmpCreateOptions.setSource(new StreamSource());

// Создает экземпляр Image и вызывает метод Create, передавая
// объект bmpCreateOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// Создайте и инициализируйте экземпляр класса Graphics.
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// Очистить поверхность изображения белым цветом
graphic.clear(com.aspose.imaging.Color.getWhite());

// Нарисуйте фигуру пунктирного прямоугольника, указав, что объект Pen имеет красный цвет.
// цвет и прямоугольная структура
graphic.drawRectangle(new Pen(com.aspose.imaging.Color.getRed(), 3),
		new com.aspose.imaging.Rectangle(60, 40, 70, 120));

// Нарисуйте непрерывную прямоугольную форму, указав объект Pen, имеющий
// solid brush with blue цвет и прямоугольная структура
graphic.drawRectangle(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getBlue()), 3),
		new com.aspose.imaging.Rectangle(40, 60, 120, 70));

// Сохранить все изменения
image.save("draw_rectangle.bmp");

Ниже приведен вывод приведенного выше примера кода.

нарисовать прямоугольник в Java

Java API для рисования изображений — получите бесплатную лицензию

Вы можете получить бесплатную временную лицензию и рисовать фигуры без оценочных ограничений.

Вывод

В этой статье вы узнали, как рисовать фигуры в Java. Мы рассмотрели, как программно рисовать линии, эллипсы, дуги и прямоугольники на изображениях. Вы можете легко интегрировать предоставленные образцы кода в свои Java-приложения.

Читать далее

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

Смотрите также