Генерация кода проверки без компонентов - формат GIF
Кода -копия выглядит следующим образом:
<%
Опции Extexplicit 'Оператор отображения
Classcom_gifcode_class
'' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '
Автор: [email protected] (QQ)
«Спасибо: Лаоми, Лаомио, Netrube
2006-01-02
'' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '
Publicnoisy, count, width, высота, угол, смещение, граница
Privategraph (), маржа (3)
Privatesubclass_initialize ()
Рандомизировать
Шум = 16 'вероятность возникновения точки интерференции
Count = 4 'символы
Ширина = 80 'Ширина изображения
Высота = 20'picture Высота
Угол = 2 'Случайное изменение угла
Offset = 20 'смещение случайных изменений
Граница = 1'sorder размер
Заканчивая
PublicFunctionCreate ()
Constccharset = "123456789"
DiMi, x, y
Dimvvalidcode: vvalidcode = ""
Dimvindex
Redimgraph (ширина-1, высота-1)
Fori = 0tocount-1
vindex = int (rnd*len (ccharset))
validcode = vvalidcode+mid (ccharset, vindex+1,1)
Setdrawvindex, я
Следующий
Create = VvalidCode
Конечная функция
SubmetDot (PX, PY)
Ifpx*(width-px-1)> = 0Andpy*(height-py-1)> = 0then
График (px, py) = 1
Эндиф
Заканчивая
Publicsubsetdraw (pindex, pnumber)
'Данные символов
Dimdotdata (8)
Dotdata (0) = массив (30,15,50,1,50,100)
Dotdata (1) = массив (1,34,30,1,71,1,100,34,1,100,93,100,100,86)
Dotdata (2) = массив (1,1,100,1,42,42,100,70,50,100,1,70)
Dotdata (3) = массив (100,73,6,73,75,6,75,100)
Dotdata (4) = массив (100,1,1,1,1,1,50,50,35,100,55,100,80,50,100,1,95)
Dotdata (5) = массив (100,20,70,1,20,1,1,30,1,80,30,100,70,100,100,80,100,60,70,50,30,50,1,60)
Dotdata (6) = массив (6,26,6,6,100,6,53,100)
Dotdata (7) = массив (100,30,100,20,70,1,30,1,1,20,1,30,100,70,100,80,70,100,30,100,1,80,1,70,100,30)