TSC打印机,利用javascript实现连续扫码自动打印,配置说明

打印机 专栏收录该内容
1 篇文章 0 订阅

TSC打印机,利用javascript打印配置说明

页面预览:
在这里插入图片描述
页面代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 
<title>SynergyGroups Print</title>
<style type="text/css">
	
	body{
	width:99%;
	height:100%;
	padding:0;
	margin:0;
	border:0;
	}
	fieldset{
	
	position:relative;
	border:1px solid red;
	height:90%;
	width:90%;
	left:5%;
	top:100px;
	}
	
	#param{
	width:100%;
	height:60%;
	border:0;
	background:black;
	}
	#param tr{
	width:100%;
	border:0;
	background:white;
	}
	#param th{
	width:40%;
	border:0;
	background:white;
	}
	#param td{
	width:60%;
	border:0;
	margin:0;
	}
	#param td select{
	padding:0;
	width:100%;
	height:100%;
	border:0;
	text-align-last:center;
	}
	#param td input{
	padding:0;
	width:100%;
	height:100%;
	border:0;
	text-align:center;
	}
	
	#save{
	width:100%;
	border:1px solid black;
	border-collapse:collapse;
	}
	#save tr{
	width:100%;
	border:0;
	background:white;
	}
	#save th{
	width:40%;
	border:0;
	height:40px;
	background:white;
	}
	#save td{
	width:60%;
	height:40px;
	border:0;
	margin:0;
	}
	#save input{
	padding:0;
	width:100%;
	height:100%;
	border:1px solid black;
	text-align:center;
	}
	
	
	
