PAZU 组件

1. 入门基础


PAZU 是一个ActiveX组件(NP版本是一个Plugin),本文档只讨论ActiveX版本(IE内核浏览器适用),NP版本的说明文档我们将另文发布。

PAZU 是一个已经通过微软代码认证签名的控件,用户可以在使用到这个控件的时候会自动提示安装,保证发布的便利性。

在你的WEB页里面使用 <Object> 标签可以引用PAZU控件,如下:


<object classid="clsid:AF33188F-6656-4549-99A6-E394F0CE4EA4"
codebase=“http://www.4Fang.net/4ff/sc_setup.exe”
id="pazu"
name="pazu" >
<param name="License" value="You Need a License from 4Fang"/>
</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.把IE窗口变成App窗口,不隐藏标题栏
pazu.TWin.appWin(false);
//2.把IE窗口变成App窗口,隐藏标题栏
pazu.TWin.appWin(true);
//3.最大化
pazu.TWin.MaxWin();
//4.最小化
pazu.TWin.MinWin();
//5.关闭窗口
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);

}


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具备最完全的兼容能力。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
控件功能强大,却简单易用,所有调用如同JavaScript扩展语句, 主要接口函数如下: PRINT_INIT 打印初始化 SET_PRINT_PAGESIZE 设定纸张大小 ADD_PRINT_HTM 增加超文本项 ADD_PRINT_TEXT 增加纯文本项 ADD_PRINT_TABLE 增加表格项 ADD_PRINT_SHAPE 画图形 SET_PRINT_STYLE 设置对象风格 PREVIEW 打印预览 PRINT 直接打印 PRINT_SETUP 打印维护 PRINT_DESIGN 打印设计 ... 样例清单 1.如何在页面内嵌入控件见样例一 2.如何选材打印当前页面内容见样例二 3.如何用代码生成打印页见样例三 4.如何打印设计和定位套打见样例四 5.如何控制纸张大小和连续打印见样例五 6.如何输出多页长文档及双面打印见样例六 7.如何定向输出见样例七 8.如何打印图片见样例八 9.如何用程序加载打印维护背景图见样例九 10.如何控制打印样式(STYLE)见样例十 11.如何直接打印条形码见样例十一 12.如何读写本地文件见样例十二 13.如何打印旋转内容见样例十三 14.如何按URL打印见样例十四 15.如何打印表格的页头页尾见样例十五 16.如何设置预览窗口大小见样例十六 17.如何发打印机指令或直接读写端口见样例十七 18.如何打印幅面高度不固定的票据见样例十八 19.如何内嵌显示及预览时包含背景图见样例十九 20.如何强制分页并预览多页卡片见样例二十 21.如何控制打印维护的功能权限见样例二十一 22.如何构建自己的纯WEB打印预览见样例二十二 23.如何居中打印超文本见样例二十三 24.如何选择界面皮肤见样例二十四 25.如何指定输出到哪页或仅预览见样例二十五 26.如何提高多页打印的性能见样例二十六 27.如何导出数据到Excel文件见样例二十七 28.如何快速读取客户端系统信息见样例二十八 29.如何使用其它长度单位见样例二十九 30.如何分页输出页面内容见样例三十 31.如何打印表格的分页小计或合计见样例三十一 32.如何实现清晰的图表打印见样例三十二 33.如何实现甘特图等的图表打印见样例三十三 34.如何使用百分比%和满页打印见样例三十四 35.如何获得打印结果和程序代码见样例三十五 36.如何在设计过程中用js编辑内容见样例三十六 37.如何打印公章效果图见样例三十七 38.如何用BASE64编码输出图片见样例三十八 39.如何打印田字格、上划线等文本见样例三十九 40.如何进行数据格式转换见样例四十 41.如何把内容关联后按顺序打印见样例四十一 42.如何把整页内容缩放打印见样例四十二 43.如何分页打印综合表格见样例四十三 44.如何缩放打印单个超文本内容见样例四十四 45.如何获得打印状态及最终结果见样例四十五 46.如何设置右边距和下边距见样例四十六

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值