Работа с фигурами в файле PS | Java
Добавить фигуры в документ PS
Добавить прямоугольник в PS
Чтобы добавить прямоугольник в PsDocument с помощью библиотеки Aspose.Page для Java, нам необходимо выполнить следующие шаги:
- Создайте выходной поток для полученного PS-файла.
- Создайте объект PsSaveOptions с параметрами по умолчанию.
- Создайте одностраничный PsDocument с уже созданным потоком вывода и сохраните параметры.
- Создайте прямоугольник (объект java.awt.geom.Rectangle2D).
- Установите отрисовку текущего графического состояния PsDocument.
- Заполните прямоугольник.
- Закройте страницу.
- Сохраните документ.
Если нам нужно обвести (обвести) прямоугольник, то первые 4 и последние 2 шага будут одинаковыми, но точки 5 и 6 будут:
Установите обводку в соответствии с текущим графическим состоянием PsDocument.
Stroke (outline) the rectangle.
1//Create output stream for PostScript document
2FileOutputStream outPsStream = new FileOutputStream(dataDir + "AddRectangle_outPS.ps");
3//Create save options with A4 size
4PsSaveOptions options = new PsSaveOptions();
5
6// Create new PS Document with the page opened
7PsDocument document = new PsDocument(outPsStream, options, false);
8
9//Set paint for filling rectangle
10document.setPaint(Color.ORANGE);
11//Fill the first rectangle
12document.fill(new Rectangle2D.Float(250, 100, 150, 100));
13
14//Set paint for stroking rectangle
15document.setPaint(Color.RED);
16//Set stroke
17document.setStroke(new BasicStroke(3));
18//Stroke (outline) the second rectangle
19document.draw(new Rectangle2D.Float(250, 300, 150, 100));
20
21//Close current page
22document.closePage();
23//Save the document
24document.save();
См. работу с фигурами в документах PS в .NET.
Результат выполнения этого кода выглядит так:
Добавить Эллипс в PS
Чтобы добавить эллипс в PsDocument, также необходимо выполнить 8 шагов:
- Создайте выходной поток для полученного PS-файла.
- Создайте объект PsSaveOptions с параметрами по умолчанию.
- Создайте одностраничный PsDocument с уже созданным потоком вывода и сохраните параметры.
- Создайте эллипс (объект java.awt.geom.Ellipse2D).
- Установите для краски текущее графическое состояние PsDocument.
- Заполните контур эллипса.
- Закройте страницу.
- Сохраните документ.
Если нам нужно обвести (обвести) эллипс, первые 4 и последние 2 шага будут одинаковыми, но точки 5 и 6 будут:
- Установите для штриха текущее графическое состояние PsDocument.
- Обведите (обведите) эллипс:
1//Create output stream for PostScript document
2FileOutputStream outPsStream = new FileOutputStream(dataDir + "AddEllipse_outPS.ps");
3//Create save options with A4 size
4PsSaveOptions options = new PsSaveOptions();
5
6// Create new multipaged PS Document with one page opened
7PsDocument document = new PsDocument(outPsStream, options, false);
8
9//Set paint for filling rectangle
10document.setPaint(Color.ORANGE);
11//Fill the first ellipse
12document.fill(new Ellipse2D.Float(250, 100, 150, 100));
13
14//Set paint for stroking rectangle
15document.setPaint(Color.RED);
16//Set stroke
17document.setStroke(new BasicStroke(3));
18//Stroke (outline) the second ellipse
19document.draw(new Ellipse2D.Float(250, 300, 150, 100));
20
21//Close current page
22document.closePage();
23//Save the document
24document.save();
Результат запуска этого кода выглядит так:
Как мы видим, любую фигуру, как закрытую, так и незамкнутую, можно заполнить или нарисовать с помощью PsDocument.
Его тоже можно обрезать, но это будет описано в другой статье.
Вы можете загрузить примеры и файлы данных с GitHub.