function TfrmLabelPages.PwdImg(img: Timage): string;
var
I,j,k: Integer;
vPoint: TPoint;
vLeft: Integer;
arrStr:array [..]of string ;
strResult: string;
begin
strResult := '';
arrStr[] := ''; arrStr[]:=''; arrStr[]:=''; arrStr[]:='';
arrStr[] := ''; arrStr[]:=''; arrStr[]:=''; arrStr[]:='';
arrStr[] := ''; arrStr[]:=''; arrStr[]:='A'; arrStr[]:='B';
arrStr[] := 'C'; arrStr[]:='D'; arrStr[]:='E'; arrStr[]:='F';
arrStr[] := 'G'; arrStr[]:='H'; arrStr[]:='I'; arrStr[]:='J';
arrStr[] := 'K'; arrStr[]:='L'; arrStr[]:='M'; arrStr[]:='N';
arrStr[] := 'O'; arrStr[]:='P'; arrStr[]:='Q'; arrStr[]:='R';
arrStr[] := 'S'; arrStr[]:='T'; arrStr[]:='U'; arrStr[]:='V';
arrStr[] := 'W'; arrStr[]:='X'; arrStr[]:='Y'; arrStr[]:='Z';
For j:= to do
begin
Randomize;
k := strtoint(Format('%.1d',[Random()]));
strResult := strResult + trim(arrStr[k])
end;
vLeft := ;
img.picture := nil;
for I := to Length(strResult) do
begin
with Img do
begin
Canvas.Font.Size := Random()+ ;
Canvas.Font.Color := RGB(Random() and $C0,
Random() and $C0, Random() and $C0);
if Random()= then
Canvas.Font.Style := [fsBold]
else Canvas.Font.Style := [];
begin
Canvas.Font.Name := Screen.Fonts[];
vPoint.X := Random()+ vLeft;
vPoint.Y := Random();
Canvas.TextOut(vPoint.X, vPoint.Y,strResult[I]);
vLeft := vPoint.X + Canvas.TextWidth(strResult[I]);
end;
end;
end;
end;

http://blog.csdn.net/yanjiaye520/article/details/7957397

Delphi 模拟网站验证码(酷,把随机文字写道图片上)的更多相关文章

  1. Delphi 获取网站验证码的图片

    uses ActiveX,ComObj; procedure TfrmMain.FormCreate(Sender: TObject); begin OleInitialize(nil); end; ...

  2. 一个textview实现文字在图片上面的效果

    类似于这样的,其实很简单,可是以前用的是imageview+textview.布局实现多写了好多代码.又不能在图片加文字,显得没技术含量. xml代码如下: <TextView android: ...

  3. HTML让文字在图片上显示的几种方法

    第一种方式是image 作为背景图片,即:background:url("......."); 第二种方式是将img块与文字块(文字块采用span标签显示)放在同一个div 中,然 ...

  4. 第三百四十三节,Python分布式爬虫打造搜索引擎Scrapy精讲—scrapy模拟登陆和知乎倒立文字验证码识别

    第三百四十三节,Python分布式爬虫打造搜索引擎Scrapy精讲—scrapy模拟登陆和知乎倒立文字验证码识别 第一步.首先下载,大神者也的倒立文字验证码识别程序 下载地址:https://gith ...

  5. Selenium&Pytesseract模拟登录+验证码识别

    验证码是爬虫需要解决的问题,因为很多网站的数据是需要登录成功后才可以获取的. 验证码识别,即图片识别,很多人都有误区,觉得这是爬虫方面的知识,其实是不对的. 验证码识别涉及到的知识:人工智能,模式识别 ...

  6. Selenium&Pytesseract模拟登录+验证码识别

    验证码是爬虫需要解决的问题,因为很多网站的数据是需要登录成功后才可以获取的. 验证码识别,即图片识别,很多人都有误区,觉得这是爬虫方面的知识,其实是不对的. 验证码识别涉及到的知识:人工智能,模式识别 ...

  7. cookielib和urllib2模块相结合模拟网站登录

    1.cookielib模块 cookielib模块的主要作用是提供可存储cookie的对象,以便于与urllib2模块配合使用来访问Internet资源.例如可以利用 本模块的CookieJar类的对 ...

  8. 从session实现机制分析模拟请求验证码的可行性(转)

    悲剧了,发现写完这篇blog没有配上这个格调超高的标题.   1.0问题背景 现在要实现一个带验证码网站的的自动登陆功能.验证码识别过程不再这篇文章的讨论之中.(之后有篇文章我会详细的总结验证码的识别 ...

  9. jQuery数字滚动(模拟网站人气、访问量递增)原创

    插件描述:实现数字上下滚动,模拟网站人气.访问量递增的动画效果,兼容性如下: 使用方法 $(el).runNum(val,params);   参数详解 val:数值型(默认70225800): pa ...

随机推荐

  1. Xcode4.5 本地化,多语言设置

    网上已有很多关于ios本地化的博客和资料,由于部分原作者使用的Xcode版本较早,4.5以后的版本已不再支持该方法,后来也没有更新,因此在此写一点学习资料分享出来.废话不多说.     ios本地化主 ...

  2. poi操作officePOI操作excel中的数据格式(日期类型)

    7.3.3 POI中Excel文件Cell的类型 在读取每一个Cell的值的时候,通过getCellType方法获得当前Cell的类型,在Excel中Cell有6种类型,如表7-3所示. 表7-3 C ...

  3. 模式匹配KMP

    字符串朴素模式匹配算法的2种实现: //1.朴素的模式匹配算法,用while实现 int StrStr_While(const char* pStr, const char* pSub, int* p ...

  4. ListView中加入Button后,Button的点击事件和ListView的点击事件冲突

    1.在ItemView配置的xml文件里的根节点加入属性android:descendantFocusability="blocksDescendants" 2.在要加入事件的控件 ...

  5. 前端上传组件 - Plupload

    http://www.cnblogs.com/KTblog/p/4740852.html 效果: 起始界面. ------------- 可以上上传单个文件. ------------- 可以上传多个 ...

  6. 闲扯 Javascript 01 实现选项卡

    javascript 实现选项卡 今天下午的两节课,在机房闲来没事 ,就学习了javascript 怎么获取HTML的标签,改变CSS样式,资料来源 智能社! <script> windo ...

  7. selenium中用js定位html上没有id,没有name的元素

    所测试的页面包含display:none的元素,所以考虑用js,在使用js的过程中,js要获得页面的对象,没有id,没有name ...... <a class="employer&q ...

  8. java--线程状态

    1.新建状态 Thread t1 = new Thread(); 创建之后,就已经有了相应的内存和其他资源,但是还是处于不可运行状态. 2.就绪状态 当一个线程使用.start()启动之后就处于就绪状 ...

  9. 从 Qt 的 delete 说开来

    原地址:http://blog.csdn.net/dbzhang800/article/details/6300025 在C++中学习过程中,我们都知道: delete 和 new 必须 配对使用(一 ...

  10. ajax异步请求实例

    1. 问题分析 用户管理显示页面:usermanagement.tpl(也可以说是MVC中的V,即视图) 用户管理数据发送页面:usermanagement.php(也可以说是MVC中的M,即模型) ...