Trabajar con formas en PostScript | .NETO

Agregar formas en un documento PS

Agregar rectángulo a PS

Para agregar un rectángulo a PsDocument con la biblioteca Aspose.Page para .NET debemos realizar los siguientes pasos:

  1. Cree una secuencia de salida para el archivo PS resultante.
  2. Cree el objeto PsSaveOptions con opciones predeterminadas.
  3. Cree un PsDocument de 1 página con un flujo de salida ya creado y opciones para guardar.
  4. Cree un rectángulo System.Drawing.Drawing2D.GraphicsPath a partir del rectángulo.
  5. Establezca una pintura en el estado de gráficos actual de PsDocument.
  6. Rellena el trazado del rectángulo.
  7. Cierra la página.
  8. Guarde el documento.

Si necesitamos trazar (delinear) un rectángulo los primeros 4 y los últimos 2 pasos serán iguales, pero los puntos 5 y 6 serán:

  1. Establezca el trazo en el estado de gráficos actual de PsDocument.

  2. Traza (delinea) el trazado del rectángulo.

 1//Create an output stream for PostScript document
 2using (Stream outPsStream = new FileStream(dataDir + "AddRectangle_outPS.ps", FileMode.Create))
 3{
 4    //Create save options with A4 size
 5    PsSaveOptions options = new PsSaveOptions();
 6
 7    // Create new 1-paged PS Document
 8    PsDocument document = new PsDocument(outPsStream, options, false);
 9
10    //Create graphics path from the first rectangle
11    GraphicsPath path = new GraphicsPath();
12    path.AddRectangle(new RectangleF(250, 100, 150, 100));
13    //Set paint
14    document.SetPaint(new SolidBrush(Color.Orange));
15    //Fill the rectangle
16    document.Fill(path);
17
18    //Create graphics path from the second rectangle
19    path = new GraphicsPath();
20    path.AddRectangle(new RectangleF(250, 300, 150, 100));
21    //Set stroke
22    document.SetStroke(new Pen(new SolidBrush(Color.Red), 3));
23    //Stroke (outline) the rectangle
24    document.Draw(path);
25
26    //Close current page
27    document.ClosePage();
28
29    //Save the document
30    document.Save();
31}

Para Linux, MacOS y otros sistemas operativos distintos de Windows, ofrecemos utilizar nuestro paquete Nuget Aspose.Page.Drawing. Utiliza el backend Aspose.Drawing en lugar de la biblioteca del sistema System.Drawing.

Así que importe el espacio de nombres Aspose.Page.Drawing en lugar del System.Drawing. En los fragmentos de código anteriores y siguientes se utilizará Aspose.Page.Drawing.Rectangle en lugar de System.Drawing.Rectangle, se utilizará Aspose.Page.Drawing.Drawing2D.GraphicsPath en lugar de System.Drawing.Drawing2D.GraphicsPath, etc. . Nuestros ejemplos de código en GitHub contienen todas las sustituciones necesarias.

Vea cómo trabajar con formas en documentos PS en Java.


El resultado de ejecutar este código aparece como

Agregar rectángulo

Agregar elipse a PS

Para agregar elipse a PsDocument también se requieren 8 pasos:

  1. Cree una secuencia de salida para el archivo PS resultante.
  2. Cree el objeto PsSaveOptions con opciones predeterminadas.
  3. Cree un PsDocument de 1 página con un flujo de salida ya creado y opciones para guardar.
  4. Cree una elipse System.Drawing.Drawing2D.GraphicsPath a partir del rectángulo.
  5. Establezca la pintura en el estado de gráficos actual de PsDocument.
  6. Rellena el camino de la elipse.
  7. Cierra la página.
  8. Guarde el documento.

Si necesitamos trazar (delinear) una elipse, los primeros 4 y los últimos 2 pasos serán iguales, pero los puntos 5 y 6 serán:

  1. Establezca el trazo en el estado de gráficos actual de PsDocument.

  2. Stroke (outline) the ellipse path.

 1//Create an output stream for PostScript document
 2using (Stream outPsStream = new FileStream(dataDir + "AddEllipse_outPS.ps", FileMode.Create))
 3{
 4    //Create save options with A4 size
 5    PsSaveOptions options = new PsSaveOptions();
 6
 7    // Create new 1-paged PS Document
 8    PsDocument document = new PsDocument(outPsStream, options, false);
 9
10    //Create graphics path from the first ellipse
11    GraphicsPath path = new GraphicsPath();
12    path.AddEllipse(new RectangleF(250, 100, 150, 100));
13    //Set paint
14    document.SetPaint(new SolidBrush(Color.Orange));
15    //Fill the ellipse
16    document.Fill(path);
17
18    //Create graphics path from the second ellipse
19    path = new SystemGraphicsPath();
20    path.AddEllipse(new RectangleF(250, 300, 150, 100));
21    //Set stroke
22    document.SetStroke(new Pen(new SolidBrush(Color.Red), 3));
23    //Stroke (outline) the ellipse
24    document.Draw(path);
25
26    //Close current page
27    document.ClosePage();
28
29    //Save the document
30    document.Save();
31}

El resultado de ejecutar este código aparece como

Agregar elipse

Como podemos ver, cualquier forma, tanto cerrada como no cerrada, que se pueda poner en System.Drawing.Drawing2D.GraphicsPath se puede rellenar o dibujar con PsDocument. También se puede recortar, pero se describirá en otro artículo.

Puede descargar ejemplos y archivos de datos desde GitHub.

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.