Código frontal -end:
<body>
<Form Method = "Post" Action = "ProcessFileUp.ashx" enctype = "multipart/form-data" >>
<input type = "file" name = "fileUp" />
<input type = "enviar" valor = "cargar" />
</form>
</body>
dibujo básico:
ANÁLISIS DE CÓDIGO DE VENTACIÓN:
0. Establecer cita:
using System.Drawing;
1. Crear un lienzo
// Crear un lienzo
Usando (mapa de mapa de bits = nuevo mapa de bits (300,400))
2. Crea un cepillo
// Crear un pincel para el lienzo
Usando (gráficos g = gráficos.FromImage (MAP))
3. Borre el lienzo y complete el color especificado (equivalente al lienzo inicializado)
// Borrar el lienzo y completar el color especificado
G.Clear (color.white);
4. Hay muchos métodos en el lienzo (hay muchos métodos, como gráficos de dibujo, escritura, etc. Este ejemplo proporciona operaciones de escritura)
// 1. ¿Qué palabras escriben?
// 2. estilo de fuente
// 3. ¿Qué color llena la fuente?
// 4. Dónde escribir en el lienzo
G.DrawString ("Wryyyyyyyy!", New Font ("Black Body", 14.0f, FontStyle.regular), Brushes.orange, New Pointf (150, 200));
5. Guarde el lienzo en una imagen y especifique el tipo de imagen
// cambie el nombre del archivo
cadena filename = guía.newguid (). toString ();
// Guardar el lienzo en una imagen y especificar el tipo de imagen
map.save (context.request.mappath ("/imageUpload/" + filename + ". jpg"), system.drawing.imaging.imageformat.jpeg);
Context.response.write (<html> <body> <img src = '/imageUpload/" + nombre de archivo +" .jpg'/body> </html> ");););;
Resultados:
Código completo:
usando el sistema;
usando System.Collections.gneric;
usando System.Linq;
usando System.Web;
usando System.Drawing;
espacio de nombres
{{
/// <summary>
/// Makeimage Abstract
/// </summary>
MAKEIMAGE DE LA CLASE PÚBLICA: ihttphandler
{{
Public void ProcessRequest (contexto httpContextext)
{{
context.Response.ContentType = "text/html";
// crear una imagen para los usuarios y guardar
// crear un lienzo
Usando (mapa de mapa de bits = nuevo mapa de bits (300,400))
{{
// crear un cepillo para el lienzo
Usando (gráficos g = gráficos.FromImage (MAP))
{{
// borrar el lienzo y completar el color especificado
G.Clear (color.white);
// 1. Qué palabras escriben
// 2. estilo de fuente
// 3. ¿Qué color llena la fuente?
// 4. Dónde escribir en el lienzo
G.DrawString ("Wryyyyyyyy!", New Font ("Black Body", 14.0f, FontStyle.regular), Brushes.orange, New Pointf (150, 200));
// cambie el nombre del archivo
cadena filename = guía.newguid (). toString ();
// Guardar el lienzo en una imagen y especificar el tipo de imagen
map.save (context.request.mappath ("/imageUpload/" + filename + ". jpg"), system.drawing.imaging.imageformat.jpeg);
Context.response.write (<html> <body> <img src = '/imageUpload/" + nombre de archivo +" .jpg'/body> </html> ");););;
}
}
}
Público bool isreusable
{{
conseguir
{{
Falso retorno;
}
}
}
}
Agregar marca de agua a la imagen:
De hecho, la operación y el dibujo son casi los mismos, pero el dibujo se coloca en un lienzo, y la marca de agua es poner la imagen para la imagen, lo que significa que la imagen se usa como un lienzo aquí.
1. Obtenga la imagen, hay dos formas:
Obtenga de acuerdo con la transmisión del archivo de imagen:
Usar (imagen img = image.fromstream (file.inputstream)) // Obtener la imagen de acuerdo con los datos de transmisión del archivo de la imagen
Según el camino físico de la imagen:
Usar (imagen img = image.FromFile (context.request.mappath (fultir))) //
2. Cree un lienzo, pero dado que los lienzos se usan como una imagen, el tamaño del lienzo debe ser consistente con la imagen:
usando
3. Crea un cepillo para el lienzo:
Usar (Graphics G = Graphics.FromImage (MAP)) // Crear un pincel para el lienzo
4. Ahora acabo de crear un lienzo vacío. Este paso necesita “dibujar” la imagen en el lienzo:
g.drawimage (img, 0,0, img.width, img.head); // Use un cepillo para dibujar imágenes en el lienzo, dibuje la imagen completa en la esquina superior izquierda del lienzo al lienzo en el lienzo en el lienzo en el lienzo
5. Marca de agua, guardar fotos, mostrar la imagen:
g.drawimage (img, 0,0, img.width, img.head); // Use un cepillo para dibujar imágenes en el lienzo, dibuje la imagen completa en la esquina superior izquierda del lienzo al lienzo en el lienzo en el lienzo en el lienzo
G.DrawString ("Ko No Dio da!", Nueva fuente ("Body Black Body", 14.0f, FontStyle.regular), Brushes. Orange, New Pointf (MAP.Width-100, MAP.head-25)); / / / Agregar palabras en la imagen
string waterimageName = "water_" + guía.newguid (). toString ();
Map.save (context.request.mappath ("/imageUpload/" +waterageName +". Jpg"), system.drawing.imaging.imageformat.jpeg);
Context.response.write ("<html> <body> <img src = '/imageupload/" + waterimageName + ".jpg'/> </html>" "); // fulldir contiene la carpeta actual, por lo tanto, no es necesario para agregar antes