Lavorare con le forme in PostScript | .NET
Aggiungi forme in un documento PS
Aggiungi un rettangolo a PS
Per aggiungere un rettangolo a PsDocument con la libreria Aspose.Page per .NET, dobbiamo seguire i seguenti passaggi:
- Creare un flusso di output per il file PS risultante.
- Creare l’oggetto PsSaveOptions con le opzioni predefinite.
- Creare un PsDocument a pagina singola con un flusso di output già creato e opzioni di salvataggio.
- Creare un rettangolo System.Drawing.Drawing2D.GraphicsPath dal rettangolo.
- Impostare un colore sullo stato grafico corrente di PsDocument.
- Riempire il percorso del rettangolo.
- Chiudere la pagina. 8. Salvare il documento.
Se dobbiamo tracciare il contorno di un rettangolo, i primi 4 e gli ultimi 2 passaggi saranno gli stessi, ma i punti 5 e 6 saranno:
Impostare il contorno allo stato grafico corrente di PsDocument.
Tracciare il contorno del rettangolo.
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(OutputDir + outputFileName, options, false);
10
11//Create graphics path from the first rectangle
12GraphicsPath path = new GraphicsPath();
13path.AddRectangle(new RectangleF(250, 100, 150, 100));
14//Set paint
15document.SetPaint(new SolidBrush(Color.Orange));
16//Fill the rectangle
17document.Fill(path);
18
19//Create graphics path from the second rectangle
20path = new GraphicsPath();
21path.AddRectangle(new RectangleF(250, 300, 150, 100));
22//Set stroke
23document.SetStroke(new Pen(new SolidBrush(Color.Red), 3));
24//Stroke (outline) the rectangle
25document.Draw(path);
26
27//Close current page
28document.ClosePage();
29
30//Save the document
31document.Save();Per Linux, macOS e altri sistemi operativi non Windows, offriamo l’utilizzo del nostro pacchetto Nuget Aspose.Page.Drawing. Utilizza il backend Aspose.Drawing invece della libreria di sistema System.Drawing.
Quindi, importate lo spazio dei nomi Aspose.Page.Drawing invece di quello System.Drawing. Nei frammenti di codice sopra e nei seguenti verrà utilizzato Aspose.Page.Drawing.Rectangle al posto di System.Drawing.Rectangle, Aspose.Page.Drawing.Drawing2D.GraphicsPath al posto di System.Drawing.Drawing2D.GraphicsPath e così via. I nostri esempi di codice su GitHub contengono tutte le sostituzioni necessarie.
Vedi come lavorare con le forme nei documenti PS in Java.
Il risultato dell’esecuzione di questo codice viene visualizzato come

Aggiungi ellisse a PS
Per aggiungere un’ellisse a PsDocument sono necessari 8 passaggi:
- Creare un flusso di output per il file PS risultante.
- Creare l’oggetto PsSaveOptions con le opzioni predefinite.
- Creare un PsDocument di una pagina con un flusso di output già creato e opzioni di salvataggio.
- Creare un’ellisse System.Drawing.Drawing2D.GraphicsPath a partire dal rettangolo.
- Impostare il colore sullo stato grafico corrente del PsDocument.
- Riempire il tracciato dell’ellisse.
- Chiudere la pagina.
- Salvare il documento.
Se dobbiamo tracciare il contorno di un’ellisse, i primi 4 e gli ultimi 2 passaggi saranno gli stessi, ma i punti 5 e 6 saranno:
Impostare il contorno sullo stato grafico corrente del PsDocument.
Tracciare il contorno del tracciato dell’ellisse.
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(OutputDir + outputFileName, options, false);
10
11//Create graphics path from the first ellipse
12GraphicsPath path = new GraphicsPath();
13path.AddEllipse(new RectangleF(250, 100, 150, 100));
14//Set paint
15document.SetPaint(new SolidBrush(Color.Orange));
16//Fill the ellipse
17document.Fill(path);
18
19//Create graphics path from the second ellipse
20path = new GraphicsPath();
21path.AddEllipse(new RectangleF(250, 300, 150, 100));
22//Set stroke
23document.SetStroke(new Pen(new SolidBrush(Color.Red), 3));
24//Stroke (outline) the ellipse
25document.Draw(path);
26
27//Close current page
28document.ClosePage();
29
30//Save the document
31document.Save();Il risultato dell’esecuzione di questo codice appare come

Come possiamo vedere, qualsiasi forma, sia chiusa che aperta, che può essere inserita in System.Drawing.Drawing2D.GraphicsPath può essere riempita o disegnata da PsDocument. Può anche essere ritagliata, ma questo verrà descritto in un altro articolo.
È possibile scaricare esempi e file di dati da GitHub.