<%@ Page Language="vb" %> <% Dim sMessage As String Response.Clear() Try Dim _Direction As String 'Horizontal or Vertical Dim _Length As Long Dim _StartColor As String Dim _EndColor As String Dim _Format As String sMessage = "retrieving parameters" _Direction = Request.QueryString.Item("Direction") _Length = Request.QueryString.Item("Length") _StartColor = Request.QueryString.Item("StartColor") '"#FF0000" _EndColor = Request.QueryString.Item("EndColor") '"#000000" _Format = Request.QueryString.Item("Format") '"JPEG" Dim lWidth As Integer Dim lHeight As Integer Dim m_Color1 As System.Drawing.Color Dim m_Color2 As System.Drawing.Color Dim myFormat As System.Drawing.Imaging.ImageFormat Dim myGradientMode As System.Drawing.Drawing2D.LinearGradientMode sMessage = "processing parameters" 'Now use the parameters If _Direction.ToUpper.StartsWith("H") Then lWidth = 1 lHeight = _Length myGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical Else lWidth = _Length lHeight = 1 myGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Horizontal End If Dim pngjpegorGif As String If _Format.ToUpper.StartsWith("J") Then myFormat = System.Drawing.Imaging.ImageFormat.Jpeg pngjpegorGif = "JPEG" ElseIf _Format.ToUpper.StartsWith("G") Then myFormat = System.Drawing.Imaging.ImageFormat.Gif pngjpegorGif = "GIF" Else myFormat = System.Drawing.Imaging.ImageFormat.Png pngjpegorGif = "PNG" End If sMessage = "determining colors" m_Color1 = System.Drawing.Color.FromArgb(255, CLng("&H" & _StartColor.Substring(0, 2)), CLng("&H" & _StartColor.Substring(2, 2)), CLng("&H" & _StartColor.Substring(4, 2))) m_Color2 = System.Drawing.Color.FromArgb(255, CLng("&H" & _EndColor.Substring(0, 2)), CLng("&H" & _EndColor.Substring(2, 2)), CLng("&H" & _EndColor.Substring(4, 2))) sMessage = "determining size" Dim bmpGradient As New System.Drawing.Bitmap(lWidth, lHeight) 'System.Drawing.Imaging.PixelFormat.DontCare) Dim m_BrushSize As New System.Drawing.Rectangle(0, 0, lWidth, lHeight) ' Get a Graphics object from the Bitmap for drawing. Dim grBitmap As System.Drawing.Graphics = System.Drawing.Graphics.FromImage(bmpGradient) sMessage = "creating gradient brush" Dim myLinearGradientBrush As New System.Drawing.Drawing2D.LinearGradientBrush( _ m_BrushSize, m_Color1, m_Color2, _ myGradientMode) sMessage = "filling rectangle" grBitmap.FillRectangle(myLinearGradientBrush, 0, 0, _ lWidth, lHeight) sMessage = "saving image to response stream" Dim MemStream As New System.IO.MemoryStream() bmpGradient.Save(MemStream, myFormat) ', New System.Drawing.Imaging.EncoderParameter(()) Response.ContentType = "image/" + pngjpegorGif MemStream.WriteTo(Response.OutputStream) Catch Ex as System.Exception Dim bmpGradient As New System.Drawing.Bitmap(600, 100) 'System.Drawing.Imaging.PixelFormat.DontCare) Dim m_BrushSize As New System.Drawing.Rectangle(0, 0, 600, 100) ' Get a Graphics object from the Bitmap for drawing. Dim grBitmap As System.Drawing.Graphics = System.Drawing.Graphics.FromImage(bmpGradient) Dim myLinearGradientBrush As New System.Drawing.Drawing2D.LinearGradientBrush( _ m_BrushSize, System.Drawing.Color.FromArgb(255, 255, 0, 0), System.Drawing.Color.FromArgb(255, 0, 0, 0), _ System.Drawing.Drawing2D.LinearGradientMode.Vertical) grBitmap.FillRectangle(myLinearGradientBrush, 0, 0, _ 600, 100) grBitmap.DrawString("Error while " & sMessage & " for '" & Request.UserHostAddress & "'." & vbCrLf & Ex.Message, New System.Drawing.Font("Arial", 12, System.Drawing.FontStyle.Regular), System.Drawing.Brushes.White, 10, 12) bmpGradient.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Png) End Try %>