Uso di una penna per disegnare linee e rettangoli

Per disegnare linee e rettangoli, sono necessari un oggetto Graphics e un oggetto Pen . L'oggetto Graphics fornisce il metodo DrawLine e l'oggetto Pen archivia le caratteristiche della linea, ad esempio colore e larghezza.

Nell'esempio seguente viene tracciata una linea da (20, 10) a (300, 100). Si supponga che la grafica sia un oggetto Graphics esistente.

Pen pen(Color(255, 0, 0, 0));
graphics.DrawLine(&pen, 20, 10, 300, 100);

La prima istruzione del codice usa il costruttore della classe Pen per creare una penna nera. L'argomento passato al costruttore Pen è un oggetto Color . I valori utilizzati per costruire l'oggetto Color ( 255, 0, 0, 0, 0) corrispondono ai componenti alfa, rosso, verde e blu del colore. Questi valori definiscono una penna nera opaca.

Nell'esempio seguente viene disegnato un rettangolo con l'angolo superiore sinistro in corrispondenza di (10, 10). Il rettangolo ha una larghezza di 100 e un'altezza pari a 50. Il secondo argomento passato al costruttore Pen indica che la larghezza della penna è di 5 pixel.

Pen blackPen(Color(255, 0, 0, 0), 5);
stat = graphics.DrawRectangle(&blackPen, 10, 10, 100, 50);

Quando il rettangolo viene disegnato, la penna viene centrata sul limite del rettangolo. Poiché la larghezza della penna è 5, i lati del rettangolo vengono disegnati a 5 pixel di larghezza, in modo che 1 pixel venga disegnato sul limite stesso, 2 pixel vengono disegnati all'interno e 2 pixel vengono disegnati all'esterno. Per altre informazioni sull'allineamento della penna, vedere Impostazione della larghezza e dell'allineamento della penna.

La figura seguente mostra il rettangolo risultante. Le linee tratteggiate mostrano dove sarebbe stato disegnato il rettangolo se la larghezza della penna fosse stata di un pixel. La visualizzazione ingrandita dell'angolo superiore sinistro del rettangolo mostra che le linee nere spesse sono centrate su quelle linee tratteggiate.

illustrazione di un rettangolo disegnato con una linea nera spessa che circonda una linea sottile, grigia, tratteggiata