PB11下的WebForm客户端打印输出的处理

 
    PB9后已经支持输出PDF类型的打印输出。但如果要通过PB11的WebForm模式在客户端输出PDF文档,必须安装SYBASE提出的虚拟打印驱动。以下是我的经验:
   1.下载安装Ghostscript
   Ghostscript是一个多功能的Postscript数据处理程序,能把Postscript转换成不同的格式,是一套基于AdobePostScript可移植文檔格式PDF页面描述语言等而编译成的免费软件
      安装GS时,使其在PB11下能工作,一要注意其版本。这点让我走了很多弯路,因为在网上查找时,我找到的是GS6.05,结果一直调试不通,要么生成不了PDF文件,要么生成的文件使用Adobe打不开,请求sybase的newsgroups也搞不清什么原因,后来我下载了一个gs7.06后,一切问题就解决了。  
                                 点这里下载gs706w32.exe   然后直接安装即可。  
      另外需要注意的安装位置,因为按SYBASE的提示装在PB软件安装目录下的Shared/PowerBuilder/gs下,最后的目录结构应该是:
 
     2. 添加虚拟打印机
      在 Shared/PowerBuilder/drivers 下建立一个批处理文件,内容是(注意是在一行内):
          rundll32.exe   printui.dll, PrintUIEntry /if /f .//ADIST5.INF /r "LPT1:" /b "Acrobat Distiller" /m "Acrobat Distiller"
        然后执行它创建一个虚拟打印机,然后将打印机的名字修改为“Sybase DataWindow PS”
 
     3. 修改打印机的用户操作权限
          操作方法见下图:
    如果没有ASPNET用户,必须先添加。(注意我的是在XP下的操作)
       最后将打印机设置为默认打印机。
 
    4. 最后就可输出dw的内容了
     示例代码如下:
 
     //dw_report的“Data Export”下的“format to configure”修改为PDF
         //Saving   as   PDF   select   the   distill   method  
         dw_report.Object.DataWindow.Export.PDF.Method   =   Distill!     
        
         //select   printer  
         dw_report.Object.DataWindow.Printer   =   "Sybase DataWindow PS"  
         dw_report.Object.DataWindow.Export.PDF.Distill.CustomPostScript="Yes"      
   
          //printing   pdf   files     
          dw_report.SaveAs ( "zzz.pdf",PDF!,false)  
       
          #if defined PBWEBFORM then
               DownloadFile("zzz.pdf", true) // true=打开, false=下载
          #end if
 
          dw_report.print()   //如果要显示内定的打印任务窗口
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值