Come generare PNG ASP.NET Testo

April 10

Come generare PNG ASP.NET Testo


Non è necessario utilizzare programmi di disegno per creare immagini di testo per le pagine Web ASP.NET. piattaforma Microsoft .NET include un set di classi grafiche utili che consentono di generare testo grafico al volo. Scegli tra una vasta gamma di formati di immagine tra cui BMP, GIF e PNG. Per inserire immagini di testo PNG su misura nella pagina Web ASP.NET, aggiungere una breve metodo di generatore di PNG al codice.

istruzione

1 Avviare Microsoft Visual Studio e aprire uno dei tuoi progetti C # ASP.NET Web.

2 Individuare modulo di avvio del progetto, e aprire la finestra del codice. Incollare il seguente "con" dichiarazioni nella parte superiore del codice, se non appaiono già:

utilizzando System.Drawing;

utilizzando System.Drawing.Imaging;

utilizzando System.Drawing.Drawing2D;

Queste dichiarazioni fanno corsi di disegno di ASP.NET a disposizione del modulo.

3 Aggiungere il seguente metodo alla finestra del codice:

PngGenerator private void ()

{Response.ContentType = "image / png";

Response.Clear ();

Response.BufferOutput = true;

int fontSize = 12;

Font rectangleFont = new Font (

"Arial", fontSize, FontStyle.BOLD);

int height = 150;

int width = 250;

L'affermazione "Response.ContentType" dice ASP.NET per creare un'immagine PNG. La variabile "fontSize" - 12 in questo esempio - consente di impostare la dimensione dei caratteri desiderata in pixel. Modifica che, per un valore diverso, se volete. L ' "altezza" e variabili "width" hold le dimensioni del rettangolo in cui appare il testo che si disegna. Queste misure sono in pixel. L'attributo "FontStyle.BOLD" rende il grassetto font. Sostituire "Bold" con "regolare", "Corsivo", "barrato" o "underline", se si preferisce una di quelle stili dei caratteri.

4 Aggiungere il seguente metodo alla finestra del codice:

Bitmap bitmap = new Bitmap (

larghezza, altezza, PixelFormat.Format24bppRgb);

Graphics g = Graphics.FromImage (bitmap);

g.SmoothingMode = SmoothingMode.AntiAlias;

Colore backgroundColor = Color.White;

g.Clear (backgroundColor);

g.DrawString ( "testo PNG generato", rectangleFont, SystemBrushes.WindowText, nuova PointF (10, 40));

bitmap.Save (Response.OutputStream, ImageFormat.Jpeg);

g.Dispose ();

Bitmap.Dispose ();

Response.Flush ();

}

La prima istruzione crea una bitmap. Il "g.SmoothingMode" proprietà - impostato su "AntiAlias" - permette ASP.NET per disegnare il testo più agevole. Si noti l'istruzione successiva. Si imposta il colore di sfondo desiderato del testo. Cambiare "bianco" ad un altro colore per creare un colore di sfondo diverso per il testo. L'istruzione "g.DrawString" è il più importante. Crea il tuo PNG che contiene il testo. Sostituire "testo generato PNG" con il testo che si desidera visualizzare nella pagina Web. Si noti la "PointF (100.200)" istanza di classe alla fine dell'istruzione. Questo dice ASP.NET per disegnare il testo alle coordinate indicate. In questo esempio, la coordinata X è 100 e la coordinata Y è 200. Modifica questi valori per posizionare il testo in cui si desidera sullo schermo.

5 Posizionare la seguente dichiarazione di metodo "Load" del form:

PngGenerator ();

Questo chiama il metodo "WritePng" elencati nel passaggio precedente al caricamento della pagina.

Consigli e avvertenze

  • Le classi .NET grafiche forniscono funzionalità aggiuntive che è possibile utilizzare per creare una grafica più complessa. Per esempio, cambiando la "Response.ContentType" a = "image / gif", è possibile creare un oggetto di testo GIF invece di un PNG. Microsoft fornisce aiuto gratuito sul suo sito web.