几百烟钱请朋友们做一个简单图像识别的小程序解决方案

几百烟钱请朋友们做一个简单图像识别的小程序
纯数字的图像,没太多干扰,,几百元的烟钱当交个朋友
有时间的朋友请加QQ:154868407

------解决方案--------------------
unit Unit1; 
 
interface 
 
uses 
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
Dialogs, StdCtrls, ExtCtrls, ComCtrls; 
 
const 
HZAll=0; //所有汉字 
HZAll_Digit=1; //所有汉字,数字优先 
HZAll_Character=2; //所有汉字,英文字母优先 
HZAll_Digit_Character=3; //所有汉字,数字、英文字母优先 
HZDigit=4; //仅数字 
HZCharacter=5; //仅字符 
HZDigit_Character=6; //仅数字和英文字母 
 
MaxSuspect=15; 
type 
TResult = record 
Chinese: array[0..3] of char; 
Precision: word; 
CountSuspect: word; 
ChineseSuspect: array[0..MaxSuspect*2+1] of char; 
PrecisionSuspect: array[0..MaxSuspect] of word; 
Rect: TRect; 
end; 
PResult=^TResult; 
TOCRResult=packed record 
Count:integer; 
Result:array[0..1]of TResult; 
end; 
POCRResult=^TOCRResult; 
TForm1 = class(TForm) 
PageControl1: TPageControl; 
TabSheet1: TTabSheet; 
Image1: TImage; 
Panel1: TPanel; 
Button1: TButton; 
TabSheet2: TTabSheet; 
Memo1: TMemo; 
Button2: TButton; 
procedure Button1Click(Sender: TObject); 
procedure FormCreate(Sender: TObject); 
procedure Button2Click(Sender: TObject); 
private 
{ Private declarations } 
public 
{ Public declarations } 
end; 
 
function ZWOcrInit:bool;stdcall;external 'ZWOCRdll.dll'; 
function ZWOcrStart(Hbitmap:HBitmap;rRect:PRect;bAssociate:BOOL;iHZtype:integer;var pOCRResult:pointer):BOOL;stdcall;external 'ZWOCRdll.dll'; 
procedure ZWOcrStop;stdcall;external 'ZWOCRdll.dll'; 
 
var 
Form1: TForm1; 
 
implementation 
 
{$R *.dfm} 
 
procedure TForm1.Button1Click(Sender: TObject); 
var 
p:POCRResult; 
i:integer; 
s:string; 
// r:trect; 
begin 
 { r.left:=156; 
r.Right:=507; 
r.Top:=40; 
r.Bottom:=100; } 
if ZWOcrStart(image1.Picture.Bitmap.Handle,nil,true,HZAll_Digit,pointer(p)) then 
begin 
memo1.Lines.Clear; 
for i:=0 to p^.Count-1 do 
with p.Result[i] do 
begin 
setlength(s,CountSuspect*2); 
move(ChineseSuspect[0],s[1],CountSuspect*2); 
memo1.Lines.Add(format('%-4s 相似度:%3d%% Left:%-4d Right:%-4d Top:%-4d Bottom:%-4d 候选字:%s',[string(Chinese),Precision, 
Rect.left,Rect.right,Rect.top,Rect.bottom, s])); 
end; 
end; 
end; 
 
procedure TForm1.FormCreate(Sender: TObject); 
begin 
image1.Picture.LoadFromFile(extractfilepath(paramstr(0))+'test.bmp'); 
if not ZWOcrInit then 
showmessage('初始化dll出错,请检查使用许可是否过期或与作者联系.'); 
end; 
 
procedure TForm1.Button2Click(Sender: TObject); 
var 
p:POCRResult; 
i:integer; 
s:string; 
r:trect; 
begin 
r.left:=156; 
r.Right:=507; 
r.Top:=40; 
r.Bottom:=100; 
if ZWOcrStart(image1.Picture.Bitmap.Handle,@r,true,HZAll_Digit,pointer(p)) then 
begin 
memo1.Lines.Clear; 
for i:=0 to p^.Count-1 do