</style>
<script language = 'javascript'>


		 window.onload = function(){
		 	Qd();
		 	Bm();
		 	var str = getcook();
		 	if(str!=null){
		 		var arr = str.split(",");
		 		document.getElementById("dpi").value = arr[0];
	 			document.getElementById("bits").value = arr[1];
	 			document.getElementById("qudong").value = arr[2];
	 			document.getElementById("bianma").value = arr[3];
	 			document.getElementById("ifPrint_txt").value = arr[4];
	 			document.getElementById("rotate").value = arr[5];
	 			document.getElementById("tab_speed").value = arr[6];
	 			document.getElementById("tab_density").value = arr[7];
	 			document.getElementById("paper_length").value = arr[8];
	 			document.getElementById("paper_height").value = arr[9];
	 			document.getElementById("tab_height").value = arr[10];
	 			document.getElementById("tab_xstart").value = arr[11];
	 			document.getElementById("tab_ystart").value = arr[12];
	 		}
	 		
	 		document.getElementById("data").focus();
		 }
		 
 		 var qdarr = new Array("TSC Alpha-2R","TSC Alpha-3R","TSC Alpha-4L","TSC Alpha-4L-D-W","TSC DA200","TSC DA210","TSC DA220","TSC DA300","TSC DA310",
 		 						  "TSC DA320","TSC E200","TSC E210","TSC E300","TSC E310","TSC M23","TSC MA240","TSC MA340","TSC MA640","TSC ME240","TSC ME340",
 		 						  "TSC MH200","TSC MH240","TSC MH300","TSC MH340","TSC MH600","TSC MH640","TSC MX240","TSC MX240P","TSC MX340","TSC MX340P",
 		 						  "TSC MX640","TSC MX640P","TSC P200","TSC P300","TSC PE210","TSC PE310","TSC T-200","TSC T-200A","TSC T-200E","TSC T-300",
 		 						  "TSC T-300A","TSC T-300E","TSC TA200","TSC TA210","TSC TA300","TSC TA310","TSC TC200","TSC TC210","TSC TC300","TSC TC310",
 		 						  "TSC TDP-225","TSC TDP-242","TSC TDP-243","TSC TDP-243E","TSC TDP-243M","TSC TDP-244","TSC TDP-244CE","TSC TDP-244ME",
 		 						  "TSC TDP-245","TSC TDP-245 Plus","TSC TDP-245 Pro","TSC TDP-245C","TSC TDP-246CJ","TSC TDP-247","TSC TDP-324","TSC TDP-324W",
 		 						  "TSC TDP-342","TSC TDP-342M","TSC TDP-343","TSC TDP-345","TSC TDP-643","TSC TDP-643 Plus","TSC TDP-643R Plus","TSC TE200",
 		 						  "TSC TE200e","TSC TE210","TSC TE244","TSC TE300","TSC TE300e","TSC TE310","TSC TE344","TSC TE4502","TSC TE4503","TSC TTP-225",
 		 						  "TSC TTP-242","TSC TTP-243","TSC TTP-243 Plus","TSC TTP-243 Pro","TSC TTP-243E","TSC TTP-243E Plus","TSC TTP-243E Pro",
 		 						  "TSC TTP-243M","TSC TTP-244","TSC TTP-244 Plus","TSC TTP-244 Pro","TSC TTP-244CE","TSC TTP-244E","TSC TTP-244M Plus",
 		 						  "TSC TTP-244M Pro","TSC TTP-244ME","TSC TTP-244ME Plus","TSC TTP-244ME Pro","TSC TTP-245","TSC TTP-245 Plus","TSC TTP-245C",
 		 						  "TSC TTP-245M","TSC TTP-246M","TSC TTP-246M Plus","TSC TTP-246M Pro","TSC TTP-247","TSC TTP-248M","TSC TTP-268M","TSC TTP-286MT",
 		 						  "TSC TTP-323","TSC TTP-342","TSC TTP-342 Plus","TSC TTP-342 Pro","TSC TTP-342E Pro","TSC TTP-342M","TSC TTP-342M Plus",
 		 						  "TSC TTP-342M Pro","TSC TTP-342ME Pro","TSC TTP-343","TSC TTP-343 Plus","TSC TTP-343C","TSC TTP-343CE","TSC TTP-343E",
 		 						  "TSC TTP-343M","TSC TTP-344","TSC TTP-344C","TSC TTP-344M","TSC TTP-344M Plus","TSC TTP-344M Pro","TSC TTP-345","TSC TTP-346M",
 		 						  "TSC TTP-346M Pro","TSC TTP-346MT","TSC TTP-346MU","TSC TTP-366M","TSC TTP-368MT","TSC TTP-384M","TSC TTP-384MT","TSC TTP-542",
 		 						  "TSC TTP-644M","TSC TTP-644M Pro","TSC TTP-644MT","TSC TTP-644MU","TSC TTP-2410","TSC TTP-2410M","TSC TTP-2410M Pro",
 		 						  "TSC TTP-2410MT","TSC TTP-2410MU","TSC TTP-2412M","TSC TTP-2610MT","TSC TX200","TSC TX200e","TSC TX200h","TSC TX300","TSC TX300e",
 		 						  "TSC TX300h","TSC TX600");
 
 		 
 		 var codearr = new Array("128","128M","EAN128","25","25C","39","39C","93","EAN13","EAN13+2","EAN13+5","EAN8","EAN8+2","EAN8+5","CODA","POST","UPCA",
 		 						 "UPCA+2","UPCA+5","UPCE","UPCE+2","UPCE+5");
 		 
 		 //驱动设置
 		 function Qd(){
 		 	var select = document.getElementById("qudong");
 		 	select.options.length=0;
			for(var i=0;i<qdarr.length;i++){
				if(qdarr[i]!=null&&qdarr[i]!=""){
					select.options.add(new Option(qdarr[i],qdarr[i]));
				}
			}
 		 	
 		 }
 		 //编码设置
 		 function Bm(){
 		 	var select = document.getElementById("bianma");
 		 	select.options.length=0;
			for(var i=0;i<qdarr.length;i++){
				if(codearr[i]!=null&&codearr[i]!=""){
					select.options.add(new Option(codearr[i],codearr[i]));
				}
			}
 		 }
 		 
 		 //打印机分辨率
 		 function Get_Dpi(){
 		 	if(document.getElementById("dpi").value=='300'){
 		 		return 12;
 		 	}else{
 		 		return 8;
 		 	}
 		 }
 		 //条形码高度
 		 function Tab_height(tmp){
 		 	var dpi = Get_Dpi();
 		 	if(tmp.value%dpi==0){
 		 		document.getElementById("tab_height_mm").value = tmp.value/dpi;
 		 	}else{
 		 		alert("注意:当前点数无法转换为完整mm");
 		 		document.getElementById("tab_height_mm").value = tmp.value/dpi;
 		 	}
 		 }
 		 function Tab_height_mm(tmp){
 		 	var dpi = Get_Dpi();
 		 	document.getElementById("tab_height").value = Math.round(tmp.value*dpi);
 		 }
 		 //横向起始点
 		 function X_start(tmp){
 		 	var dpi = Get_Dpi();
 		 	if(tmp.value%dpi==0){
 		 		document.getElementById("tab_xstart_mm").value = tmp.value/dpi;
 		 	}else{
 		 		alert("注意:当前点数无法转换为完整mm");
 		 		document.getElementById("tab_xstart_mm").value = tmp.value/dpi;
 		 	}
 		 }
 		 function X_start_mm(tmp){
 		 	var dpi = Get_Dpi();
 		 	document.getElementById("tab_xstart").value = Math.round(tmp.value*dpi);
 		 }
 		 //纵向起始点
 		 function Y_start(tmp){
 		 	var dpi = Get_Dpi();
 		 	if(tmp.value%dpi==0){
 		 		document.getElementById("tab_ystart_mm").value = tmp.value/dpi;
 		 	}else{
 		 		alert("注意:当前点数无法转换为完整mm");
 		 		document.getElementById("tab_ystart_mm").value = tmp.value/dpi;
 		 	}
 		 }
 		 function Y_start_mm(tmp){
 		 	var dpi = Get_Dpi();
 		 	document.getElementById("tab_ystart").value = Math.round(tmp.value*dpi);
 		 }
 		 
 		//利用cookie保存配置
 		
 		function Save(){
 				
 			var dpi = document.getElementById("dpi").value;
 			var bits = document.getElementById("bits").value;
 			var qudong = document.getElementById("qudong").value;
 			var bianma = document.getElementById("bianma").value;
 			var ifPrint_txt = document.getElementById("ifPrint_txt").value;
 			var rotate = document.getElementById("rotate").value;
 			var tab_speed = document.getElementById("tab_speed").value;
 			var tab_density = document.getElementById("tab_density").value;
 			var paper_length = document.getElementById("paper_length").value;
 			var paper_height = document.getElementById("paper_height").value;
 			var tab_height = document.getElementById("tab_height").value;
 			var tab_xstart = document.getElementById("tab_xstart").value;
 			var tab_ystart = document.getElementById("tab_ystart").value;
 			
 			var str = dpi + "," + bits + "," + qudong + "," + bianma + "," + ifPrint_txt + "," + rotate + "," + tab_speed + "," + tab_density + "," + 
 					  paper_length + "," + paper_height + "," + tab_height + "," + tab_xstart + "," + tab_ystart;
 			setcook(str);
 		}
 		
 		function setcook(temp){
             var stri = temp;//stri用“,”拼接的字符串
             setCookie('result',stri,365);                        
        };
        function getcook(){
             if(checkCookie()){
             var stri = getCookie('result');
             return stri;  
            }           
        };       
        function setCookie(c_name,value,expiredays){
            var exdate=new Date();
            exdate.setDate(exdate.getDate()+expiredays);
            document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
        }
         
        function getCookie(c_name){
            if(document.cookie.length>0){
                c_start=document.cookie.indexOf(c_name + "=");
                  if(c_start!=-1){ 
                     c_start=c_start + c_name.length+1;
                     c_end=document.cookie.indexOf(";",c_start);
                  if(c_end==-1) c_end=document.cookie.length;
                     return unescape(document.cookie.substring(c_start,c_end));
                } 
              }
            return "";
        }       
        function checkCookie(){
            var username=getCookie('result');
            if(username!=null && username!=""){return true;}
            else{
                return false;
            }
        }
		
 		 
 		 
 		 function keyup_submit(e){ 
			 var evt = window.event || e; 
			 if (evt.keyCode == 13){
			    //回车事件
			    TestFun();
			 }
		 }
 		 
 		 
 		 //打印开始
         function TestFun()
         {
         
         	var qudong = document.getElementById("qudong").value;
 			var bianma = document.getElementById("bianma").value;
 			var ifPrint_txt = document.getElementById("ifPrint_txt").value;
 			var rotate = document.getElementById("rotate").value;
 			var tab_speed = document.getElementById("tab_speed").value;
 			var tab_density = document.getElementById("tab_density").value;
 			var paper_length = document.getElementById("paper_length").value;
 			var paper_height = document.getElementById("paper_height").value;
 			var tab_height = document.getElementById("tab_height").value;
 			var tab_xstart = document.getElementById("tab_xstart").value;
 			var tab_ystart = document.getElementById("tab_ystart").value;
 			var bar_1 = document.getElementById("bar_1").value;
         	var bar_2 = document.getElementById("bar_2").value;
         	var data = document.getElementById("data").value;
         	
         	
         
			var TSCObj
			TSCObj = new ActiveXObject("TSCActiveX.TSCLIB")
			TSCObj.ActiveXopenport(qudong)
			TSCObj.ActiveXsendcommand("SIZE "+paper_length+" mm, "+paper_height+" mm")
			TSCObj.ActiveXsendcommand("SPEED "+tab_speed)
			TSCObj.ActiveXsendcommand("DENSITY "+tab_density)
			TSCObj.ActiveXsendcommand("DIRECTION 1")
			TSCObj.ActiveXsendcommand("SET TEAR ON")
			TSCObj.ActiveXclearbuffer()
			TSCObj.ActiveXbarcode(tab_xstart, tab_ystart, bianma, tab_height, ifPrint_txt, rotate, bar_1, bar_2, data)
			TSCObj.ActiveXprintlabel("1","1")
			TSCObj.ActiveXcloseport()
			
			
			document.getElementById("data").value = "";
			
         }
 
