NW.JS - 如何使用chrome.desktopCapture保存用户桌面的PNG屏幕截图?

时间:2016-08-29 10:16:33

标签: javascript google-chrome-extension google-chrome-app node-webkit nw.js

我正在使用NW.JS和最新的Chrome Apps API功能。 在我的应用中,我需要将用户桌面的屏幕截图设为PNG文件,以便我可以从保存的图像中采样颜色。

我注意到Chrome API中有一个 chrome.desktopCapture 功能,但我尝试的所有示例都是通过网络捕获和流式传输一个桌面而不仅仅是保存桌面图像。有没有办法使用此API或Chrome API中的任何其他功能?

1 个答案:

答案 0 :(得分:0)

你可以做这样的事情

var win = nw.Window.get();
var fs = require('fs');

win.capturePage(function(buffer) {
    fs.writeFile(process.cwd() + '/screenshot.png', buffer, function (err) {
        if (err) {
            console.error(err);
        }

        console.log('Image is saved');
    });
}, { format : 'png', datatype : 'buffer'} );

或者更好的方法是使用https://github.com/fweinb/node-webkit-screenshot模块进行此