Работа с фигурами в файле 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// Add Rectangle to PS document.
2
3String outputFileName = "AddRectangle_outPS.ps";
4
5//Create save options with A4 size
6PsSaveOptions options = new PsSaveOptions();
7
8// Create new 1-paged PS Document
9PsDocument document = new PsDocument(getOutputDir() + outputFileName, options, false);
10
11//Create graphics path from the first rectangle
12GeneralPath path = new GeneralPath();
13path.append(new Rectangle2D.Float(250, 100, 150, 100), false);
14//Set paint
15document.setPaint(Color.ORANGE);
16//Fill the rectangle
17document.fill(path);
18
19//Create graphics path from the second rectangle
20path = new GeneralPath();
21path.append(new Rectangle2D.Float(250, 300, 150, 100), false);
22//Set stroke
23document.setStroke(new java.awt.BasicStroke(3));
24//Stroke (outline) the rectangle
25document.draw(path);
26
27//Close current page
28document.closePage();
29
30//Save the document
31document.save();См. работу с фигурами в документах PS в .NET.
Результат выполнения этого кода выглядит так:

Добавить Эллипс в PS
Чтобы добавить эллипс в PsDocument, также необходимо выполнить 8 шагов:
- Создайте выходной поток для полученного PS-файла.
- Создайте объект PsSaveOptions с параметрами по умолчанию.
- Создайте одностраничный PsDocument с уже созданным потоком вывода и сохраните параметры.
- Создайте эллипс (объект java.awt.geom.Ellipse2D).
- Установите для краски текущее графическое состояние PsDocument.
- Заполните контур эллипса.
- Закройте страницу.
- Сохраните документ.
Если нам нужно обвести (обвести) эллипс, первые 4 и последние 2 шага будут одинаковыми, но точки 5 и 6 будут:
- Установите для штриха текущее графическое состояние PsDocument.
- Обведите (обведите) эллипс:
1// Add ellipse to PS document.
2
3String outputFileName = "AddEllipse_outPS.ps";
4
5//Create save options with A4 size
6PsSaveOptions options = new PsSaveOptions();
7
8// Create new 1-paged PS Document
9PsDocument document = new PsDocument(getOutputDir() + outputFileName, options, false);
10
11//Create graphics path from the first ellipse
12GeneralPath path = new GeneralPath();
13path.append(new java.awt.geom.Ellipse2D.Float(250, 100, 150, 100), false);
14//Set paint
15document.setPaint(Color.ORANGE);
16//Fill the ellipse
17document.fill(path);
18
19//Create graphics path from the second ellipse
20path = new GeneralPath();
21path.append(new java.awt.geom.Ellipse2D.Float(250, 300, 150, 100), false);
22//Set stroke
23document.setStroke(new java.awt.BasicStroke(3));
24//Stroke (outline) the ellipse
25document.draw(path);
26
27//Close current page
28document.closePage();
29
30//Save the document
31document.save();Результат запуска этого кода выглядит так:

Как мы видим, любую фигуру, как закрытую, так и незамкнутую, можно заполнить или нарисовать с помощью PsDocument.
Его тоже можно обрезать, но это будет описано в другой статье.
Вы можете загрузить примеры и файлы данных с GitHub.