Электрон: Печать поля - PullRequest
0 голосов
/ 12 марта 2020

Когда я печатаю веб-контент с использованием электроники 7.1.7, на печатном листе появляется дополнительное поле.

Используя их документацию:

Объект полей (facultatif): marginType String (необязательно):

  • Может быть значением по умолчанию, none, printableArea или custom. Если выбран пользовательский,> вам также нужно будет указать верхний, нижний, левый и правый.

верхнее число (необязательно) - верхнее поле печатной веб-страницы в пикселях.

нижний номер (необязательно) - нижнее поле печатной веб-страницы в пикселях.

левый номер (необязательно) - левое поле печатной веб-страницы в пикселях.

правильный номер (необязательно) - правое поле печатной веб-страницы в пикселях.

Что я делаю:

webContents.print({
            printBackground: true,
            silent: true,
            deviceName: printer,
            margins: { marginType : 'none'}
        }, () => {
            // Close the printable window
            BrowserWindow.fromWebContents(webContents).close();
        });
@page {
   size: A4;
   margin:0;
}

Когда я с помощью принтера: « Microsoft Print To PDF », а затем распечатайте файл PDF, поля принтера будут переопределены, как ожидается Однако мне нужно, чтобы печать была беззвучной.

Что я пробовал:

  • Использовать marginType: 'custom'
margins: { marginType : 'custom', top : 0, bottom:0, left:0, right:0}
  • Сохранить pdf (используя webContents.printToPDF ()) и попробуйте напечатать pdf напрямую, используя: pdf-to-printer, электронное pdf-окно, node-pdf-printer

Но, похоже, ничего не происходит хитрость.

Есть некоторые "проблемы" на их github: https://github.com/electron/electron/issues/15375, https://github.com/electron/electron/issues/21167

Кто-то найдет решение или какой-то обходной путь?

Заранее спасибо.

...