asp文件:代码。
数据文件:身体。修复,头部。修复
使用:
复制代码代码如下所示:
response.buffer =真
numcode

NumCode()函数
响应。过期= 1
response.addheader语用
response.addheader缓存控制
昏暗的znum,I,J
昏暗的ADOS,ados1
随机定时器
生成随机四位数字:
ZNum = cint (8999*Rnd+1000)
通过会话
会议(获得按键的ASCII码)= znum
for循环是将随机数放在下标3的数组中,以便于后面的数组转换。
(3),NStr暗zimg
现阶段= CSTR(znum)
对于我= 0比3
Zimg(我)= Cint(中(NStr,我+ 1))
下一个
昏暗的POS

定义两个数据流的二进制对象,图像数据处理:

集ADOS = server.createobject(ADODB。流)
ADOS。模式= 3
Ados。类型= 1
打开ADOS。
集ados1 = server.createobject(ADODB。流)
ados1模式= 3。
ados1类型= 1。
ados1。开放
负荷0 ~ 9的数字数据10x100,GBR排列数据,每个320字节,和10个数字3200byte
基准点,点一点×10号,三字节(二进制8, 16 00 ~ FF)
一排10点30字节+线端标记0000个字节32个字节,所以10x100宽度小于一个长的图像每320字节数×10
要宽,非直线结束标记0000,直接300字节
这些都是BMP 24Bit的数据细节
至于头部,它也非常简单,包括长度和宽度,图像开始标记等54字节,远不如JPG复杂。

ados.loadfromfile(server.mappath(身体修复))
ados1.write ados.read(1280)
第一循环,对应的四个数字是从10x100数字数组中随机数的生成顺序提取。
但数字垂直阵
对于我= 0比3
ADOS。位置=(9-zimg(I))* 320
ados1位置=我* 320。
ados1.write ados.read(320)
下一个
排空已经使用了ADOS数据,取代新形象的第一个54字节的头文件
ados.loadfromfile(server.mappath(头。修复))
POS = lenb(ados.read())
ADOS。位置= POS的指定销售地点,您可以添加54字节添加图形数据
其次是数字阵列变换,由转换为数字块的水平垂直块
方法是从320个字节写的ADO对象提取4次30字节,然后提取量的第二行图像数据。
30字节是因为BMP宽度大于0000行结束标记的长度。
对于i = 0到9步骤1
对于j = 0到3
ados1。位置=我* 32 + J×320
ADOS。位置= POS + 30 * j +我* 120
ados.write ados1.read(30)
下一个
下一个
ADOS位置= 0。
response.binarywrite发送图像数据直接客户
response.contenttype =图像/ BMP
Response.BinaryWrite Ados.read()
ADOS。关闭:设置ADOS =没有
ados1。关闭:设置ados1 =没有
端功能