资源描述
Webprint插件api技术手册
-6-13
目录
目录 1
一、简介 2
二、webprint插件对象、属性办法 2
1、对象 2
2、属性 3
defaultPrinterName 3
marginTop 3
marginLeft 3
marginRight 4
marginBottom 4
header 4
footer 5
copies 5
pageFrom 6
pageTo 6
selectedPages 6
currentPage 7
orientation 7
paperSize 7
paperSource 8
pageWidth 8
pageHeight 8
zoomValue 8
3、办法 9
InitPrint() 9
SetMarginMeasure(int units) 9
Preview() 10
Print([bool] prompt) 10
三、例子摘要 10
设立页边距打印示例 10
选取打印纸型示例 12
自定义打印纸张示例 13
一、简介
webprint是在VC7.0上开发ATL小控件(只有75k),运营时不可视。重要实现对IE浏览器中文档打印格式控制,可以定制打印纸型,纸张来源,打印方向等等顾客经常关怀属性。
顾客通过代码可以自定义纸张,打印方向,页边距等等属性达到定制打印目,这些定制属性设立不会变化IE浏览器默认打印属性。也可以通过服务器端页面调用webprint插件生成客户端页面达到设立打印参数目。
开发平台:VC7.0
应用平台
Microsoft Windows Win32 OS 平台(除了Windows NT 3.51)
Microsoft Internet Explorer versions 5.5以上
二、webprint插件对象、属性办法
1、对象
webprint
描述:打印插件对象。
在页面中嵌入此对象实现定制打印。如:
<object id=webprint classid="clsid:CA03A5A8-9890-49BE-BA4A-8C524EB06441" codebase="eprintdemo.cab#Version=3,0,0,11" viewasext> </object>
示例:
<html>
<body>
<object id=webprint classid="clsid:CA03A5A8-9890-49BE-BA4A-8C524EB06441" codebase="eprintdemo.cab#Version=3,0,0,11" viewasext> </object>
<p>
方成打印插件演示示例。
</body>
</html>
2、属性
defaultPrinterName
描述:获得当前默认打印机名称,通过获得默认打印机名称可以判断与否安装了打印机。
语法:webprint.defaultPrinterName = [stringValue]
应用到:webprint对象
示例:
下面是一种判断当前与否设立了打印机javascript代码,PrintCtl是webprint对象id。
if (PrintCtl.defaultPrinterName.length==0)
{
alert("没有设立打印机!")
return;
}
marginTop
描述:设立打印页面上边距。设立值单位默以为毫米,通过SetMarginMeasure()办法可以变化到英寸。
语法:webprint.marginTop = [numMarginValue]
应用到:webprint对象
示例:
webprint.setMarginMeasure(1);
webprint.marginTop = 20;//20mm上边距
marginLeft
描述:设立打印页面左边距。设立值单位默以为毫米,通过SetMarginMeasure()办法可以变化到英寸。
语法:webprint.marginLeft = [numMarginValue]
应用到:webprint对象
示例:
webprint.setMarginMeasure(1);
webprint.marginLeft = 20;//20mm左边距
marginRight
描述:设立打印页面右边距。设立值单位默以为毫米,通过SetMarginMeasure()办法可以变化到英寸。
语法:webprint.marginRight = [numMarginValue]
应用到:webprint对象
示例:
webprint.setMarginMeasure(1);
webprint.marginRight = 20;//20mm右边距
marginBottom
描述:设立打印页面下边距。设立值单位默以为毫米,通过SetMarginMeasure()办法可以变化到英寸。
语法:webprint.marginBottom = [numMarginValue]
应用到:webprint对象
示例:
webprint.setMarginMeasure(1);
webprint.marginBottom = 20;//20mm底边距
header
描述:设立打印页面页眉信息。
语法:webprint.header = [stringValue]
设立值可以和下面IE页眉页脚代码合并设立,例如:(page &p of &P)
描述
代码
窗口标题
&w
页面地址(URL)
&u
短格式日期 (在控制面板区域选项中修改短日期格式)
&d
长格式日期 (在控制面板区域选项中修改长日期格式)
&D
时间 (在控制面板区域选项中修改时间格式)
&t
24小时格式
&T
当前页号
&p
总页数
&P
文本居中(在&b背面文本)
&b
文本靠右 (在 &b&b 背面文本)
&b&b
单个&(&)
&&
应用到:webprint对象
示例:
webprint.header = “webprint3.0 打印演示”
footer
描述:设立打印页面页脚信息。
语法:webprint.footer = [stringValue]
设立值可以和下面IE页眉页脚代码合并设立,例如:(page &p of &P)
描述
代码
窗口标题
&w
页面地址(URL)
&u
短格式日期 (在控制面板区域选项中修改短日期格式)
&d
长格式日期 (在控制面板区域选项中修改长日期格式)
&D
时间 (在控制面板区域选项中修改时间格式)
&t
24小时格式
&T
当前页号
&p
总页数
&P
文本居中(在&b背面文本)
&b
文本靠右 (在 &b&b 背面文本)
&b&b
单个&(&)
&&
应用到:webprint对象
示例:
webprint.footer = “第 &p 页 / 共 &P 页” ;
copies
描述:设立打印份数。
语法:webprint.copies = [numValue]
应用到:webprint对象
示例:webprint.copies = 2;//打印两份
pageFrom
描述:设立打印开始页数,普通与pageTo一起使用。
pageForm 和pageTo设立值必要在selectedPages属性值为true才干生效。
语法:webprint.pageFrom = [numValue]
应用到:webprint对象
示例:
下面代码实现 选取从第二页打印到第四页。
webprint.selectedPages = true ;
webprint.pageFrom = 2 ;
webprint.pageTo = 4 ;
pageTo
描述:设立打印结束页,普通与pageFrom一起使用。
pageForm 和pageTo设立值必要在selectedPages属性值为true才干生效。
语法:webprint.pageTo = [numValue]
应用到:webprint对象
示例:
下面代码实现 选取从第二页打印到第四页。
webprint.selectedPages = true ;
webprint.pageFrom = 2 ;
webprint.pageTo = 4 ;
selectedPages
描述:设立与否选取打印页。
语法:webprint.selectedPages = [boolVlaue] true为选取页打印;false为默认值不选取页打印
当webprint.selectedPages = true ;时,再设立pageFrom,和pageTo达到选项打印页。
应用到:webprint对象
示例:
下面代码实现 选取从第二页打印到第四页。
webprint.selectedPages = true ;
webprint.pageFrom = 2 ;
webprint.pageTo = 4 ;
currentPage
描述:设立与否打印当前页。
语法:webprint.currentPage = [boolValue] true为打印当前页;false为默认值不打印当前页。
当webprint.currentPage= true 和webprint.selectedPages = true时,则那个设立在最后则那个属性值有效。
应用到:webprint对象
示例:
webprint.currentPage = true ;//打印当前页。
orientation
描述:设立打印方向,横向或者纵向
语法:webprint.orientation = [numValue] 1为纵向,2为横向。
应用到:webprint对象
示例:下面代码实现 B5纸横向打印。
webprint.paperSize = “B5”;
webprint.orientation = 2 ;
paperSize
描述:设立打印纸张。
语法:webprint.paperSize = [stringValue] 设立值与打印机纸型一致。
应用到:webprint对象
示例:webprint.paperSize = “A4”;//定制A4 纸打印
下面代码实现顾客自定义纸张尺寸打印。
webprint.setMarginMeasure(1);
webprint.paperSize = "US Std Fanfold";//顾客自定义
webprint.pageWidth = 297;
webprint.pageHeight = 210;
paperSource
描述:设立纸张来源。
语法:webprint.paperSource = [stringValue] 设立值与打印机纸张来源一致。
应用到:webprint对象
示例:webprint.paperSource = “单张”;
pageWidth
描述:设立打印页面宽。设立值单位默以为毫米,通过SetMarginMeasure()办法可以变化到英寸。
如果不设立纸张型号,直接设立pageWidth和pageHeight值,则在页面设立对话框中纸型将显示当前打印机默认纸型。
语法:webprint.pageWidth = [numValue]
应用到:webprint对象
示例:
webprint.setMarginMeasure(2);//英寸为单位
webprint.pageWidth = 6 ;
pageHeight
描述:设立打印页面高。设立值单位默以为毫米,通过SetMarginMeasure()办法可以变化到英寸。
如果不设立纸张型号,直接设立pageWidth和pageHeight值,则在页面设立对话框中纸型将显示当前打印机默认纸型。
语法:webprint.pageHeight = [numValue]
应用到:webprint对象
示例:
webprint.setMarginMeasure(2);//英寸为单位
webprint.pageHeight = 8 ;
zoomValue
描述:设立打印预览时候显示缩放比例,默认是75%。
语法:webprint.zoomValue = [stringValue]
应用到:webprint对象
示例:
webprint.setMarginMeasure(2);//英寸为单位
webprint.pageHeight = 8 ;
webprint.zoomValue=”100”;
3、办法
InitPrint()
描述:初始化所有打印属性设立值。普通在设立一种打印作业之前调用一次此办法。
应用到:webprint对象
示例:
下面代码实现设立打印页眉和页脚为1英寸,在设立之前调用InitPrint()办法,初始化所有打印设立值。
webprint.InitPrint();
webprint.SetMarginMeasure(2);
webprint.marginTop = 1;
webprint.marginBottom = 1;
SetMarginMeasure(int units)
描述:设立打印页面尺寸和边距单位。
参数:units
1 表达 毫米 默认值
2 表达 英寸
应用到:webprint对象
示例:
webprint.SetMarginMeasure(2);//设立单位为英寸
Preview()
描述:打印预览
参数:
应用于:
示例:
下面代码实现A4纸横向打印预览。
webprint.paperSize = “A4”;
webprint.orientation = 2;
webprint.Preview();
Print([bool] prompt)
描述:打印
参数:prompt 可选
true 不出打印对话框直接打印
fase 弹出打印对话框 默认值
示例:
下面代码实现A4纸横向打印
webprint.paperSize = “A4”
webprint.orientation = 2;
webprint.Print();// 弹出打印对话框打印
webprint.Print(true);//不出打印对话框直接打印
三、例子摘要
设立页边距打印示例
<html>
<head>
<STYLE MEDIA="PRINT">
.button {display:none;}
</STYLE>
<STYLE MEDIA="SCREEN">
.button {display:block;}
</STYLE>
</head>
<script language="javascript">
function SetPrintSettings()
{
document.all.webprint.InitPrint();
document.all.webprint.SetMarginMeasure(2);//1mm是default,2 inch
document.all.webprint.marginTop=1.11;
document.all.webprint.marginLeft=1;
document.all.webprint.marginRight=1;
document.all.webprint.marginBottom=1;
document.all.webprint.Preview();
}
function Print() {
document.all.webprint.InitPrint();
document.all.webprint.SetMarginMeasure(2);//1mm是default,2 inch
document.all.webprint.marginTop=1.11;
document.all.webprint.marginLeft=1;
document.all.webprint.marginRight=1;
document.all.webprint.marginBottom=1;
document.all.webprint.Print();
//document.all.webprint.Print(true);//不弹出打印对话框直接打印
}
</script>
<body>
<object id=webprint classid="clsid:CA03A5A8-9890-49BE-BA4A-8C524EB06441" codebase="eprintdemo.cab#Version=3,0,0,11" viewasext> </object>
<p>
设立页边距打印示例。
<input type="button" value="打印预览" onclick="SetPrintSettings()" id="Button1" name="Button1" class="button">
<input type="button" value="打印" onclick="Print()" ID="Button2" NAME="Button2" class="button">
</body>
</html>
选取打印纸型示例
<html>
<head>
<STYLE MEDIA="PRINT">
.button {display:none;}
</STYLE>
<STYLE MEDIA="SCREEN">
.button {display:block;}
</STYLE>
</head>
<script language="javascript">
function SetPrintSettings()
{
document.all.webprint.InitPrint();
document.all.webprint.SetMarginMeasure(2);//1mm是default,2 inch
document.all.webprint.paperSize = "Letter";
document.all.webprint.Preview();
}
function Print() {
document.all.webprint.InitPrint();
document.all.webprint.SetMarginMeasure(2);//1mm是default,2 inch
document.all.webprint.paperSize = "Letter";
document.all.webprint.Print();
//document.all.webprint.Print(true);//不弹出打印对话框直接打印
}
</script>
<body>
<object id=webprint classid="clsid:CA03A5A8-9890-49BE-BA4A-8C524EB06441" codebase="eprintdemo.cab#Version=3,0,0,11" viewasext> </object>
<p>
选取打印纸型示例。
<input type="button" value="打印预览" onclick="SetPrintSettings()" id="Button1" name="Button1" class="button">
<input type="button" value="打印" onclick="Print()" ID="Button2" NAME="Button2" class="button">
</body>
</html>
自定义打印纸张示例
<html>
<head>
<STYLE MEDIA="PRINT">
.button {display:none;}
</STYLE>
<STYLE MEDIA="SCREEN">
.button {display:block;}
</STYLE>
</head>
<script language="javascript">
function SetPrintSettings()
{
document.all.webprint.InitPrint();
document.all.webprint.SetMarginMeasure(2);//1mm是default,2 inch
document.all.webprint.paperSize = " US Std Fanfold";
document.all.webprint.pageWidth = 6;
document.all.webprint.pageHeight = 8;
document.all.webprint.Preview();
}
function Print() {
document.all.webprint.InitPrint();
document.all.webprint.SetMarginMeasure(2);//1mm是default,2 inch
document.all.webprint.paperSize = " US Std Fanfold";
document.all.webprint.pageWidth = 6;
document.all.webprint.pageHeight = 8;
document.all.webprint.Print();
//document.all.webprint.Print(true);//不弹出打印对话框直接打印
}
</script>
<body>
<object id=webprint classid="clsid:CA03A5A8-9890-49BE-BA4A-8C524EB06441" codebase="eprintdemo.cab#Version=3,0,0,11" viewasext> </object>
<p>
自定义打印纸张示例。
<input type="button" value="打印预览" onclick="SetPrintSettings()" id="Button1" name="Button1" class="button">
<input type="button" value="打印" onclick="Print()" ID="Button2" NAME="Button2" class="button">
</body>
</html>
展开阅读全文