Как динамически передать настройки страницы в основной процесс из процесса рендеринга в ElectronJS?
Я хотел передать параметры страницы динамически из процесса рендеринга в основной процесс. По сути, функция printToPDF в основном процессе должна принимать объект pageSettings и печатать соответственно. Намерение состоит в том, чтобы динамически установить ширину страницы.
Код вкратце выглядит следующим образом. Но это не работает.
//Sending from Renderer Process
ipc.send("readyToPrint", page_settings);
//Receiving at Main Process
ipc.on("readyToPrint", (event, page_settings) => {
const pdfPath = path.join(os.tmpdir(), 'print.pdf');
/* Default Settings
var pageSettings = {
'marginsType': 1,
'printBackground': true,
'pageSize': {
"height": 297000,
"width": 72000
}
}
*/
var pageSettings = page_settings;
workerWindow.webContents.printToPDF(pageSettings, function (error, data) {
if (error) throw error
fs.writeFile(pdfPath, data, function (error) {
if (error) {
throw error
}
shell.openItem(pdfPath);
})
})
});