Añadir marca de agua a una imagen con asp.net (VB)

Esta funcionalidad ya la implementamos hace algunas semanas y la verdad que nos funciona de maravilla. A continuación te indicamos el sencillo código con el que podrás subir una imagen y añadirle una marca de agua a cualquier imagen mediante asp.net

Dim UploadFichero As HttpPostedFile = UploadFicheroColeccion(0)
UploadFichero.SaveAs(HttpContext.Current.Server.MapPath("files\") & Path.GetFileName(UploadFichero.FileName))
UploadFicheroColeccion = Nothing
strNombreFile = Path.GetFileName(UploadFichero.FileName)
UploadFichero.InputStream.Dispose()
UploadFichero.InputStream.Close()
UploadFichero = Nothing

' OBTENER RUTA Y NOMBRE DEL ARCHIVO
RutaFichero = HttpContext.Current.Server.MapPath("files") & "\" & strNombreFile
 Dim Width, Height As Integer
 Dim Img As System.Drawing.Image
 Dim baseMap As Bitmap
 Dim letterBrush As SolidBrush = New SolidBrush(Color.FromArgb(50, 255, 255, 255))
 Dim shadowBrush As SolidBrush = New SolidBrush(Color.FromArgb(50, 0, 0, 0))
 Dim fontTitle As Font = New Font("verdana", 18, FontStyle.Bold)
 Dim txtMarcaAgua As String = incFuncionesObject.fObtenerValorConfiguracion(2190)
 Img = System.Drawing.Image.FromFile(RutaFichero)
 Width = Img.Width
 Height = Img.Height
 baseMap = New Bitmap(Width, Height)
 Dim myGraphic As Graphics = Graphics.FromImage(baseMap)
 With myGraphic
 .InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic
 .DrawImage(Img, 0, 0, Width, Height)
 .SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias
 .DrawString(txtMarcaAgua, fontTitle, shadowBrush, Width / 4, Height - 29)
 .DrawString(txtMarcaAgua, fontTitle, letterBrush, (Width / 4) + 2, Height - 31)
End With
 Img.Dispose()
 '' Grabar la imagen físicamente
 baseMap.Save(RutaFichero)
 baseMap.Dispose()
 Img = Nothing

y con esto ya tienes lista esta útil funcionalidad que más de un cliente ya nos ha solicitado.

Deja una respuesta