</script>
 
</head>
 
 
 
<body>
 
<object id="MYAvtiveX"  classid="clsid:0BF5203E-A4C7-4E4F-A637-4B29BAE979FD"> </object> 

<fieldset>
<legend>扫码打印系统_200 DPI,1 点=1/8 mm, 300 DPI,1 点=1/12 mm</legend>
	<div style="padding:10px 20px;">
	
		<table id="param">
		<tr><th>打印机分辨率_DPI:</th><td colspan="2"><select id="dpi"><option value="300">300</option><option value="200">200</option></select></td></tr>
		<tr><th>系统位数:</th><td colspan="2"><select id="bits"><option value="64">64位</option><option value="32">32位</option></select></td></tr>
		<tr><th>驱动选择:</th><td colspan="2"><select id="qudong"></select></td></tr>
		<tr><th>编码方式:</th><td colspan="2"><select id="bianma"></select></td></tr>
		<tr><th>打印内容:</th><td colspan="2"><select id="ifPrint_txt"><option value="1">是</option><option value="0">否</option></select></td></tr>
		<tr><th>旋转角度:</th><td colspan="2"><select id="rotate"><option value="0">0</option><option value="90">90</option>
															    <option value="180">180</option><option value="270">270</option></select></td></tr>
		<tr><th>打印速度:</th><td colspan="2"><input id="tab_speed" value="4"/></td></tr>
		<tr><th>打印浓度:</th><td colspan="2"><input id="tab_density" value="12"/></td></tr>
		
		<tr><th>条码纸尺寸:</th><td style="width:30%;"><input placeholder="长" id="paper_length"/></td>
						     <td style="width:30%;"><input placeholder="高" id="paper_height"/></td></tr>
		<tr><th>条形码高度:</th><td style="width:30%;"><input id="tab_height" onchange="Tab_height(this);"/></td>
							 <td style="width:30%;"><input id="tab_height_mm" placeholder="mm" onchange="Tab_height_mm(this);"/></td></tr>
		<tr><th>横向起始点:</th><td style="width:30%;"><input id="tab_xstart" onchange="X_start(this);"/></td>
							 <td style="width:30%;"><input id="tab_xstart_mm" placeholder="mm" onchange="X_start_mm(this);"/></td></tr>
		<tr><th>纵向起始点:</th><td style="width:30%;"><input id="tab_ystart" onchange="Y_start(this);"/></td>
							 <td style="width:30%;"><input id="tab_ystart_mm" placeholder="mm" onchange="Y_start_mm(this);"/></td></tr>
		<tr><th>条码窄Bar比例因子:</th><td style="width:30%;"><input id="bar_1" value="2" /></td>
							 	   <td style="width:30%;"><input id="bar_2" value="2"/></td></tr>
		
		
		</table>
		
		<br/> 
		<table id="save">
		 <tr>
		 	<th><input type="button" value="保存设置" onclick="Save();"/></th><td width="20%"><input id="data" onkeydown="keyup_submit(event);"/> </td>
		 </tr>    
		</table>
	</div>    
    
    
