我想使用电子版中的A5横向设置将html文件直接打印到打印机

时间:2018-11-20 21:23:38

标签: javascript html node.js electron

我想使用A4横向设置将html文件直接打印到打印机。在该HTML文件中,我添加了此 @media印刷版{@page {size:A5横向; }} ,但不能正常工作,它总是返回A4纵向。请向任何人解释我如何达到我的要求。

let contentWindow = new BrowserWindow({
  webPreferences: {
    plugins: true
  }
})

contentWindow.once('ready-to-show', () => contentWindow.hide())

fileName = path.join(__dirname, './printtemp/print.html')
contentWindow.loadURL(fileName);

contentWindow.webContents.on('did-finish-load', () => {

  var printPDf = () => {
    contentWindow.webContents.print({ silent: true, printSelectionOnly: true });
  }
  setTimeout(printPDf, 3000)


});

当前结果: enter image description here

预期输出: enter image description here

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。我尝试了很多方法,但似乎没有达到预期的效果。
我有一个快速使用的解决方案。像您这样的解决方案正在打印A4尺寸,但只有一半!但您可以实现目标。我没有制作PDF,而只是打印了窗口。

添加A4尺寸而不是A5横向:

@page {
    size: A4;
}

html,
body {
    width: 210mm;
    height: 148mm;
    /* border-style: solid;
    border-width: 5px; */
}

确保在打印机的横向位置添加A5纸。希望这对您有所帮助,同时您找到正确的方法。