`
mefly
  • 浏览: 150729 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

最近发现的不错的用IE直接打印的控件PAZU(包括使用方法和下载地址)

阅读更多
IE直接打印一直是小项目中的打印解决方案,可是对IE不能进行过多的控制,也有许多不便之处,我在做手头的项目中就遇到了问题,客户端打印一直用B5的纸打印,可是每次关闭IE后下次再启动,就又默认成了A4,还有页眉页脚的设置都有些另客户很麻烦,找来找去了,找了一个叫PAZU 的控件。现在好像是可以免费使用了.
1. 入门基础

jangogo @ 2009-6-22 11:06:00

 

PAZU 是一个ActiveX组件(NP版本是一个Plugin),本文档只讨论ActiveX版本(IE内核浏览器适用),NP版本的说明文档我们将另文发布。
PAZU 是一个已经通过微软代码认证签名的控件,用户可以在使用到这个控件的时候会自动提示安装,保证发布的便利性。
在你的WEB页里面使用<Object>标签可以引用PAZU控件,如下:
 
  1. <object  classid="clsid:AF33188F-6656-4549-99A6-E394F0CE4EA4"    
  2.          codebase=“http://www.4Fang.net/4ff/sc_setup.exe”   
  3.          id="pazu"    
  4.          name="pazu" >    
  5.     <param  name="License"  value="You Need a License from 4Fang"/>  
  6.  </object>  

      说明:<object> 元素是用于嵌入ActiveX的,Flash也是通过这种方式嵌入到页面里面的。
      Classid里面的字符串是指向PAZU的专属标识,是不能更改的。系统通过这个值检索并载入PAZU控件
      Codebase 是指向用户可以下载到PAZU安装包的网址,如果安装包在你自己的网站上,你可以更改这个codebase属性,使得用户可以顺利下载安装PAZU控件。如果这个网址设置错误,IE将不会提示用户下载安装。
      Id 属性允许你通过javascript或者vbscript使用getElementById方法,获得PAZU控件对象。
      Name属性和id属性类似
      按我们的免费授权约定,您不应该也不允许更改id 和 name 的值。
      Param 参数,必须有一个License 的属性,value 是这个参数属性的值。它的意义是4Fang的授权许可。
      您可以向4Fang申请一个免费的授权,详细的申请方法请看本文的许可授权章节,你要把你获得的授权码填入到Value值里面,PAZU才能正常工作。
注意:当你用http://127.0.0.1/ 开头去访问你的应用的时候,或者是双击的你网页文件直接打开网页的时候,不填入许可PAZU也可以正常运作。因此如果你要测试或者体验PAZU的功能而不打算使用PAZU发布你的应用,您就不必要向4Fang提成免费许可申请。
2. 属性和方法
PAZU内置两个对象:TWin 和 TPrinter
PAZU这个对象结构的属性和方法如下:
PAZU
     |--------- TWin 对象
     |                       |------------ appWin               
方法隐藏IE菜单、工具条、标题栏、状态栏等
     |                       |------------ MaxWin                
方法 窗口最大化
     |                       |------------ MinWin                 
方法   窗口最小化
     |                      └----------- CloseWin             
方法   关闭窗口
     |
     |--------- TPrinter
对象                       
     |                       |------------ marginTop                     
属性上边距
     |                       |------------ marginBottom              
属性下边距
     |                       |------------ marginLeft                    
属性 左边距
     |                       |------------ marginRight                 
属性 右边距
     |                       |------------ footer                             
属性页脚
     |                       |------------ header                           
属性 页眉
     |                       |------------ orientation                    
属性整型:纸张方向 1=纵向  2=横向
     |                       |------------ paperName                   
属性   纸张大小名称
     |                       |------------ printerName                  
属性   打印机名称
     |                       |------------ isPrintBackground        
属性 是否打印背景 true / false
     |                       |------------ isZoomOutToFit            
属性   是否缩放以适应大小打印 true / false
     |                       |------------ printTemplate                
属性   打印模板的URL
     |                       |------------ copies                            
属性   打印份数
     |                       |------------ range                              
属性   页面范围
     |                       |------------ isCopyByCopy               
属性    是否整份打印结束后再打印下一份 true / false
     |                       |------------ getDefaultPrinter            
方法    获得默认打印机的对象
     |                       |------------ printToDefaultPrinter     
方法    把要打印的字符串输送到默认打印机(配合getDefaultPrinter 使用)
     |                       |------------ getPaperForms              
方法    返回所有纸张格式的列表,以vbCrlf 分割
     |                       |------------ getPrinters                      
方法    返回一个打印机列表,以vbCrlf 分割
     |                       |------------ createPaper                    
方法    按指定的宽度和高度创建自定义纸张
     |                       |------------ doPrint                             
方法    执行打印
     |                       |------------ doPrint_                           
方法    执行打印但是不进行页面参数设置
     |                       |------------ doPreview                        
方法    打印预览
     |                       |------------ doPageSetup                  
方法    执行页面参数的设置
     |                       |------------ showPageSetup             
方法    弹出页面设置窗口
     |                      └----------- writeHTMLtoOfficeFile    
方法   HTML导出为Office EXCEL或者 Word格式文件
     |
     |--------- appWin        
方法     旧版本兼容  
     |--------- doPrint         
方法     旧版本兼容
     |--------- pageSetup   方法     旧版本兼容
     |--------- Fly                  方法     LAPUTAC平台专用
     |--------- Run              
方法      LAPUTAC平台专用
    └-------- AddObj         
方法      LAPUTAC平台专用
<!-- body -->
<!-- body -->
 3. TWin对象详解

jangogo @ 2009-6-22 11:12:00

 


                 TWin 对象         
                          |------------ appWin                方法 隐藏IE菜单、工具条、标题栏、状态栏等,有一个bool的参数: appWin(true)   appWin(false)  两个的区别在于是否隐藏标题栏
                          |------------ MaxWin                       方法  窗口最大化    MaxWin()
                          |------------ MinWin                       方法   窗口最小化    MinWin()
                         └----------- CloseWin            方法   关闭窗口        CloseWin()

   演示页面(新窗口打开)



代码:
 
  1. //1.把IE窗口变成App窗口,不隐藏标题栏   
  2. pazu.TWin.appWin(false);   
  3. //2.把IE窗口变成App窗口,隐藏标题栏   
  4. pazu.TWin.appWin(true);   
  5. //3.最大化    
  6. pazu.TWin.MaxWin();   
  7. //4.最小化    
  8. pazu.TWin.MinWin();   
  9. //5.关闭窗口    
  10. pazu.TWin.CloseWin();   

4. TPrinter对象详解

jangogo @ 2009-6-22 11:15:00

 

DEMO和实例网页请看pazu_tprinter.html
 
marginTop                     属性上边距   数据类型:数字   单位:毫米
marginBottom              
属性下边距   数据类型:数字   单位:毫米
marginLeft                    
属性 左边距   数据类型:数字   单位:毫米
marginRight                 
属性 右边距   数据类型:数字   单位:毫米
例子:把上边距设置为10mm
pazu.TPrinter. marginTop=10
 
footer                             属性页脚   数据类型:字符串
header                           
属性 页眉   数据类型:字符串
例子:设置页眉
pazu.TPrinter.header=”这是新的页眉”
要取消页眉和页脚,只要赋给它们一个空字符串就行了,例如不要页眉:
pazu.TPrinter.header=””
同时页眉和页脚也支持左中右的对齐方式和自动用日期、URL、页码等的填充。这方面的信息可以参考IE这方面的相关文档
 
 
orientation                     属性纸张方向  数据类型:整数1或者2 1=纵向  2=横向
例子:设置纸张方向为横向
pazu.TPrinter. orientation=2
 
paperName                   属性   纸张大小名称  数据类型:字符串
printerName                  属性   打印机名称    数据类型:字符串
 这两个属性我们都不要求完全匹配,可以采用左匹配的方式,举例:
假设您有两台打印机,一台是 Epson 1600K III ,一台是 HP Deskjet 300。如果你要制定打印机为 HP Deskjet 300 你有两种方式:
方式一:全匹配 pazu.TPrinter. printerName=” HP Deskjet 300”
方式二:左匹配 pazu.TPrinter. printerName=” HP”
纸张的大小也是一样的道理,例如,指定用B5纸:
pazu.TPrinter. paperName=”B5”
提示:所有纸张格式和所有打印机的列表都可以通过pazu的相应方法取得,你还可以自定义纸张的大小。请看本文相应的章节。
 
isPrintBackground        属性 是否打印背景 数据类型:Boolean  true / false
isZoomOutToFit            
属性   是否缩放以适应大小打印 数据类型:Boolean true / false
printTemplate                
属性   打印模板的URL
copies                            
属性   打印份数 数据类型:整数,默认为1
range                              
属性   页面范围 数据类型:字符串
isCopyByCopy               
属性    是否整份打印结束后再打印下一份   数据类型:Boolean  true / false
说明:
copies属性允许你当前内容打印多份拷贝
range 你可以指定打印的页面,例如:
只打印1到5页:pazu.TPrinter.range=”1-5”
只打印1,3,5,7页:pazu.TPrinter.range=”1,3,5,7”
提示:利用range属性可以实现双面打印功能
printTemplate属性是打印模板的URL,详细的内容请参考微软的printTemplate技术的说明。
 
 
getPrinters                      方法    返回一个打印机列表,返回以一个回车换行符分隔的字符串
例如:获得所有的打印机
var ps=pazu.TPrinter.getPrinters();
      //获得是一个以回车换行分隔的字符串
      //alert(ps);
      var pa=ps.split("\r\n");
      for(var i=0;i<pa.length;i++){
        alert(pa[i]);
      }    
 
 
 
getPaperForms              方法    返回所有纸张格式的列表,返回以一个回车换行符分隔的字符串
getPrinters类似,不同的是getPaperForms是带参数的,你可以指定获得那个打印机的纸张类别,没有参数或者参数为空字符表示获得当前默认打印机的纸张列表
例如:var ps=pazu.TPrinter.getPaperForms(“HP deskjet 300”);
 
 
getDefaultPrinter             方法    获得默认打印机的对象,返回一个Printer Object
printToDefaultPrinter     
方法    把要打印的字符串输送到默认打印机(配合getDefaultPrinter 使用),参数:字符串
通过返回的对象,你可以控制该打印机,调用该打印机的EndDoc等方法,来实现直接输出内容到打印机

createPaper                    
方法    按指定的宽度和高度创建自定义纸张
有两个参数,paperWidth  paperHeight ,参数类型都是数字,单位是厘米。如果你指定的大小的纸张存在,则返回该纸张的名称,如果不存在,就先创建新的纸张格式并放回新的格式名称
例如:strDefaultPaper=pazu.TPrinter.createPaper(20,14); //创建20cm*14cm的纸张格式
      alert('成功创建纸张格式:'+strDefaultPaper);

doPrint                             
方法    执行打印
有一个Boolean的参数,该参数表示是否要弹出打印机选择对话框
例如:不提示用户直接打印:
pazu.TPrinter.doPrint(false)
 

doPrint_                           
方法    执行打印但是不进行页面参数设置
doPrint类似,但是没有参数,而且执行打印前不去进行页面参数的设置,也不提示用户
 
doPreview                       方法    打印预览没有参数
doPageSetup                  
方法    执行页面参数的设置没有参数
showPageSetup             
方法    弹出页面设置窗口没有参数
PAZU 是4Fang 四方为配合“四方在线”软件于2004年开发的WEB打印控件,适用于各种WEB软件项目的打印。
 
PAZU是客户端软件,使用于IE作为客户端的所有应用,与服务器端开发语言无关,即PAZU支持所有的开发语言开发的WEB应用,无论是Java还是Dot Net还是PHP 还是…都没有问题,客户端是IE就可以了。
如果你的应用的客户端不是IE,是firefox/chrome等非IE浏览器,您就需要PAZU的NP版本(NP版本我们的项目小组正在内部测试,估计在2009年10月份会推出给大家使用,敬请留意)
 
PAZU广泛支持IE6、IE7、IE8,支持WinXP以上操作系统,包括Windows Vista 和 Windows 7。
 
PAZU还支持IE内核的非IE浏览器, 如傲游、QQ浏览器、世界之窗等。
 
PAZU还支持使用IE浏览器编程对象自己编写的各种应用浏览器。
由于Windows Vista 以上操作系统和IE8以上版本在系统权限校验、安全性方面的巨大提升,使得目前网上公布的绝大部分WEB打印控件都不能完美支持WinVista和Win7、IE8等新一代WEB应用平台。PAZU的开发小组花费了大量的时间来使得PAZU具备最完全的兼容能力。
 
PAZU于2005年投入正式商用,是国内最早的WEB打印控件,被广大客户和朋友广泛应用于:电信、移动通信、银行、政府、医院、教育等各种大型应用中,这些前期付费的用户为PAZU和4Fang的发展贡献了宝贵的“粮草”,在此我们对前期付费购买PAZU许可的所有客户朋友表示最高的敬意。
2009年6月,4Fang 四方决定自2009年6月20日起,PAZU完全无限制免费推出,4Fang迈出的这一步这标志着4Fang的策略由一家相对技术封闭的应用软件开发公司走向技术开放的新里程。4Fang 四方将以:
标准、开放、易用
为新的技术指导策略,团结和凝聚更多的开发人员,为用户提供最简单实用的应用软件产品。4Fang 四方陆续还会开放4Fang专有WEB应用平台—LAPUTAC (一个同时支持数据在服务器、客户端存储,同时支持WEB应用模式和单独打包模式的领先应用平台,详见http://www.4Fang.net/apps/SaaS/ )
 
PAZU 的永久主站网址 http://www.4Fang.net/tech/pazu.html
 
PAZU 的永久下载网址 http://www.4Fang.net/4ff/sc_setup.exe
 
PAZU 开发包下载网址 http://www.4Fang.net/4ff/pazu.rar 
 
PAZU的讨论和意见反馈请到4Fang的论坛 http://www.4Fang.net/BBS/
分享到:
评论

相关推荐

    PAZU -- 4Fang WEB 打印控件

    很不错的WEB打印控件,能方便地进行打印设置。 PAZU 的永久主站网址 http://www.4Fang.net/tech/pazu.html PAZU 的永久下载网址 http://www.4Fang.net/4ff/sc_setup.exe PAZU 开发包下载网址 ...

    使用Activex实现自动打印 不使用PAZU

    通过使用ActiveX控件,开发者可以有更多的灵活性和控制权,可以选择适合自己需求的打印控件。 在描述中提到的链接指向了一个名为“蓝玫瑰”的博主在iteye博客上的一篇文章,但具体内容没有给出。通常,这样的文章会...

    web打印控件.rar

    PAZU.doc可能是一个详细的技术文档,介绍了Pazu打印控件的功能、配置和使用方法。sc_setup.exe很可能是Pazu打印控件的安装程序,用于在用户的系统上部署和配置该控件。index.htm和pazu-demo-ifrm.htm可能为示例网页...

    非常好用的 打印控件

    sc_setup.exe很可能是该控件的安装程序,index.htm和pazu-demo-ifrm.htm可能包含了示例代码或在线演示,pazu_tprinter.html和pazu_twin.html可能是关于控件特性和使用的详细说明,而printer.jpg可能展示了打印控件的...

    一种基于浏览器的自动小票机打印实现方案(js版)

    2. lodop:lodop是一个用于Web打印的JavaScript打印控件,支持在Web页面上实现套打和票据打印等功能。它提供了一个丰富的API,允许开发者在不弹出打印对话框的情况下,直接调用打印机进行打印。它支持多种操作系统和...

    一款好用的网页打印工具.免费的咯.

    6. **网页示例**:“index.htm”、“pazu-demo-ifrm.htm”、“pazu_tprinter.html”和“pazu_twin.html”可能是包含演示和示例的网页文件,用于展示PAZU的打印效果和操作方法。 7. “printer.jpg”:这可能是一个...

    pazu0522.github.io

    pazu0522.github.io

Global site tag (gtag.js) - Google Analytics