</fieldset>
 
</body>
 
</html>

参数说明:

如需保存设置,参数修改完成后单击保存,参数保存在浏览器上,如果清空浏览器缓存参数需重新设置

已默认设置,谨慎修改:
经过测试,线上打印机分辨率应该是300,已默认
电脑操作系统位数:不用管,已默认64(在前面安装驱动的时候才有用)
编码方式:根据条形码实际编码设置,一般为128即可,已默认
是否打印内容:0-不打印,1-打印,已默认
旋转角度:0-不转转,已默认
打印速度:4,已默认
打印浓度:12,已默认

需自定义设置:
驱动:要与前面安装的驱动名称保持一致!!!否则无法打印
条码纸尺寸:长、高(宽),根据实际尺寸填写,单位mm
条形码高度:调整和内容的占比用,实际效果以点数为准,根据打印机分辨率换算,前

            面显示点数,后面为对应的mm尺寸,无论先写入哪个参数,程序会自动换算出对应的点数或者mm数。
		    如dpi = 300   1点 = 1/12 mm
			所以,当前面写入12时,实际尺寸为12 * 1/12 = 1 mm

横向起始点:开始打印条码位置距条码纸左侧距离,实际效果以点数为准,原理与上面

           所讲一样,不在赘述。

横向起始点:开始打印条码位置距条码纸顶部距离,实际效果以点数为准,原理与上面

           所讲一样,不在赘述。

