La programmazione grafica in C# potrebbe sembrare più semplice o più difficile di quanto si possa pensare. In questo articolo imparerai come creare una grafica vettoriale straordinaria a livello di codice. Sia che tu stia creando grafica come parte del tuo progetto attuale o come base del tuo gioco o app! Imparerai a creare immagini meravigliose con facilità. Iniziamo!
In questo articolo verranno trattati i seguenti argomenti:
- API di programmazione grafica vettoriale C#
- La struttura di una grafica vettoriale
- Programmazione grafica utilizzando C#
- Curve nella programmazione grafica
- Poligoni e rettangoli
- Come disegnare linee
- Come disegnare percorsi
- Disegna una regione di riempimento
API di programmazione grafica vettoriale C# - Download gratuito
Per creare una grafica vettoriale straordinaria in C#, utilizzeremo l’API Aspose.Drawing for .NET. È una libreria grafica 2D multipiattaforma per disegnare testo, geometrie e immagini in modo programmatico. Consente di caricare, salvare e manipolare i formati di file supportati.
Si prega di scaricare la DLL dell’API o installarla utilizzando NuGet.
PM> Install-Package Aspose.Drawing
La struttura di una grafica vettoriale
La grafica vettoriale è composta da forme geometriche: linee, curve e percorsi. Questi oggetti, con varie proprietà come lunghezza e colore, possono essere manipolati da un programma C#.
Programmazione grafica con C#
Possiamo dipingere o disegnare vari tipi di forme tra cui curve, linee, rettangoli, regioni piene, ellissi e poligoni. L’API fornisce vari metodi per disegnare queste forme. Possiamo creare una varietà di grafica vettoriale diversa in modo programmatico seguendo i passaggi indicati di seguito:
- Crea un oggetto della classe Bitmap.
- Inizializza un oggetto della classe Graphics dalla bitmap.
- Definire un oggetto di classe Pen o SolidBrush con i parametri desiderati.
- Utilizzare i metodi specifici della forma della classe Graphics per disegnare le forme desiderate.
- Alla fine, salva l’immagine.
Ora, vediamo come eseguire questi passaggi in C#.
Curve nella programmazione grafica utilizzando C#
Possiamo disegnare archi, cerchi, ellissi o curve chiuse usando i seguenti metodi:
- DrawArc() per disegnare un arco.
- DrawEllipse() per disegnare un’ellisse.
- DrawClosedCurve() per disegnare una curva chiusa.
- DrawCurve() per disegnare una curva.
Si prega di seguire i passaggi indicati di seguito per disegnare una forma curva:
- Innanzitutto, crea un’istanza della classe Bitmap.
- Quindi, crea l’oggetto della classe Graphics utilizzando il metodo FromImage() dall’oggetto Bitmap appena creato.
- Quindi, definisci un oggetto di classe Pen con il colore e la dimensione specificati.
- Dopodiché, chiama il metodo DrawClosedCurve() per disegnare una curva chiusa.
- Facoltativamente, ripeti i passaggi precedenti per aggiungere un arco e un’ellisse.
- Infine, salva l’immagine di output usando il metodo Save().
Nell’esempio di codice seguente viene illustrato come disegnare forme curve in C#.
// Questo esempio di codice mostra come disegnare una curva, un arco e un cerchio chiusi.
// Crea una bitmap
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Iniziale grafica da bitmap
Graphics graphics = Graphics.FromImage(bitmap);
// Definisci una penna per disegnare
Pen penBlue = new Pen(Color.Blue, 4);
// Disegna una curva
graphics.DrawClosedCurve(penBlue, new Point[] { new Point(10, 700), new Point(250, 500), new Point(500, 10), new Point(750, 500), new Point(990, 700) });
// Disegna un arco
Pen penRed = new Pen(Color.Red, 2);
graphics.DrawArc(penRed, 0, 0, 700, 700, 0, 180);
// Disegna un'ellisse
Pen penGreen = new Pen(Color.Green, 2);
graphics.DrawEllipse(penGreen, 10, 10, 500, 500);
// Salva la bitmap come PNG
bitmap.Save("C:\\Files\\Drawing\\Curves.png");
Poligoni e rettangoli nella programmazione grafica utilizzando C#
Possiamo disegnare poligoni e rettangoli seguendo i passaggi menzionati in precedenza. Tuttavia, è necessario utilizzare i seguenti metodi nel passaggio n. 4:
- DrawPolygon() per disegnare un poligono.
- DrawRectangle() per disegnare un rettangolo.
Nell’esempio di codice seguente viene illustrato come disegnare poligoni e rettangoli in C#.
// Questo esempio di codice mostra come disegnare un poligono e un rettangolo.
// Crea una bitmap
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Iniziale grafica da bitmap
Graphics graphics = Graphics.FromImage(bitmap);
// Definisci una penna per disegnare
Pen penBlue = new Pen(Color.Blue, 4);
// Disegna un poligono
graphics.DrawPolygon(pen, new Point[] { new Point(100, 100), new Point(500, 700), new Point(900, 100) });
// Disegna un rettangolo
Pen penRed = new Pen(Color.Red, 2);
graphics.DrawRectangle(penRed, 10, 10, 900, 700);
// Salva la bitmap come PNG
bitmap.Save("C:\\Files\\Drawing\\Shapes.png");
Righe nella programmazione grafica utilizzando C#
Allo stesso modo, possiamo tracciare linee seguendo i passaggi menzionati in precedenza. Tuttavia, è necessario utilizzare il metodo DrawLine() nel passaggio n. 4 per tracciare una linea.
Nell’esempio di codice seguente viene illustrato come disegnare linee in C#.
// Questo esempio di codice mostra come disegnare una linea.
// Crea una bitmap
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Iniziale grafica da bitmap
Graphics graphics = Graphics.FromImage(bitmap);
// Definisci una penna per disegnare
Pen penBlue = new Pen(Color.Blue, 4);
// Tracciare linee
graphics.DrawLine(pen, 10, 700, 500, 10);
graphics.DrawLine(pen, 500, 10, 990, 700);
// Salva la bitmap come PNG
bitmap.Save("C:\\Files\\Drawing\\Lines.png");
Percorsi nella programmazione grafica utilizzando C#
Nella grafica vettoriale, un percorso rappresenta una serie di linee rette lisce definite da un punto iniziale e finale, insieme ad altri punti. Possiamo tracciare un percorso seguendo i passaggi indicati di seguito:
- Innanzitutto, crea un’istanza della classe Bitmap.
- Quindi, inizializza l’oggetto della classe Graphics dall’oggetto Bitmap appena creato utilizzando il metodo FromImage().
- Quindi, definisci un oggetto di classe Pen con il colore e la dimensione specificati.
- Quindi, crea un’istanza della classe GraphicsPath.
- Quindi, aggiungi le righe usando il metodo AddLine().
- Successivamente, chiama il metodo DrawPath() con gli oggetti Pen e GraphicsPath.
- Infine, salva l’immagine di output usando il metodo Save().
Nell’esempio di codice seguente viene illustrato come disegnare un percorso in C#.
// Questo esempio di codice mostra come disegnare un Path.
// Crea una bitmap
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Iniziale grafica da bitmap
Graphics graphics = Graphics.FromImage(bitmap);
// Definisci una penna per disegnare
Pen penBlue = new Pen(Color.Blue, 4);
// Inizializza percorso grafico
GraphicsPath path = new GraphicsPath();
// Aggiungi la riga 1
path.AddLine(100, 100, 1000, 400);
// Aggiungi la riga 2
path.AddLine(1000, 600, 300, 600);
// Aggiungi rettangolo
path.AddRectangle(new Rectangle(500, 350, 200, 400));
// Aggiungi ellisse
path.AddEllipse(10, 250, 450, 300);
// Disegna un percorso
graphics.DrawPath(pen, path);
// Salva la bitmap come PNG
bitmap.Save("C:\\Files\\Drawing\\Shapes.png");
Riempi la regione nella programmazione grafica usando C#
Possiamo disegnare una regione di riempimento seguendo i passaggi indicati di seguito:
- Innanzitutto, crea un’istanza della classe Bitmap.
- Quindi, inizializza l’oggetto della classe Graphics dall’oggetto Bitmap appena creato utilizzando il metodo FromImage().
- Quindi, crea un’istanza della classe GraphicsPath.
- Nel frattempo, aggiungi un poligono usando il metodo AddPolygon().
- Quindi, crea un’istanza della classe Region.
- Quindi, aggiungi un altro oggetto GraphicsPath e aggiungi un rettangolo usando il metodo AddRectangle().
- Quindi, chiama il metodo Exclude() per escludere il percorso interno dalla regione.
- Quindi, definisci un oggetto di classe SolidBrush con il colore specificato.
- Successivamente, chiama il metodo FillRegion() con oggetti SolidBrush e GraphicsPath.
- Infine, salva l’immagine di output usando il metodo Save().
Nell’esempio di codice seguente viene illustrato come disegnare un’area riempita in C#.
// Questo esempio di codice mostra come disegnare una regione.
// Crea una bitmap
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Iniziale grafica da bitmap
Graphics graphics = Graphics.FromImage(bitmap);
// Aggiungi un poligono
path.AddPolygon(new Point[] { new Point(100, 400), new Point(500, 100), new Point(900, 400), new Point(500, 700) });
// Inizializza una regione
Region region = new Region(path);
// Percorso grafico interno
GraphicsPath innerPath = new GraphicsPath();
// Aggiungi un rettangolo
innerPath.AddRectangle(new Rectangle(300, 300, 400, 200));
// Escludi il percorso interiore
region.Exclude(innerPath);
// Definisci un pennello solido
Brush brush = new SolidBrush(Color.Blue);
// Riempi la regione
graphics.FillRegion(brush, region);
// Salva la bitmap come PNG
bitmap.Save("C:\\Files\\Drawing\\Lines.png");
Ottieni una licenza temporanea gratuita
Puoi ottenere una licenza temporanea gratuita per provare Aspose.Drawing per .NET senza limitazioni di valutazione.
Conclusione
In questo articolo abbiamo imparato a:
- creare una nuova bitmap;
- disegnare rettangolo, ellisse, ecc. su una bitmap;
- traccia linee e percorsi;
- salva un’immagine bitmap come PNG in C#.
Oltre alla programmazione grafica in C#, puoi saperne di più su Aspose.Drawing per .NET usando documentazione ed esplorare varie funzionalità supportate dall’API. In caso di ambiguità, non esitare a contattarci sul nostro forum di supporto gratuito.