Работа с фигурами в файле PS | Питон
Добавьте фигуры в документ PS
Добавить прямоугольник в PS
Чтобы вставить прямоугольник в PsDocument с помощью Aspose.Page для Python через библиотеку .NET, выполните следующие действия:
- Создайте выходной поток для полученного PS-файла.
- Создайте объект PsSaveOptions с параметрами по умолчанию.
- Создайте одностраничный PsDocument с уже созданным потоком вывода и сохраните параметры.
- Создайте прямоугольник aspose.pydrawing.GraphicsPath на основе прямоугольника.
- Установите отрисовку текущего графического состояния PsDocument.
- Заполните прямоугольник.
- Закройте страницу.
- Сохраните документ.
Для обводки (обводки) прямоугольника первые 4 и последние 2 шага будут одинаковыми, а вот 5-й и 6-й будут:
- Установите обводку в соответствии с текущим графическим состоянием PsDocument.
- Обведите (обведите) прямоугольник.
1# The path to the documents directory.
2data_dir = Util.get_data_dir_working_with_shapes()
3
4# Create an output stream for the PostScript document
5with open(data_dir + "AddRectangle_outPS.ps", "wb") as out_ps_stream:
6 # Create save options with A4 size
7 options = PsSaveOptions()
8
9 # Create a new 1-paged PS Document
10 document = PsDocument(out_ps_stream, options, False)
11
12 # Create a graphics path from the first rectangle
13 path = aspose.pydrawing.drawing2d.GraphicsPath()
14 path.add_rectangle(aspose.pydrawing.RectangleF(250, 100, 150, 100))
15 # Set the paint
16 document.set_paint(aspose.pydrawing.SolidBrush(aspose.pydrawing.Color.orange))
17 # Fill the rectangle
18 document.fill(path)
19
20 # Create a graphics path from the second rectangle
21 path = aspose.pydrawing.drawing2d.GraphicsPath()
22 path.add_rectangle(aspose.pydrawing.RectangleF(250, 300, 150, 100))
23 # Set stroke
24 document.set_stroke(GraphicsFactory.create_pen_by_brush_and_width(aspose.pydrawing.SolidBrush(aspose.pydrawing.Color.red), 3))
25 # Stroke (outline) the rectangle
26 document.draw(path)
27
28 # Close the current page
29 document.close_page()
30
31 # Save the document
32 document.save()
Результат запуска этого кода:
Добавить Эллипс в PS
Чтобы добавить эллипс в PsDocument также необходимо выполнить 8 шагов:
- Создайте выходной поток для полученного PS-файла.
- Создайте объект PsSaveOptions с параметрами по умолчанию.
- Создайте одностраничный PsDocument с уже созданным потоком вывода и сохраните параметры.
- Создайте эллипс aspose.pydrawing.drawing2d.GraphicsPath из прямоугольника.
- Установите для краски текущее состояние графики PsDocument.
- Заполните контур эллипса.
- Закройте страницу.
- Сохраните документ.
Чтобы обвести (очертить) эллипс, первые 4 и последние 2 шага будут одинаковыми, а 5-й и 6-й будут:
- Установите для штриха текущее графическое состояние PsDocument.
- Обведите (обведите) эллипс.
1# The path to the documents directory.
2data_dir = Util.get_data_dir_working_with_shapes()
3
4# Create an output stream for PostScript document
5with open(data_dir + "AddEllipse_outPS.ps", "wb") as out_ps_stream:
6 # Create save options with the A4 size
7 options = PsSaveOptions()
8
9 # Create a new 1-paged PS Document
10 document = PsDocument(out_ps_stream, options, False)
11
12 # Create a graphics path from the first ellipse
13 path = aspose.pydrawing.drawing2d.GraphicsPath()
14 path.add_ellipse(aspose.pydrawing.RectangleF(250, 100, 150, 100))
15 # Set the paint
16 document.set_paint(aspose.pydrawing.SolidBrush(aspose.pydrawing.Color.orange))
17 # Fill the ellipse
18 document.fill(path)
19
20 # Create a graphics path from the second ellipse
21 path = aspose.pydrawing.drawing2d.GraphicsPath()
22 path.add_ellipse(aspose.pydrawing.RectangleF(250, 300, 150, 100))
23 # Set the stroke
24 document.set_stroke(GraphicsFactory.create_pen_by_brush_and_width(aspose.pydrawing.SolidBrush(aspose.pydrawing.Color.red), 3))
25 # Stroke (outline) the ellipse
26 document.draw(path)
27
28 # Close the current page
29 document.close_page()
30
31 # Save the document
32 document.save()
Результат запуска этого кода:
Как мы видим, любую фигуру, как закрытую, так и незамкнутую, можно заполнить или нарисовать с помощью PsDocument. Его тоже можно обрезать, но об этом будет рассказано в другой статье.
Вы можете загрузить примеры и файлы данных с сайта GitHub.