window系统电脑或平板上的electron静默打印, 2018年10月更新

最近有个需求,在window平板上实现打印,用户在平板上一顿操作之后,生成一个组合的页面,并将页面上的内容打印到纸张上带走。

首先需要在main.js里面添加如下代码,在主进程中,侦听渲染进程的打印事件。

const ipcMain = require('electron').ipcMain;

ipcMain.on("print", (event, arg) => {
	 
	//mainWindow 是打开的窗体
	mainWindow.webContents.print({
		silent: true, //静默
		printBackground: false, //是否打印网页背景
		deviceName: ''
	}, function(error) {

		
	})
});

在渲染进程中,需要使用以下代码。

	const ipcRenderer = require('electron').ipcRenderer;
	ipcRenderer.send('print', '');

如果不需要打印整个页面,可以考虑尝试将要打印的内容临时替换页面内容。

window.document.body.innerHTML=bdhtml;

我这个项目里,要把网页上一个异形区域打到胶版纸上,实际打出的大小受到网页大小/打印机设置/纸张大小三方面影响,如果你也有这种个性化打印需求的话,可以再探讨。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值