条码窄Bar比例因子:设置条码黑白间隙用,根据标签纸大小和条形码长短而设定,达

                    到条码铺满标签纸的目的。具体设置以打印效果为准,越大条码越宽,反之条码越窄。默认说明书的值:2。

所有参数设置完成,注意保存,否则需要再次设置,在后面输入框扫码即可

TSC驱动下载及安装,浏览器配置:

A.驱动程序:http://www.chinatsc.cn/SC/support/support_download/TTP-243_Pro_Series/Utilities
在这里插入图片描述
安装:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
驱动程序安装完成后,注册DLL文件。
B.库文件下载:http://www.chinatsc.cn/SC/support/support_download/TTP-243_Pro_Series/Utilities

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
右键计算机属性,查看电脑位数

在这里插入图片描述
在这里插入图片描述
文件复制完成后,按住shift键,然后右击空白处,在弹出窗口如图单击:
在这里插入图片描述
在打开的命令窗口输入:Regsvr32 TSCActiveX.dll,然后回车,如图所示,弹出成功
的提示后单击确定。
在这里插入图片描述
在这里插入图片描述
C.本系统仅支持IE浏览器,且需要做相应配置,打开IE
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
打开自定义,下拉找到Activex插件和控件项,默认是禁用的,全部启用;然后将重置为设置成:中;最后单击确定。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置完成,在IE打开网页,即可连续扫描打印

  • 0
    点赞
  • 0
    评论
  • 3
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值