Trabalhar com Formas num ficheiro PS | Python
Adicionar Formas ao Documento PS
Adicionar Retângulo ao PS
Para inserir um rectângulo no PsDocument utilizando o Aspose.Page para Python através da biblioteca .NET, siga os seguintes passos:
- Crie um fluxo de saída para o ficheiro PS resultante.
- Crie um objeto PsSaveOptions com as opções padrão.
- Crie um PsDocument de 1 página com um fluxo de saída já criado e opções de guardar.
- Crie um retângulo aspose.pydrawing.GraphicsPath a partir do retângulo.
- Defina uma pintura para o estado gráfico atual do PsDocument.
- Preencha o retângulo.
- Feche a página.
- Guarde o documento.
Para traçar (contornar) um retângulo, os primeiros 4 e os últimos 2 passos serão os mesmos, mas o 5 e o 6 serão:
- Defina o traçado para o estado gráfico atual do PsDocument.
- Trace (contorne) o retângulo.
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()
O resultado da execução deste código é
Adicionar Elipse ao PS
Para adicionar uma elipse ao PsDocument, são também necessários 8 passos:
- Criar um fluxo de saída para o ficheiro PS resultante.
- Crie um objeto PsSaveOptions com as opções padrão.
- Crie um PsDocument de 1 página com um fluxo de saída já criado e opções de guardar.
- Crie uma elipse aspose.pydrawing.drawing2d.GraphicsPath a partir do retângulo.
- Defina a pintura para o estado gráfico atual do PsDocument.
- Preencha o percurso da elipse.
- Feche a página.
- Guarde o documento.
Para traçar (contornar) uma elipse, os primeiros 4 e os últimos 2 passos serão os mesmos, mas o 5 e o 6 serão:
- Defina o traçado para o estado gráfico atual do PsDocument.
- Trace (contorne) a elipse.
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()
O resultado da execução deste código é
Como podemos ver, qualquer forma, tanto fechada como aberta, pode ser preenchida ou desenhada por PsDocument. Também pode ser recortada, mas isso será descrito noutro artigo.
Pode descarregar exemplos e ficheiros de dados do GitHub.