前端调用远程电脑打印机,实现打印

1.从顺丰开发平台下载 clodop打印插件

https://scp-tcdn.sf-express.com/scp/soft/SCPPrint_Win32NT_6.570CN.exe

2.下载安装 启动

3. 查看打印服务

4.打开测试

5.导出代码

<!DOCTYPE html>
<!-- saved from url=(0034)http://172.17.2.234:8000/c_aoprint -->
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<script src="./Welcome Active-Online Print_files/CLodopfuncs.js"></script>
<title>Welcome Active-Online Print</title>
</head>

<body onload="demoCreatePrinterList()" style="background:#ebf4fb">
<center>
<h2>欢迎使用C-Lodop云服务的<font color="#009999">AO打印</font></h2><hr>
</center>

<script>
        function demoSetClodopJS(strSrc){
                 var oscript=demoCreateCLodopJSscript(strSrc);
                 oscript.onload =oscript.onreadystatechange= function() {
                         if ((!oscript.readyState|| /loaded|complete/.test(oscript.readyState)))
                         demoCreatePrinterList();
                 };
        }
        function demoCreateCLodopJSscript(strSrc){
                 var ScriptSS=document.getElementsByTagName("script");
                 for(var i in ScriptSS){
                           if (ScriptSS[i] && ScriptSS[i].src && (ScriptSS[i].src.indexOf("CLodopfuncs.js")>=0)) {
                                if (ScriptSS[i].parentNode) ScriptSS[i].parentNode.removeChild( ScriptSS[i] );
                           }
                 }
                 var oscript=document.createElement("script");
                 if (strSrc.indexOf("src=")>=0) {strSrc=strSrc.match(/=[\',\"][^\',^\"].*(?=[\',\"])/i);strSrc=strSrc[0].slice(2);}
                 oscript.src=strSrc;
                 var head = document.head || document.getElementsByTagName("head")[0] || document.documentElement;
                 head.insertBefore(oscript,head.firstChild);
                 return oscript;
        }
        function demoCreatePrinterList(){
                CLODOP.Create_Printer_List(document.getElementById('Select02'),true);
                demoCreateAOPrinterSelectList();
        }
        function demoCreateAOPrinterSelectList(){
                var iDriverIndex=document.getElementById("Select02").value;
                var oResultSelect=document.getElementById('Select03');
                while(oResultSelect.childNodes.length>0){
                       var children = oResultSelect.childNodes;
                       for(var i=0;i<children.length;i++)
                       oResultSelect.removeChild(children[i]);
                }
                var strBridgesNameList=CLODOP.Get_AOPrinters_List(iDriverIndex,"name");
                var strBridgessIDList=CLODOP.Get_AOPrinters_List(iDriverIndex,"id");
                var NameOptions=new Array();
                var IDOptions=new Array();
                NameOptions=strBridgesNameList.split("\n");
                IDOptions=strBridgessIDList.split("\n");
                for (var i in NameOptions){
                        var option=document.createElement('option');
                        option.innerHTML=NameOptions[i];
                        option.value=IDOptions[i]+";"+NameOptions[i];
                        oResultSelect.appendChild(option);
                }
        }
        function demoPreview(){
                LODOP.PRINT_INIT("测试AO预览");
                LODOP.ADD_PRINT_TEXT(10,10,300,200,"这是纯文本行");
                LODOP.ADD_PRINT_HTM(30,10,"100%","80%","超文本横线:<hr>下面是二维码:");
                LODOP.ADD_PRINT_BARCODE(85,10,79,69,"QRCode","123456789012");
                LODOP.PREVIEW(true);
        }
</script>

<span style="font-size:14px">
<h3>&nbsp;使用说明:</h3>
&nbsp;&nbsp;<font color="#0000FF">AO打印</font>是英文<b>A</b>ctive-<b>O</b>nline Print的简称,也称<b>主动在线</b>打印,
是<u><a href="http://172.17.2.234:8000/" target="_blank">C-Lodop</a>扩展版</u>特有的功能。打印前具有主动链接功能的特殊打印机(<font color="#0000FF">AO打印机</font>)<br><br>
&nbsp;&nbsp;首先通过普通网络与C-Lodop服务保持链接状态,然后网页JS程序利用LODOP语句向打印机输出复杂内容。打印发起者(浏览器)客户端设备无需与打<br><br>
&nbsp;&nbsp;印机进行对接设置,打印机在网络上独立存在,网络位置不限,从而实现广域网打印(未来打印的主流趋势)。
如果手头没有<a href="http://www.c-lodop.com/aoprint.html" target="_blank">AO打印机</a>,也可以用普<br><br>
&nbsp;&nbsp;通PC和普通打印机组合代替,这就需要在该PC中另外安装一个C-Lodop扩展版,并启用其<a href="http://172.17.2.234:8000/c_aobridge" target="_blank">客户端桥(Client-Bridge)</a>功能。AO打印与普通打印的主要<br><br>
&nbsp;&nbsp;区别是SET_PRINTER_INDEX/A语句参数值,由于一个驱动下可能存在多个AO打印机,所以该参数中要用逗号串接上目标打印机的识别信息,该识别<br><br>
&nbsp;&nbsp;信息由<b>AO打印机编号</b>与<b>AO打印机标识名</b>用分号组合而成,也可以仅有一项,语句格式如下:<br><br>
&nbsp;&nbsp;<font color="#0000FF">LODOP.SET_PRINTER_INDEX("&nbsp;<font color="#0080FF">AO打印机驱动名或序号</font>&nbsp;<font color="#A00040">,&nbsp;AO打印机编号;AO打印机标识名</font>&nbsp;");</font><br>
&nbsp;&nbsp;<font color="#0000FF">LODOP.SET_PRINTER_INDEX("&nbsp;<font color="#0080FF">AO打印机驱动名或序号</font>&nbsp;<font color="#A00040">,&nbsp;AO打印机编号</font>&nbsp;");</font><br><br>
&nbsp;&nbsp;下面演示AO打印常见四步骤:<br><br>
&nbsp;&nbsp;第一步选择云主机:<select id="Select01" size="1" onchange="demoSetClodopJS(document.getElementById(&#39;Select01&#39;).value)">
  <option value="http://172.17.2.234:8000/CLodopfuncs.js">按IP地址:http://172.17.2.234:8000/CLodopfuncs.js</option>
  <option value="http://172.17.2.234:8000/CLodopfuncs.js?AOListCount=2">按IP地址:http://172.17.2.235:8000/CLodopfuncs.js?AOListCount=2</option>
  <option value="http://localhost:8000/CLodopfuncs.js">本机方式1:http://localhost:8000/CLodopfuncs.js</option>
  <option value="http://127.0.0.1:8000/CLodopfuncs.js">本机方式2:http://127.0.0.1:8000/CLodopfuncs.js</option>
</select><br><br>
&nbsp;&nbsp;第二步选择打印驱动名(传统打印机名):<select id="Select02" size="1" onchange="demoCreateAOPrinterSelectList()"><option value="0">导出为WPS PDF</option><option value="1">发送至 OneNote 16</option><option value="2">发送到WPS高级打印</option><option value="3">OneNote for Windows 10</option><option value="4">NPIBEB4B9 (HP LaserJet Pro MFP M226dw)</option><option value="5">Microsoft XPS Document Writer</option><option value="6">Microsoft Print to PDF</option><option value="7">HP LaserJet Pro MFP M225-M226 Series Fax</option><option value="8">HP LaserJet Pro MFP M225-M226 PCL 6</option><option value="9">HP LaserJet MFP M72625-M72630 PCL 6</option><option value="10">Fax</option><option value="11">\\rt-printserver\茶水间Canon(二次纸)</option><option value="12">\\rt-printserver\瑞通前台</option><option value="13">\\rt-printserver\茶水间HP</option><option value="14">\\rt-printserver\办公区门口大HP</option><option value="15">\\rt-printserver\办公区门口小HP(二次纸)</option></select><br>
&nbsp;&nbsp;<i>(以上名称中,那些末尾带省略号者,表明其链接了AO打印机可用,如果看不到就<a href="javascript:location.reload(true);">刷新一下</a>本页面)</i><br><br>

&nbsp;&nbsp;第三步选择AO打印机(编号及标识名):<select id="Select03" size="1"><option value=";"></option></select><br>
&nbsp;&nbsp;<i>(编号和标识名提前在AO打印机端预先设置好,注意一个驱动下可有多个同款AO打印机或<a href="http://172.17.2.234:8000/c_aobridge" target="_blank">端桥</a>)</i><br><br>
&nbsp;&nbsp;第四步点<a href="javascript:;" onclick="javascript:eval(document.getElementById(&#39;text01&#39;).value);">打印</a>执行如下语句看看效果:<br><br>
<textarea rows="12" id="text01" cols="100">  var iDriverIndex=document.getElementById("Select02").value;
  var strAOPrinterIDandName=document.getElementById("Select03").value;

  LODOP.PRINT_INIT("测试AO打印");
  LODOP.SET_PRINTER_INDEX(iDriverIndex+','+strAOPrinterIDandName);
  LODOP.ADD_PRINT_TEXT(10,10,300,200,"这是纯文本行");
  LODOP.ADD_PRINT_HTM(30,10,"100%","80%","超文本横线:&lt;hr&gt;下面是二维码:");
  LODOP.ADD_PRINT_BARCODE(85,10,79,69,"QRCode","123456789012");
  LODOP.On_Return=function(TaskID,Value){ alert("打印结果:"+Value); };
  LODOP.PRINT();

</textarea><br><br>

&nbsp;&nbsp;对于需要发送源打印指令的情况(如RFID打印),可以点
<a href="javascript:;" onclick="javascript:eval(document.getElementById(&#39;text02&#39;).value);">发送指令</a>执行如下语句:<br><br>
<textarea rows="6" id="text02" cols="100">  var iDriverIndex=document.getElementById("Select02").value;
  var strAOPrinterIDandName=document.getElementById("Select03").value;
  LODOP.PRINT_INIT("测试AO源打印指令");
  LODOP.SET_PRINTER_INDEX(iDriverIndex+','+strAOPrinterIDandName);
  LODOP.SEND_PRINT_RAWDATA("b50,30,P,00,00,s0,c0,x3,y6,r0,l0,t0,o0,'ABCabc12345'");
</textarea><br><br>

&nbsp;&nbsp;以上AO识别信息是用函数<font color="#0000FF">Get_AOPrinters_List</font>在页面生成的,其实还可以调用
<a href="javascript:;" onclick="javascript:demoPreview();">LODOP.PREVIEW(true);</a>语句,从而在内含式预览的打印对话框里选择。
<hr><br>
&nbsp;&nbsp;C-Lodop更多功能请参阅<a href="http://172.17.2.234:8000/" target="_blank">通用使用说明</a>,
安装程序可通过<a href="http://www.c-lodop.com/download.html" target="_blank">官网www.c-lodop.com下载</a>最新版。
<br><br><br>
</span><br>


</body></html>

6.代码到新的电脑电脑运行,把连接的ip修改成要连接电脑的ip,就可以连接打印了

输出代码

 

  var iDriverIndex=document.getElementById("Select02").value;
  var strAOPrinterIDandName=document.getElementById("Select03").value;

  LODOP.PRINT_INIT("测试AO打印");
  LODOP.SET_PRINTER_INDEX(iDriverIndex+','+strAOPrinterIDandName);
  LODOP.ADD_PRINT_TEXT(10,10,300,200,"这是纯文本行");
  LODOP.ADD_PRINT_HTM(30,10,"100%","80%","超文本横线:<hr>下面是二维码:");
  LODOP.ADD_PRINT_BARCODE(85,10,79,69,"QRCode","123456789012");
  LODOP.ADD_PRINT_IMAGE(0,0,"76mm","130mm","ceshi/test.png"); //打印图片  需要自行配置
  LODOP.On_Return=function(TaskID,Value){ alert("打印结果:"+Value); };
  LODOP.PRINT();

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sunsijia21983

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值