Creare immagini e grafici con ASP.NET

2 pagine in totale: <<Indietro 1 [2]

Una volta cliccato sul link sul fondo di questa pagina, viene visualizzato il secondo esempio un po' più complesso in cui è presente un grafico a barre:

Immagine

Questa pagina in verità è formata da due pagine ASP.NET. La prima, "barre.aspx" è in normale formato HTML ed è quella che visualizza la tabella modificabile sulla destra che permette di avere in tempo reale le modifiche al grafico; "grafico.aspx", invece, è l'immagine GIF creata dinamicamente con ASP.NET, contenente il grafico a barre con i dati prelevati da un database. Qui tratterò solo la descrizione del secondo script visto che l'uso del datagrid con modifica dei dati al suo interno non riguarda l'argomento di questo articolo.

Il codice

Lo script ha molti punti in comune con il precedente:

  • Creazione della bitmap contente l'immagine.
  • Disegno delle informazioni su di essa.
  • Content-type (mime) impostato sull'immagine GIF.
  • Invio diretto al browser dell'immagine con la funzione
    bitmap.save(Response.OutputStream,ImageFormat.Gif)

In più è presente nella prima parte dello script la lettura dei dati e loro memorizzazione in un array per il loro disegno nel grafico. Di seguito le poche funzioni utilizzate per disegnare il tutto.

g.FillRectangle(new SolidBrush(color.White),1,1,448,348)

Con questa funzione disegniamo un rettangolo pieno di colore bianco dalle dimensioni 448x348.

Dim bianco As New SolidBrush(Color.Black)
dim textFont as New Font("Time News Romans",14)
dim testo as String="Grafico aggiornato in data: "+DateTime.now
g.DrawString(testo,textFont,bianco,10,10)

Queste righe permettono di scrivere del testo sulla bitmap. La prima imposta il colore, la seconda il font utilizzato, la terza il testo che verrà scritto e l'ultima si occuperà dell'effettivo inserimento della scritta nella bitmap al punto 10(x),10(y).

dim pen as new Pen(Color.Black, 1)
g.DrawLine(pen, 40,60,40,300)

Queste righe disegnano una linea di colore nero in questo caso, con le coordinate iniziali 40x60(x,y) e finali 40x300 (x,y).

Vi invito, per finire, a leggere il codice del file "grafico.aspx" per vedere tutte queste funzioni utilizzate per il disegno di tutti i componenti dell'immagine GIF.

Conclusioni

E' importante osservare queste funzioni, presenti in entrambi gli script:

response.contenttype="Image/Gif"
bitmap.save(Response.OutputStream,ImageFormat.Gif)

Non fanno altro che impostare il formato di output dello script in quello GIF. Ovviamente un'eventuale discordanza tra i due provocherebbe un errore.

Infine, bisogna notare come sia semplice modificare il tipo di immagine restituito modificando semplicemente dal formato a noi più comodo. ASP.NET mette a disposizione, tramite le classi del nuovo framework, oggetti che consentono di manipolare in maniera semplice immagini. Nello zip allegato sono presenti alcuni esempi che vi potranno aiutare a capire meglio il funzionamento delle classi che si occupano di questi compiti.

Approfondimenti

2 pagine in totale: <<Indietro 1 [2]

Attenzione: Questo articolo contiene un allegato

Contenuti dell'articolo

Commenti
Dai un voto a questo articolo, ci aiuterà a migliorare il nostro sito (1 è il voto minimo, 5 il massimo).

Per procedere al rating dell'articolo devi essere autenticato.

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.


TUTORIALS
TOP TEN ARTICOLI
NOTIFICHE

Iscriviti alla nostra newsletter nuoviarticoli per ricevere e-mail le notifiche!

Indirizzo e-mail:
PROVIDER ASP.NET 2.0

Seleziona il database per avere il web.config pronto per Membership, Roles e Profile API.



IN EVIDENZA
MISC