1. Encolhimento da imagem
<%
Set jpeg = server.createObject (Persits.jpeg) Chamada componente
PATH = server.mappath (imagens) e /clock.jpg a serem processados para lidar com o caminho da imagem
JPEG.OPEN PATH Abra a imagem
Alta e largura são 1/2 da imagem original
Jpeg.width = jpeg.originalwidth / 2
Jpeg.Height = jpeg.originalHeight / 2
Salve a imagem
Jpeg.save server.mappath (imagens) & /clock_small.jpg
%>
<Img src = imagens/clock_small.jpg> Veja a imagem de processamento
Dois, marcas de água de imagem
<%
Set jpeg = server.createObject (Persits.jpeg)
Jpeg.open server.mappath (imagens/dodge_viper.jpg)
Comece a escrever
Jpeg.canvas.font.color = & hff0000 'cor vermelha
Jpeg.canvas.font.family = Courier New Font
Jpeg.canvas.font.bold = se true é ousado
Jpeg.canvas.print 10, 10, direitos autorais (c) xyz, inc.
Imprimir coordenadas x coordenadas de impressão Y precisa imprimir caracteres
A seguir, o processamento de quadros da imagem
Jpeg.canvas.pen.color = & h000000 'cor preta
Jpeg.canvas.pen.width = 2 largura de pincel
Jpeg.canvas.brush.solid = se false está em negrito
Jpeg.canvas.bar 1, 1, jpeg.width, jpeg.Height
Iniciar x coordenadas inicial y Coordenar o comprimento da entrada Altura de entrada
Jpeg.save server.mappath (imagens/dodge_viper_framed.jpg)
%>
Três, código de segurança
O princípio do código de segurança é quase o mesmo que a adição de marcas de água. hehe.
<%
A função de gerar um código de segurança
Função make_randomize (max_len, w_n) max_len gera comprimento, w_n: 0 pode incluir letras, 1: apenas numerais
randomizar
para intcounter = 1 para max_len
WhatNext = int ((1-0+1)*rnd+w_n)
Se o WhatNext = 0 então
superior = 122
Inferior = 97
outro
superior = 57
Inferior = 48
final se
StrNewPass = strNewPass & chr (incorrente-lower+1)*rnd)+inferior
próximo
Make_randomize = strNewPass
Função final
%>
Use imagens de um código de segurança. Claro que você tem que preparar um mapa de fundo com antecedência
<%random_num = make_randomize (4,1) para gerar um código de segurança de 4 dígitos
Sessão (random_num) = random_num Por que a sessão de chamadas, e o código de segurança sem sessão é completamente sem sentido. hehe
Set jpeg = server.createObject (Persits.jpeg) Chamada componente
Jpeg.open server.mappath (infos/random_pic/random_index.gif) Abra a imagem preparada
Jpeg.canvas.font.color = & h006699
Jpeg.canvas.font.family = Arial preto
Jpeg.canvas.font.bold = false
Jpeg.canvas.printText 0, -2, random_num
jpeg.save server.mappath (infos/random_pic/random_index.bmp)
%> <Img src = infos/random_pic/random_index.bmp borda = 0 align = absmiddle>
Olhe você mesmo. hehe.
Quarto, corte de imagens
As pessoas que nunca entenderam aspjpeg sempre pensaram que não poderiam ser cortadas com isso.
De fato, existe esse método
Crop x1, y1, x2, y2
Corte a coordenada X do canto superior esquerdo do tipo retangular e no canto inferior direito da coordenada y x
Deixe -me fazer uma demonstração abaixo
Set jpeg = server.createObject (Persits.jpeg)
jpeg.open server.mappath (/pic/1.gif)
jpeg.alt = 70
Jpeg.Height = jpeg.originalHeight*70 / jpeg.originawidth
Jpeg.crop 0,0,70,52 O corte inicial é na verdade removido a parte inferior de mais de 52 pixels
jpeg.save server.mappath (/temp_pic/small_1.gif) salvar
Que tal, é muito simples
Cinco, fusão de fotos
Devemos adicionar imagens de logotipo ao Dodge_viper.jpg Picture
De fato, o método de fusão de imagens também pode ser usado para marcas dinâmicas de água.
Set Photo = Server.CreateObject (Persits.jpeg)
Photopath = server.mappath (imagens) & /dodge_viper.jpg
Fotopen photopath
Definir logotipo = server.createObject (Persits.jpeg)
Logopath = server.mappath (imagens) & /clock.jpg
Logo.open logopaticamente
Logo.width = 70
Logo.head = logo.width * logo.originalHeight / logo.originalwidth
Foto.Drawimage 0, 0, logotipo
Photo.SendBinary Usa o método de saída do sendbinary. Obviamente, você também pode salvar a mudança do Dodge_viper.jpg primeiro e depois digitá -lo. Pessoalmente, não gosto de usar o método sendbinário, é fácil cometer erros quando a velocidade da rede é lenta. Não é bom em termos de velocidade. hehe.
6. Suporte ao banco de dados
Não há muito a dizer aqui. De fato, é o método binário. Portanto, o código é preguiçoso.
Sete, mais maneiras de introdução
Canvas.line (esquerda, superior, direita, inferior)))
Desenhe uma linha reta
Canvas.ellipse (esquerda, superior, direita, inferior)
Desenhe uma elipse
Canvas.circle (x, y, raio)
Desenhe um círculo
Canvas.bar (esquerda, superior, direita, inferior)
Desenhe um retângulo, que é introduzido nele
Canvas.font.shadowcolor
Cor da sombra do texto
Canvas.font.shadowxoffset tanto tempo
Configurações de coordenadas de sombra x
Canvas.font.shadowyoffset por tempo
Y Coordenar a configuração
Canvas.font.bkmode como string
Fundo de texto