电子:Ubuntu上的图像文件(.png)静默打印



我正在用Electron制作一个基于Ubuntu的照片打印程序。

当我在Windows上制作时, 我将图像保存为PNG,并使用下面的代码调用Windows内置软件(shimgvw.dll(。

await execPromise(`rundll32.exe c:\windows\System32\shimgvw.dll,ImageView_PrintTo /pt "${process.cwd()}\saved_image.png" "MY_PRINTER_MODEL_NAME"`);

我应该在 Ubuntu 中做什么?

我要实现的是按按钮打印用户选择完成构图的照片。

当我进行搜索时,我只得到PDF文件的结果。

我想知道是否有任何模块或命令。 谢谢!

附言对不起,我的英语:(不好

您可以在 POSIX 和 Windows OS 上使用 Node.js、iojs 和 node-webkit 的 Native bind 打印机。

npm install printer --target_arch=ia32
npm install printer --target_arch=x64

假设您正在安装 1.4.5 电子。请查看版本以获取支持的电子版本

npm install printer --runtime=electron --target=1.4.5 --target_arch=x64
npm install printer --runtime=electron --target=1.4.5 --target_arch=ia32

用于安装后构建

npm install -g node-gyp
npm install printer --msvs_version=2013  --build-from-source=node_printer

要打印文件:

// use: node printFile.js [filePath printerName]
var printer = require("../lib"),
filename = process.argv[2] || __filename;
console.log('platform:', process.platform);
console.log('try to print file: ' + filename);
if( process.platform != 'win32') {
printer.printFile({filename:filename,
printer: process.env[3], // printer name, if missing then will print to default printer
success:function(jobID){
console.log("sent to printer with ID: "+jobID);
},
error:function(err){
console.log(err);
}
});
} else {
// not yet implemented, use printDirect and text
var fs = require('fs');
printer.printDirect({data:fs.readFileSync(filename),
printer: process.env[3], // printer name, if missing then will print to default printer
success:function(jobID){
console.log("sent to printer with ID: "+jobID);
},
error:function(err){
console.log(err);
}
});
}

最新更新