Skip to content
This repository was archived by the owner on Oct 18, 2024. It is now read-only.

Commit 6ac9aa7

Browse files
authored
Return PDF-file as base64 string
1 parent f0448b3 commit 6ac9aa7

File tree

1 file changed

+11
-14
lines changed

1 file changed

+11
-14
lines changed

src/server/api/system.ts

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import express from 'express'
22
import {BrowserWindow, systemPreferences} from 'electron'
3-
import {writeFile} from 'fs'
43
const router = express.Router();
54

65
router.get('/can-prompt-touch-id', (req, res) => {
@@ -49,26 +48,24 @@ router.post('/print', async (req, res) => {
4948
});
5049

5150
router.post('/print-to-pdf', async (req, res) => {
52-
const {path, html} = req.body;
51+
const {html} = req.body;
5352

5453
let printWindow = new BrowserWindow({
5554
show: false,
5655
});
5756

5857
printWindow.webContents.on('did-finish-load', () => {
59-
printWindow.webContents.printToPDF({}).then(data => {
60-
writeFile(path, data, (e) => {
61-
if (e) throw error;
62-
});
58+
printWindow.webContents.printToPDF({'transferMode': 'ReturnAsBase64'}).then(data => {
59+
printWindow.close();
60+
res.json({
61+
result: data.toString('base64'),
62+
});
63+
}).catch(e => {
64+
printWindow.close();
6365

64-
printWindow.close();
65-
res.sendStatus(200);
66-
}).catch(e => {
67-
printWindow.close();
68-
69-
res.status(400).json({
70-
error: e.message,
71-
});
66+
res.status(400).json({
67+
error: e.message,
68+
});
7269
});
7370
});
7471

0 commit comments

Comments
 (0)