您的位置:首页 > Web前端

Web 前端通过调用ActiveX实现LPT1端口小票机打印功能。

2013-05-25 16:35 721 查看
最近项目中发现Web前端通过javascript是无法实现调用LPT1端口进行特定格式的打印的。而直接采用浏览器的打印会导致打印的全部为乱码。

后经查阅各方资料可以采用调用ActiveX方法实现小票机特定格式的打印。

下面为具体方法:

<script type="text/javascript" language="javascript">
function print() {
try
{
var objfs=new ActiveXObject("Scripting.FileSystemObject");
var objprinter = objfs.CreateTextFile("LPT1:", true);
}catch(Error)
{
alert("无法获取Active插件,或者LPT1端口未连接打印机。错误信息:"+Error.Message);
return;
}
objprinter.Writeline("");
objprinter.Writeline("              小票              ");
objprinter.Writeline("———————————————————————————————");
objprinter.Writeline('<%=Model.NumberID %>');
objprinter.Writeline('门店编码:<%=Model.StoreCode%>');
objprinter.Writeline('门店名称:<%=ViewData["werks"]%>');
。
。
。
。
。
      }
</script>


注意:因为需要创建ActiveX控件,所以需要对IE的安全级别进行调整。默认IE对不安全的ActiveX控件是不允许创建的。

具体设置如下:IE——》工具——》Internet选项——》安全——》Inertnet——》自定义级别 ,找到如下选项默认为禁用,改为启用,然后保存。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: