操作系统  办公  实用知识  设计  开发  WEB开发  移动开发  数据库  软件工程  网管  安全  管理  信息化  答疑  渠道 

超星格式->BMP

2003-10-19 网友评论 0 条 点击进入论坛

最近,我偶然发现了一个超星 -> 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; 

已有 0 位对此文章感兴趣的网友发布了看法    
我来评两句 用户名: 密码:
  匿名发表
今日推荐
技术文库(共有 45972 篇文章)
操作系统
办公软件
实用知识
网络管理
软件开发
WEB开发
软件工程
数据库
设计在线
信息安全
行业信息化
管理信息化
移动开发
重点推荐
电子杂志订阅
点击电子杂志名称查看样刊
输入E-mail地址即可订阅
E-mail