简单的js在html页面打印机,在javaScript中如何连接打印机
下面我就为大家分享一篇javaScript 链接打印机,打印小票的实例,具有很好的参考价值,希望对大家有所帮助。
如下所示:
function doPrint(){
bdhtml=window.document.body.innerHTML;
sprnstr="";
eprnstr="";
prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));
window.document.body.innerHTML=prnhtml;
window.print();
top.layer.closeAll();
}
function closes (){
top.layer.closeAll();
}
function downPdf(){
document.getElementById("dayin").style.display = "none";
document.getElementById("baocun").style.display = "none";
html2canvas(document.body, {
onrendered:function(canvas) {
var contentWidth = canvas.width;
var contentHeight = canvas.height;
//一页pdf显示html页面生成的canvas高度;
var pageHeight = contentWidth / 592.28 * 841.89;
//未生成pdf的html页面高度
var leftHeight = contentHeight;
//pdf页面偏移
var position = 0;
//a4纸的尺寸[595.28,841.89],html页面生成的canvas在pdf中图片的宽高
var imgWidth = 595.28;
var imgHeight = 592.28/contentWidth * contentHeight;
var pageData = canvas.toDataURL('image/jpeg', 1.0);
var pdf = new jsPDF('', 'pt', 'a4');
//有两个高度需要区分,一个是html页面的实际高度,和生成pdf的页面高度(841.89)
//当内容未超过pdf一页显示的范围,无需分页
if (leftHeight < pageHeight) {
pdf.addImage(pageData, 'JPEG', 0, 0, imgWidth, imgHeight );
} else {
while(leftHeight > 0) {
pdf.addImage(pageData, 'JPEG', 0, position, imgWidth, imgHeight)
leftHeight -= pageHeight;
position -= 841.89;
//避免添加空白页
if(leftHeight > 0) {
pdf.addPage();
}
}
}
pdf.save(document.getElementById("emNo").innerText+"("+document.getElementById("dt").innerText+').pdf');
}
})
document.getElementById("baocun").style.display = "";
document.getElementById("dayin").style.display = "";
}
打印
保存
新XXXXX物业服务中心 | |||||||
收费单据 | |||||||
收票类型:电费 | 缴费日期: | ${emfee.dt} | |||||
户名 | ${emfee.userName} | 表号 | ${emfee.emNo} | 房号 | ${emfee.num} | ||
起止时间 | ${emfee.emDt}至${emfee.startDt} | 缴费金额 | ${emfee.tranMoney} | 倍率 | ${emfee.emRate} | ||
用电量 | 时段 | 起止表码 | 倍率前用量 | 本次用量 | 单价 | 本次电费 | |
尖 | ${emfee.mosaicJian} | ${emfee.jianQuantity} | ${emfee.blJian} | ${emfee.jian} | ${emfee.jianFee} | ||
峰 | ${emfee.mosaicFeng} | ${emfee.fengQuantity} | ${emfee.blFeng} | ${emfee.feng} | ${emfee.fengFee} | ||
平 | ${emfee.mosaicPing} | ${emfee.pingQuantity} | ${emfee.blPing} | ${emfee.ping} | ${emfee.pingFee} | ||
谷 | ${emfee.mosaicGu} | ${emfee.guQuantity} | ${emfee.blGu} | ${emfee.gu} | ${emfee.guFee} | ||
总 | ${emfee.mosaicZong} | ${emfee.quantity} | ${emfee.blquantity} | —— | ${emfee.electFee} | ||
电费 | 上次剩余(元) | 本期已用(元) | 本次缴费(元) | 本次剩余(元) | |||
${emfee.lastRemainQ} | ${emfee.electFee} | ${emfee.tranMoney} | ${emfee.remainQ} | ||||
收款人: | 付款人: |
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
简单的js在html页面打印机,在javaScript中如何连接打印机相关推荐
- js实现html模板继承,理解JavaScript中的原型和继承
本文主要讲了原型如何在JavaScript中工作,以及如何通过[Prototype]所有对象共享的隐藏属性链接对象属性和方法:以及如何创建自定义构造函数以及原型继承如何工作以传递属性和方法值. 介绍 ...
- 前端系统化学习【JS篇】:(四)Javascript中的数据类型
前言 细阅此文章大概需要 3分钟\color{red}{3分钟}3分钟左右 本篇中简述\color{red}{简述}简述了: Javascript中常用的数据类型 基本数据类型 引用数据类型 数据类型 ...
- win7连接共享打印机报错:windows连接打印机失败0X0000011b
这种情况一般是win10是连接打印机的.客户机是win7.而win10最近肯定更新了.所以导致win7连不上win10的打印机 那么就要去win10主机那里删除掉最近安装的更新文件.把最近安装的全删了 ...
- Win11无法连接打印机?Win11电脑无法连接打印机的解决方法
Win11无法连接打印机?近期有部分Win11用户在使用打印机时出现了电脑无法连接打印机的情况,导致无法正常打印,这是怎么回事呢?那么有没有什么办法恢复呢?下面小编就给大家分享一下详细的解决方法,有需 ...
- JS For循环教程–如何在JavaScript中遍历数组
This article will provide you with a solid understanding of exactly how to iterate over an Array dat ...
- 获取进入html页面的时间,javascript中怎么获取当前时间?
在web开发中,通过js获取时间非常的常用.下面本篇文章就来给大家介绍一下使用javascript获取当前时间的方法,希望对大家有所帮助. 在javascript中可以使用Date对象中的Date() ...
- js 页面输出html,javascript中如何输出?
面对刚刚学习JavaScript的同学们,你是否知道JavaScript如何输出?下面本篇文章就来给大家介绍一下javascript的几种输出方式,希望对大家有所帮助. JavaScript的输出方式 ...
- html页面取js里面的值,如何在javascript中获取HTML元素的样式值?
这个element.style属性只让您知道定义为内联在该元素(以编程方式或在元素的样式属性中定义)中,您应该获得计算样式. 用跨浏览器的方式做它并不容易,IE有自己的方式,通过element.cur ...
- windows无法连接到打印机?三个方法连接打印机(Win10系统)
在日常办公中,我们经常会用到打印机.一般情况下,打印机要与电脑连接才可以使用.有很多用户反馈,windows无法连接到打印机,这是怎么回事呢?请看文章是如何解决打印机无法连接到计算机的问题! 操作环境 ...
- html页面遍历数组,JavaScript中利用for循环遍历数组
先看一段代码 Document // 一个普通的数组 var arr =[3,5,2,6]; // 普通的for 循环遍历 for(var i = 0 ; i < arr.length; i++ ...
最新文章
- python入门小练习_python入门题目小练
- 35岁真的是程序员的坎儿吗?
- 123 Best time to buy and sell stock iii
- 如何查看IIS的80端口被占用?
- git 添加公钥的命令
- Java 类加载机制概述、类加载流程、自定义类加载器
- android极光推送设置消息类型,详解极光推送的 4 种消息形式—— Android 篇
- 电脑恶意软件删除方法
- Linux学习笔记-exec族函数,system函数,popen函数的用法
- Redisson(2-3)分布式锁实现对比 VS Java的ReentrantLock的FairLock
- C语言_关于文件内容删除的两个方法总结
- 矩阵论(2)——线性表示及基与坐标
- 安全修改postgresql用户密码
- 软件测试的方法和步骤
- 企业快速建站改选多少价位的程序模板合适
- BZOJ 1787 [Ahoi2008]Meet 紧急集合——LCA
- AD10 如何在规则中设置过孔铺铜直连方式
- mycat分库分表配置
- Vue脚手架安装常用命令
- 风险评估中的渗透测试