今天推荐的这款Web打印的OCX组件是《飞天Web打印组件》,是真正免费,不加水印,没有机器码限制,没有ip或域名限制,没有时间限制,兼容ie6+。无须注册,下载即用

这是一个OCX组件,主要应用在IE的Web打印上。

下载地址:http://www.cnft.cn/cnftPrintOcx.asp

 

安装说明:
1.安装路径
x86的操作系统,请将cnftPrint.ocx拷贝到C:\Windows\System32目录下。
x64的操作系统,请将cnftPrint.ocx拷贝到C:\Windows\SysWOW64目录下。

2.安装命令
安装组件命令:regsvr32 cnftPrint.ocx
卸载组件命令:regsvr32 cnftPrint.ocx -u
Win10操作系统,执行regsvr32命令,需要使用管理员权限运行。

3.组件库名称
组件在Type Library中的名称为:cnftPrintOcx

4.组件在HTML中引用
直接object引用:<object id=”cnftPrintOcx1″ width=”0″ height=”0″ classid=”clsid:7258F570-E518-4AF2-8A55-F450E4AF8BE8″></object>
JS引用:<script type=”text/javascript” src=”cnftPrintOcx.js”></script>
两种引用说明:“直接object引用”在ie一些版本中,需要手工点击组件,才能激活组件;而采用“JS引用”则不需要手动点击组件即可激活,所以,推荐采用“JS引用”方式。

 

使用上,接口不是很多,但够用了,完全免费,没有任何限制,使用起来也比较方便。以下是代码:

 

《飞天Web打印组件》常规打印,制定打印格式,诀窍是用尺子量;
组件采用的输入单位是毫米,可以带一位小数,如18.5毫米;
采用这样的位置参数输入,即可非常直观将打印内容定位,
用尺子将标签的左边距、上边距、长度、宽度量出来;
简单的就可以制定出打印格式,输入打印内容,完成打印。

以下是代码:
<html>

<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>
<title>常规打印</title>
</head>

<body>
<script type=”text/javascript” src=”cnftPrintOcx.js”></script>
<script type=”text/javascript”>
function doPrint()
{
var objPrint=document.getElementById(\’cnftPrintOcx1\’);

//清除控件上的所有打印元件
objPrint.ftClear();

//设置打印纸张,可支持:
//Custom,A2,A3,A3Extra,A3Trans,A4,A4Extra,A4Plus,A4Small,A4Trans A5,A5Extra,A5Trans,B4,B4ISO,B5,B5Extra,B5Trans
//说明:
//Custom是用户自定义纸张大小
objPrint.ftPaperSize=\’Custom\’;

//设置打印方向,1为纵向、2为横向
objPrint.ftPaperOrientation=1;

//设置打印纸宽度和高度(单位毫米),此设置只有在纸张类型为Custom时才有效
objPrint.ftPaperWidth=200;
objPrint.ftPaperHeight=100;

//设置所有元件针对左边距的偏移量(单位毫米)
objPrint.ftOffsetLeft=0;

//设置所有元件针对上边距的偏移量(单位毫米)
objPrint.ftOffsetTop=0;

//添加一个矩形元件,参数依次为:左边距(单位毫米),上边距(单位毫米),矩形宽度(单位毫米),矩形高度(单位毫米),内填充颜色,边框宽度,边框颜色
objPrint.ftAddRectangle(13, 11, 175, 3, \’FF0000\’, 1, \’000000\’);
objPrint.ftAddRectangle(100, 20, 90, 70, \’FFFFFF\’, 1, \’000000\’);

//添加一个圆形元件,参数依次为:外接矩形左边距(单位毫米),外接矩形上边距(单位毫米),外接矩形宽度(单位毫米),外接矩形高度(单位毫米),内填充颜色,边框宽度,边框颜色
objPrint.ftAddCircle(10, 10, 5, 5, \’33CC00\’, 1, \’CC0000\’);
objPrint.ftAddCircle(185, 10, 5, 5, \’33CC00\’, 1, \’CC0000\’);

//添加一个竖线元件,参数依次为:左边距(单位毫米),上边距(单位毫米),宽度(单位毫米),高度(单位毫米),竖线颜色
objPrint.ftAddVerticalLine(110, 20, 1, 70, \’000000\’);

//添加一个横线元件,参数依次为:左边距(单位毫米),上边距(单位毫米),宽度(单位毫米),高度(单位毫米),横线颜色
objPrint.ftAddHorizontalLine(100, 30, 90, 1, \’000000\’);
objPrint.ftAddHorizontalLine(100, 40, 90, 1, \’000000\’);
objPrint.ftAddHorizontalLine(100, 50, 90, 1, \’000000\’);
objPrint.ftAddHorizontalLine(100, 60, 90, 1, \’000000\’);

//添加一个图片元件,参数依次为:左边距(单位毫米),上边距(单位毫米),图片宽度(单位毫米),图片高度(单位毫米),图片URL地址
//注意:如果”图片宽度”和”图片高度”任一为0,则元件将根据图片自动缩放大小
//说明:图片URL地址 可以是以http://开头的网络图片地址,也可以是当前电脑硬盘上的图片文件
//说明:如果是当前电脑上的图片文件,如“c:\baidu\logo.gif”需要将“\”替换为“\\”或者“/”,方可正常加载图片。
//图片格式支持bmp、jpg、gif、png
objPrint.ftAddImage(15, 25, 0, 0, \’http://www.cnft.cn/image_link/cnft.cn.png\’);
//objPrint.ftAddImage(15, 25, 0, 0, \’D:\\pic\\1.png\’);

 

 

//添加一个打印元件,参数依次为:元件唯一标识,左边距(单位毫米),上边距(单位毫米),宽度(单位毫米),高度(单位毫米),字体名称,字体大小,字体眼色,字体背景颜色,字体样式,字体对齐方式
//字体样式:0默认,1加粗,2加斜,3加下划线,4加删除线
//字体对齐方式:0左对齐,1居中,2右对齐;注意:需要宽度为固定值
//固定元件宽度,即文字将可以自动换行
objPrint.ftAddLabel(\’用户号\’, 120, 23, 0, 0, \’宋体\’, 12, \’000000\’, \’\’, \’0\’,0);
objPrint.ftAddLabel(\’用户名\’, 120, 33, 0, 0, \’宋体\’, 12, \’000099\’, \’\’, \’1\’,0);
objPrint.ftAddLabel(\’金额小写\’, 120, 43, 60, 0, \’宋体\’, 12, \’FF0000\’, \’\’, \’12\’,2);//固定元件宽度,设置为右对齐
objPrint.ftAddLabel(\’金额大写\’, 120, 53, 60, 0, \’宋体\’, 12, \’FF0000\’, \’\’, \’123\’,2);//金额可以用组件自带接口wfMoneyToCHN转换成中文格式
objPrint.ftAddLabel(\’备注\’, 120, 63, 60, 20, \’宋体\’, 10, \’000000\’, \’\’, \’0\’,0);//固定元件宽度,即文字将可以自动换行

 

//为组件赋值,参数为:元件唯一标识,元件要打印的文本
objPrint.ftAddValue(\’用户号\’, \’000000101\’);
objPrint.ftAddValue(\’用户名\’, \’张三\’);

objPrint.ftAddValue(\’金额小写\’, \’1234.56\’);

//wfMoneyToCHN接口是将数字转换成中文的汉字格式
objPrint.ftAddValue(\’金额大写\’, objPrint.ftMoneyToCHN(1234.56));

objPrint.ftAddValue(\’备注\’, \’《飞天Web打印组件》支持票据、发票、通知单、派工单、出货单的打印。支持精确定位和微调的打印软件,采用毫米做定位单位。\’);

 

//立即打印到打印机
objPrint.ftPrint();

 

//获取该组件的软件名、版本、网站
//http://www.cnft.cn
//window.alert(objPrint.ftSoftware);
//window.alert(objPrint.ftVersion);
//window.alert(objPrint.ftWebsite);
}
</script>
<input type=”button” name=”btnPrint” value=”打印” onclick=”doPrint();”>
</body>

</html>

 

版权声明:本文为cnftcn原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/cnftcn/p/12267821.html