Creare un’immagine “al volo”

Usare le classi del namespace System.Drawing per creare una immagine impostando il disegno direttamente dal codice.

<%@ Page Language=”VB” %>

<%@ Import Namespace=”System.IO” %>

<%@ Import Namespace=”System.Drawing” %>

<%@ Import Namespace=”System.Drawing.Imaging” %>

<%@ Import Namespace=”System.Drawing.Drawing2D” %>

<script runat=”server”>

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)

‘Inizializzo lo stream in memoria

Dim MemStream As New MemoryStream()

‘Creo una nuova bitmap

Dim bitmap As New System.Drawing.Bitmap(200, 50, PixelFormat.Format32bppArgb)

Dim graphic As Graphics = Graphics.FromImage(bitmap)

Dim penna As New Pen(Color.FromArgb(0, 74, 115), 15)

Dim pennello As SolidBrush = New SolidBrush(Color.FromArgb(0, 74, 115))

‘Pulisco l’immagine e aggiungo l’antialias (anche per il testo)

graphic.Clear(Color.FromArgb(167, 187, 215, 255))

graphic.SmoothingMode = SmoothingMode.AntiAlias

graphic.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias

‘Disegno l’immagine

‘graphic.DrawLine(penna, 7, 80, 110, 80)

graphic.DrawString(“freeASP.it”, New Font(“verdana”, 24, FontStyle.Bold), pennello, New PointF(2, 3))

graphic.DrawString(“Risorse per sviluppatori”, New Font(“verdana”, 8, FontStyle.Bold), pennello, New PointF(10, 35))

Response.ContentType = “image/png”

‘Salvo nello stream l’immagine e poi la invio in output

bitmap.Save(MemStream, ImageFormat.Png)

MemStream.WriteTo(Response.OutputStream)

bitmap.Dispose()

End Sub

</script>

I Video di HTML.it

Come comprimere un file in più parti con WinRar