Imprimer à partir de l'électron de l'application
Je suis en train d'utiliser le nœud de l'imprimante d'un électron de l'application, mais dès que j'ai ajouter les lignes d'utiliser l'imprimante, l'application se bloque vers le bas.
La console de sorties ce:
[1] 9860 segmentation fault (core dumped) node_modules/electron-prebuilt/dist/electron.
C'est l'application que je suis en cours d'exécution. J'ai seulement ajouté les lignes d'impression à la simple application exemple fourni sur les électrons de la documentation:
var app = require('app'); //Module to control application life.
var BrowserWindow = require('browser-window'); //Module to create native browser window.
var printer = require('printer');
//Report crashes to our server.
require('crash-reporter').start();
//Keep a global reference of the window object, if you don't, the window will
//be closed automatically when the JavaScript object is GCed.
var mainWindow = null;
//Quit when all windows are closed.
app.on('window-all-closed', function() {
//On OS X it is common for applications and their menu bar
//to stay active until the user quits explicitly with Cmd + Q
if (process.platform != 'darwin') {
app.quit();
}
});
//This method will be called when Electron has finished
//initialization and is ready to create browser windows.
app.on('ready', function() {
//Create the browser window.
mainWindow = new BrowserWindow({width: 800, height: 600});
//and load the index.html of the app.
mainWindow.loadUrl('file://' + __dirname + '/app/index.html');
//Open the devtools.
mainWindow.openDevTools();
printer.printDirect({data:"print from Node.JS buffer" //or simple String: "some text"
, printer:'HP-Deskjet-F4400-series' //printer name, if missing then will print to default printer
, type: 'TEXT' //type: RAW, TEXT, PDF, JPEG, .. depends on platform
, success:function(jobID){
console.log("sent to printer with ID: "+jobID);
}
, error:function(err){console.log(err);}
});
//Emitted when the window is closed.
mainWindow.on('closed', function() {
//Dereference the window object, usually you would store windows
//in an array if your app supports multi windows, this is the time
//when you should delete the corresponding element.
mainWindow = null;
});
});
Suis-je raté quelque chose?
J'ai essayé le nœud de l'imprimante sur son propre et j'ai réussi à imprimer certains charabia texte.
OriginalL'auteur leamasuero | 2015-08-28
Vous devez vous connecter pour publier un commentaire.
node-printer
utilisant les fixations et selon la docs:Je suppose que c'est pourquoi vous obtenez le
seg fault
. Essayez de construire le module à l'encontre de l'électron en-têtes comme indiqué dans les docs:npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'. npm ERR! This is most likely a problem with the printer package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node-gyp rebuild npm ERR! You can get their info via: npm ERR! npm owner ls printer npm ERR! There is likely additional logging output above.
Voir les docs, il y a aussi une autre façon en utilisant le nœud-gyp. peut-être cela peut vous aider.
OriginalL'auteur Yan Foto
Sinon, Vous pouvez également utiliser la ligne suivante
writeFile('output.pdf'...)
ne marche pas, mais au fond on ne!OriginalL'auteur Rohit Goyal
La
node-printer
module de code C++. Ce qui signifie que vous devez le compiler en utilisant la même version de nœud de l'électron à l'aide. C'est faisable en fait, mais c'est assez compliqué.D'autre part, l'Électron a déjà l'impression de l'API:
https://electronjs.org/docs/api/web-contents#contentsprintoptions-callback
Si cette api n'est pas suffisant et vous voulez continuer à tirer parti de la
node-printer
module laissez-moi savoir et je vais modifier cette réponse avec une plus longue réponse sur la façon de fourche et de fixernode-printer
de sorte qu'il est d'électrons compatible.node-printer
compatible avec les électrons nécessite de port àNAN 2
, est-ce correct?Ce que je veux dire, c'est que l'Électron utilise maintenant
node v4
et V8 api a changé beaucoup de choses.Ouais je pense que oui. J'ai eu une situation similaire avec un autre paquet et j'ai eu la fourche à la fourchette de mettre en œuvre les changements nécessaires pour obtenir la construction avec des électrons. La plupart des changements ont été superficielle... la plupart d'entre eux.
Le nœud de l'imprimante à ne pas travailler pour moi sur windows. C'est seulement réalisable si je veux imprimer un simple texte ou des données BRUTES. Acheter impression ne fonctionne pas tout JPEG ou PDF. Avez-vous testé sur windows ?
légendaire barbe btw
OriginalL'auteur justin.m.chase