微軟之OCR元件MODI使用上之問題? |
缺席
|
ry_lee
高階會員 發表:368 回覆:251 積分:123 註冊:2002-03-19 發送簡訊給我 |
以下是程式碼(WIN XP+delphi 7)
1.為何執行Button5Click第一次會跑出類別未登錄之錯誤訊息,第二次執行就可正確地執行呢? 2.如何寫程式碼在procedure OnOCRProgress,以獲取執行OCR時之進度 ? (有上網GOOGLE,但只看到VB之範例碼,無DELPHI之範例碼) unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Comobj,MODI_TLB, ExtCtrls, ComCtrls,ActiveX; type TForm1 = class(TForm) Memo1: TMemo; OpenDialog1: TOpenDialog; Image1: TImage; ProgressBar1: TProgressBar; Button4: TButton; Button5: TButton; procedure Button5Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} { _IDocumentEvents = dispinterface ['{0CF31963-5E4D-4772-AE8D-82FE5A082B26}'] procedure OnOCRProgress(Progress: SYSINT; var Cancel: WordBool); dispid 1;} procedure TForm1.Button5Click(Sender: TObject); Var doc :IDocument; Img :IImage; Layout :ILayout; //idoc:_IDocumentEvents; //f: textfile; begin if OpenDialog1.FileName = '' then begin ShowMessage('please select a tiff image file first!'); exit; end; doc := CreateOleObject('MODI.Document') as IDocument;//ok doc.create(OpenDialog1.FileName); doc.ocr(1028,true,true); Img := doc.Images[0] as IImage; Layout := Img.Layout as ILayout; memo1.Text:=layout.text; doc.Close(false); doc:=nil; Img := nil; Layout := nil; end; end. 編輯記錄
ry_lee 重新編輯於 2011-06-08 08:49:45, 註解 無‧
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |