aspjpeg es un componente de procesamiento de imágenes muy poderoso, versión puramente en inglés. Sin embargo, ya existen versiones gratuitas y versiones crackeadas, pero no hay muchos artículos que las presenten en detalle y en profundidad. Incluso si las hay, solo involucran miniaturas de imágenes y marcas de agua. Quizás sea porque está en inglés puro.
Usando aspjepg puedes hacer principalmente:
Miniatura de imagen
Marca de agua de imagen
tecnología de código de seguridad
corte de imagen
fusión de imágenes
Soporte de base de datos
1. Miniaturas de imágenes.
Mira las imágenes procesadas.
2. Marca de agua de imagen.
.
3. Código de seguridad
.
El principio de Ping An Ma es similar a añadir una marca de agua.
.
Imagen del código de seguridad generado.
4. Recorte de imágenes
.
Durante mucho tiempo, las personas que no conocen aspjpeg pensaron que no podían usarlo para cortar.
De hecho, existe tal método.
cultivo x1,y1,x2,y2
Corta la coordenada x de la esquina superior izquierda del rectángulo y la coordenada y de la esquina inferior derecha del rectángulo.
Haré una demostración a continuación.
EstablecerJpeg =
Servidor.CreateObject(Persits.Jpeg)
jpeg.open server.MapPath(/pic/1.gif)
jpeg.ancho=70
Jpeg.Altura = Jpeg.OriginalHeight*70 / jpeg.Originawidth
jpeg.crop 0,0,70,52 Empezar a cortar es en realidad eliminar la parte inferior que supera los 52 píxeles.
jpeg.guardar
servidor.MapPath(/temp_pic/small_1.gif) Guardar
5. Fusión de imágenes
.
Aquí vamos a agregar la imagen del logotipo a la imagen dodge_viper.jpg
Establecer foto =
Servidor.CreateObject(Persits.Jpeg)
PhotoPath = Server.MapPath(imágenes)
& /dodge_viper.jpg
Foto.Abrir PhotoPath
Establecer logotipo =
Servidor.CreateObject(Persits.Jpeg)
LogoPath = Server.MapPath(imágenes)
& /reloj.jpg
Logo.Abrir LogoPath.
Logotipo.Ancho = 70
Logo.Alto = Logo.Ancho * Logo.AltoOriginal / Logo.AnchoOriginal
.
Foto.DrawImage 0, 0, Logotipo.
Foto.EnviarBinario
Aquí se utiliza el método de salida de sendBinary. Por supuesto, también puedes guardar el dodge_viper.jpg modificado primero y luego ingresarlo. Personalmente, no me gusta usar el método sendBinary porque es propenso a errores cuando la velocidad de la red es lenta. Tampoco mucho en términos de velocidad.
6. Soporte de base de datos
.
No hay mucho que decir aquí. De hecho, es el método binario. Como todos sabemos, las imágenes solo se pueden almacenar como archivos binarios cuando se almacenan en la base de datos. Entonces el código se escribió de manera perezosa. .
7. Introducción a más métodos.
.
Canvas.Line(Izquierda, Superior, Derecha, Inferior)
dibujar una línea recta
Canvas.Ellipse(Izquierda, Arriba, Derecha, Abajo)
dibujar una elipse
Lienzo.Círculo(X, Y,
Radio)
dibujar un circulo
Canvas.Bar(Izquierda, Superior, Derecha, Inferior)
Dibuja un rectángulo con el código introducido.
Lienzo.Fuente.ShadowColor
color de sombra de texto
Canvas.Font.ShadowXOffset mientras sea largo
Configuración de coordenadas de sombra X
Canvas.Font.ShadowYOffset mientras sea largo
Configuración de coordenadas Y
Canvas.Font.BkMode como cadena
fondo del texto.
'//------Pollener.com Vista previa del componente AspJpeg y generación de marcas de agua------Inicio------
'Crear imagen de vista previa: llamar
CreateView (ruta al archivo original, nombre del archivo de vista previa y ruta)
Sub
CreateView (nombre de imagen, nombre de archivo temporal)
'Definir variables.
Oscuro
Vista previaImagenNombre de la carpeta
Dim ogvbox, objFont
Logobox tenue, LogoPath
LogoRuta
= Server.MapPath(imágenes) & /shuiyin.gif
'//Agrega la ruta y el nombre del archivo de la imagen (el mío es forum/images/shuiyin.gif).
Seleccionar caso
subir_ViewType
Caso
0
'---------------------Crear imagen de vista previa---------------
setogvbox=
Servidor.CreateObject(CreatePreviewImage.cGvbox)
ogvbox.SetSavePreviewImagePath=Server.MapPath(tempFilename)
'Vista previa de la ruta de almacenamiento de imágenes.
ogvbox.SetPreviewImageSize =EstablecerPreviewImageTamaño
'Ancho de vista previa.
ogvbox.SetImageFile = trim(Server.MapPath(nombre de imagen))
'La ruta física del archivo original de imagename.
'Crear un archivo de imagen de vista previa.
Si
ogvbox.DoImageProcess=false Entonces
Response.write genera un error de imagen de vista previa:&
ogvbox.GetErrString
Terminar si
Caso
1
'---------------------AspJpegV1.2--------------
Establecer cuadro de logotipo =
Servidor.CreateObject(Persits.Jpeg)
'//Se recomienda no utilizar marcas de agua de imagen y texto al mismo tiempo. Este código utiliza marcas de agua de imagen.
Logobox.Abierto
LogoPath '//Lee la imagen agregada.
'//Restablecer el tamaño de la imagen.
Logobox.Ancho = 186
'//Valor de ancho (píxeles) de la imagen utilizada como marca de agua.
Logobox.Altura = 52
'//Valor de altura (píxeles) de la imagen utilizada como marca de agua.
'//Agregar marca de agua.
Establecer ogvbox =
Servidor.CreateObject(Persits.Jpeg)
'//Leer el archivo original a procesar.
ogvbox.Abrir
Recortar(Server.MapPath(nombre de imagen))
Si ogvbox.OriginalWidth y FileExtgif Then '//Si cambia esta línea a IF
Modo de imagen
Luego, también puedes agregar marcas de agua a las imágenes GIF cargadas, pero esos GIF animados solo tendrán el primer fotograma después de agregar la marca de agua. Puedes manejarlo según tus necesidades.
'//Acerca de cambiar la fuente y el color del texto.
'//ogvbox.Canvas.Font.Color
= &H0000FF '//El color del texto de la marca de agua, ingrese el valor del color después de &H.
'//ogvbox.Canvas.Font.Tamaño =
18 '//El tamaño del texto de la marca de agua.
'//ogvbox.Canvas.Font.Family = Arial
'//El nombre de fuente del texto de la marca de agua.
'//ogvbox.Canvas.Font.ShadowColor = &H000000
'//El color de sombra del texto de la marca de agua.
'//ogvbox.Canvas.Font.ShadowXoffset = 1
'//El valor de píxel de la sombra del texto de la marca de agua se desplazó hacia la derecha. Ingrese un valor negativo para desplazarse hacia la izquierda.
'//ogvbox.Canvas.Font.ShadowYoffset = 1
'//El valor de píxel por el cual la sombra del texto de la marca de agua se desplaza hacia abajo. Si ingresa un valor negativo, se desplazará hacia la derecha.
'//ogvbox.Canvas.Font.Quality = 3
'// La claridad del texto de la marca de agua varía de 0 a 4. El cambio no es muy grande. Se recomienda utilizar 2 o 3.
'//ogvbox.Canvas.Font.Bold = Verdadero
'//Si el texto de la marca de agua está en negrita, True=negrita False=normal.
'ogvbox.Canvas.Imprimir 10, 10,
ImageMode '//Coordenadas iniciales (píxeles) del texto de la marca de agua.
ogvbox.Canvas.Pen.Color =
&H000000 '//El color del borde de la imagen después de agregar la marca de agua.
ogvbox.Canvas.Pen.Width = 1
'//Aumenta el ancho del borde de la imagen después de la marca de agua.
ogvbox.Canvas.Brush.Solid = Falso
'//Si el borde está lleno de color, puedes probarlo para ver el efecto cuando el valor es Verdadero^o^
ogvbox.DrawImage ogvbox.width-186,
ogvbox.height-52, Logobox, 0.5 '// Las coordenadas iniciales de la imagen de la marca de agua, aquí está ogvbox.width-186,
ogvbox.height-52 significa que la imagen está en la esquina inferior derecha. Debido a que el ancho de mi imagen es 186 y la altura es 52, si lo escribe así, puede ajustarlo de acuerdo con su propia imagen. 0,5 significa transparencia, aquí me refiero a translucidez, 1 significa opacidad, también puedes probar con 0,7 o 0,8 para ver el efecto.
ogvbox.Canvas.Bar
0, 0, ogvbox.Ancho, ogvbox.Alto
'//Rango disponible de marca de agua. Lo que quiero decir aquí es que la marca de agua se puede agregar en cualquier lugar desde la esquina superior izquierda hasta la esquina inferior derecha de toda la imagen.
ogvbox.Guardar
Server.MapPath(imagename) '//Genere el archivo de imagen con la marca de agua agregada según los parámetros anteriores.
Fin
Si
ogvbox.Width = Ancho de imagen
ogvbox.altura =
Altura de la imagen
'ogvbox.altura =
ogvbox.Originalheight*ImageWidth/ogvbox.OriginalWidth
ogvbox.Afilar 1, 120
ogvbox.Guardar
Server.MapPath(tempFilename) '// Genera una imagen de vista previa de la imagen después de agregar la marca de agua.
Fin
Si
Establecer Logobox=Nada
'//------Pollener.com
Vista previa y generación de marca de agua del componente AspJpeg ------Fin-----