超星名目转换BMP的要领
当前位置:以往代写 > C/C++ 教程 >超星名目转换BMP的要领
2019-06-13

超星名目转换BMP的要领

超星名目转换BMP的要领

flywolf(mailto:[email protected])

最近,我偶尔发明白一个超星 -> BMP的要领。

首先,请下载最新的“超星3.4Beta 7”,安装后,运行Delphi5,选择Component->Import ActiveX Control,然后,你会发明“Import ActiveX”中有一个选择为“Pdg2 Type Library(Version 1.0)”…..,剩下的事不消我说了吧。

我的要领:

procedure TMainForm.PdgToBmp(FPdgName, FBmpName: string);//FPdgname--超星名目文件名 FBmpName--要生存的BMP文件名。
var i:integer;
   j:boolean;
begin
   ClipBoard.Clear;
   MyPdg.LoadPage(FPdgName,0,0,10);
   Mypdg.Refresh;
   MyPdg.CopyToClipBoard (0,0,MyPdg.PageWidth ,MyPdg.PageHeight); //这一操纵需要一段时间
   j:=false;
   while j=false do
   begin
     MyPdg.CopyToClipBoard (0,0,MyPdg.PageWidth ,MyPdg.PageHeight);
     for i:=0 to clipboard.FormatCount -1 do //检测ClipBoard中是否有位图,因为我在调试中发明有时执行MyPdg.CopyToClipBoard (0,0,MyPdg.PageWidth ,MyPdg.PageHeight);会堕落,只有检测到有位图存在时,再举办复制.
     if Clipboard.Formats[i]=2 then j:=true;
   end;
   Bmp.LoadFromClipBoardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0);
   bmp.PixelFormat:=pf1bit ; 
   bmp.SaveToFile(FBmpName);
end;

别的,假如对整个目次下的文件持续举办转换,请在相邻两次转换进程中插入

Sleep(1000);//给超星一点时间,不然她会有意见,不干活啦!!!

且 Mypdg.Visible必需配置True;

我发明转为BMP后用清华OCR识此外结果并欠好,假如列位有什么卓识,拿出来大伙公分享吧!

    关键字:

在线提交作业