| 首页 | IT动态 | 硬件 | 应用 | 互联网 | 网络 | 网站 | 黑客 | 编程 | 数码 | 视频教程 | 游戏 | 休闲 | 软件 | 视频 | IT认证 | 动漫图片 | IT杂谈 | 论坛 | 
Google
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
  • DIV与Table布局在大型网站的…

  • 认清CSS的类class和标识id选…

  • DW MX实例:验证用户注册

  • DW MX实例:Flash个性播放界…

  • DW MX实例:添加透明背景的F…

  • DW MX实例:插入Flash按钮与…

  • DW MX实例:图片应用技巧

  • Dreamweaver经典问题大搜罗(…

  • Dreamweaver3 图层应用技巧(…

  • Dreamweaver3 图层应用技巧(…

  • 广 告 位 置
    黄金广告位
    Q
    您现在的位置: 无忧IT人 >> 网站 >> 网页设计 >> DREAMWEAVER >> 文章正文
    用ASP生成XBM数字图片(可用来生成验证码)         
    用ASP生成XBM数字图片(可用来生成验证码)
    作者:网络 文章来源:转载 点击数: 更新时间:2007-8-11
    [ 字体:缩小 正常 放大 | 双击自动滚屏 ]
    请选择合适的字体颜色:

    本文为中国教程网合作伙伴印象特别供稿,转载必须取得授权

     [b][color=Red][center]示例图片:[img]http://www.china-oil.com/test/count.asp[/img][/center][/color][/b]
    XBM图片是一个纯文本的文件,可以用ASP来自动生成。可以用它来使用网站登陆的验证码;
    我们用记事本打开该文件进行分析:
    其文件结构为:
    [color=Blue]#define counter_width 48
    #define counter_height 9
    static unsigned char counter_bits[]={7c,3c,7c,3c,70,3c,fe,7c,fe,7c,78,7c,ee,ee,ee,ee,7c,ee,e0,ee,60,ee,74,ee,70,fe,30,fe,70,fe,38,ec,e0,ec,70,ec,1c,e0,ee,e0,70,e0,fe,7e,fe,7e,70,7e,fe,3c,7c,3c,70,3c}[/color]

    文件扩展名为:.xbm

    [color=Blue]#define counter_width 48 [color=Red]''这儿定义的是图片的宽度,一般为8的倍数[/color]
    #define counter_height 9 [color=Red]''这儿定义的是图片的高度,是任意的。[/color]
    static unsigned char counter_bits[]={7c,3c,7c,3c,70,3c,fe,7c,fe,7c,78,7c,ee,ee,ee,ee,7c,ee,e0,ee,60,ee,74,ee,70,fe,30,fe,70,fe,38,ec,e0,ec,70,ec,1c,e0,ee,e0,70,e0,fe,7e,fe,7e,70,7e,fe,3c,7c,3c,70,3c} [color=Red]''这儿是图片用来显示内容的十六进制的代码[/color][/color]

    正如static unsigned char英文意思为静态的,无符号的,烧焦的。它只能用来显示黑白两种颜色。二进制中的1将来用显示为黑色,0为白色。

    下面为0~9数字的二进制数组(其中的图片样式仅试用于本例。如果需要别的0~9数字样式,请另自行生成)

    [color=Blue]''此处声明0~9绘图用数组[/color]
    [color=Red]
    dim num(9,8)
    ''数字0
    num(0,0)="0x38"
    num(0,1)="0x7c"
    num(0,2)="0xee"
    num(0,3)="0xee"
    num(0,4)="0xee"
    num(0,5)="0xee"
    num(0,6)="0xee"
    num(0,7)="0x7c"
    num(0,8)="0x38"
    ''数字1
    num(1,0)="0x70"
    num(1,1)="0x78"
    num(1,2)="0x7c"
    num(1,3)="0x74"
    num(1,4)="0x70"
    num(1,5)="0x70"
    num(1,6)="0x70"
    num(1,7)="0x70"
    num(1,8)="0x70"
    ''数字2
    num(2,0)="0x7c"
    num(2,1)="0xfe"
    num(2,2)="0xee"
    num(2,3)="0xe0"
    num(2,4)="0x70"
    num(2,5)="0x38"
    num(2,6)="0x1c"
    num(2,7)="0xfe"
    num(2,8)="0xfe"
    ''数字3
    num(3,0)="0x7c"
    num(3,1)="0xfe"
    num(3,2)="0xee"
    num(3,3)="0x60"
    num(3,4)="0x30"
    num(3,5)="0xe0"
    num(3,6)="0xee"
    num(3,7)="0xfe"
    num(3,8)="0x7c"
    ''数字4
    num(4,0)="0x70"
    num(4,1)="0x78"
    num(4,2)="0x7c"
    num(4,3)="0x76"
    num(4,4)="0x77"
    num(4,5)="0xff"
    num(4,6)="0xff"
    num(4,7)="0x70"
    num(4,8)="0x70"
    ''数字5
    num(5,0)="0xfc"
    num(5,1)="0xfc"
    num(5,2)="0x0c"
    num(5,3)="0x7e"
    num(5,4)="0xfe"
    num(5,5)="0xe0"
    num(5,6)="0xee"
    num(5,7)="0xfe"
    num(5,8)="0x7c"
    ''数字6
    num(6,0)="0x78"
    num(6,1)="0xfc"
    num(6,2)="0x0e"
    num(6,3)="0x6e"
    num(6,4)="0xfe"
    num(6,5)="0xee"
    num(6,6)="0xee"
    num(6,7)="0xfc"
    num(6,8)="0x78"
    ''数字7
    num(7,0)="0xfe"
    num(7,1)="0xfe"
    num(7,2)="0x60"
    num(7,3)="0x70"
    num(7,4)="0x38"
    num(7,5)="0x38"
    num(7,6)="0x18"
    num(7,7)="0x1c"
    num(7,8)="0x1c"
    ''数字8
    num(8,0)="0x7c"
    num(8,1)="0xfe"
    num(8,2)="0xee"
    num(8,3)="0x7c"
    num(8,4)="0x7c"
    num(8,5)="0xee"
    num(8,6)="0xee"
    num(8,7)="0xfe "
    num(8,8)="0x7c"
    ''数字9
    num(9,0)="0x3c"
    num(9,1)="0x7c"
    num(9,2)="0xee"
    num(9,3)="0xee"
    num(9,4)="0xfe"
    num(9,5)="0xec"
    num(9,6)="0xe0"
    num(9,7)="0x7e"
    num(9,8)="0x3c"[/color]

    [1] [2] 下一页  

    文章录入:51iter    责任编辑:51iter 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    | 设为首页 | 加入收藏 | 联系站长 | 关于我们 | 友情链接 | 版权申明 |