В некоторых случаях вам может понадобиться создать различные объекты, нарисовав такие фигуры, как круги, линии, прямоугольники и т. д. Кроме того, вам может понадобиться нарисовать эти фигуры на изображениях для комментирования. В этой статье вы узнаете, как программно рисовать фигуры в Java. В частности, вы научитесь рисовать линии, эллипсы, дуги и прямоугольники и создавать их изображения.
- Java API для рисования фигур — скачать бесплатно
- Нарисуйте линию с помощью Java
- Нарисуйте эллипс с помощью Java
- Рисование дуги с помощью 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.
- Сначала создайте объект класса 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.
- Сначала создайте объект класса 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.
- Сначала создайте объект класса 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 API для рисования изображений — получите бесплатную лицензию
Вы можете получить бесплатную временную лицензию и рисовать фигуры без оценочных ограничений.
Вывод
В этой статье вы узнали, как рисовать фигуры в Java. Мы рассмотрели, как программно рисовать линии, эллипсы, дуги и прямоугольники на изображениях. Вы можете легко интегрировать предоставленные образцы кода в свои Java-приложения.
Читать далее
Вы можете узнать больше об API обработки изображений Java, используя документацию. Кроме того, вы можете поделиться с нами своими вопросами через наш форум.