如何使用 node-webkit 截取屏幕截图
How to take screenshot with node-webkit
全部:
我构建了一个交互式图表应用程序 运行 作为 node-webkit 应用程序。我需要帮助的一件事是:
假设如果用户点击并且图表的视觉效果发生变化,我如何使用 node-webkit 截取该页面的屏幕截图以实时反映变化。
谢谢
我不确定屏幕截图将如何帮助反映图表中的变化,但这里有一个函数可以截取当前 nw.js window(仅限可见区域)的屏幕截图,并且将其存储为 png。
您需要使用 Window.capturePage 函数(此处提供更多文档:https://github.com/nwjs/nw.js/wiki/window#windowcapturepagecallback--image_format-config_object-)。
请注意,这使用 v0.9.3 中引入的 config_object 参数将格式指定为 png 并将图像返回到缓冲区中。
function takeSnapshot() {
var gui = require('nw.gui');
var win = gui.Window.get();
win.capturePage(function(buffer)
{
require('fs').writeFile('screenshot.png', buffer, function (err) {
if (err) throw err;
console.log('It\'s saved!');
});
}, { format : 'png', datatype : 'buffer'} );
}
全部:
我构建了一个交互式图表应用程序 运行 作为 node-webkit 应用程序。我需要帮助的一件事是:
假设如果用户点击并且图表的视觉效果发生变化,我如何使用 node-webkit 截取该页面的屏幕截图以实时反映变化。
谢谢
我不确定屏幕截图将如何帮助反映图表中的变化,但这里有一个函数可以截取当前 nw.js window(仅限可见区域)的屏幕截图,并且将其存储为 png。
您需要使用 Window.capturePage 函数(此处提供更多文档:https://github.com/nwjs/nw.js/wiki/window#windowcapturepagecallback--image_format-config_object-)。
请注意,这使用 v0.9.3 中引入的 config_object 参数将格式指定为 png 并将图像返回到缓冲区中。
function takeSnapshot() {
var gui = require('nw.gui');
var win = gui.Window.get();
win.capturePage(function(buffer)
{
require('fs').writeFile('screenshot.png', buffer, function (err) {
if (err) throw err;
console.log('It\'s saved!');
});
}, { format : 'png', datatype : 'buffer'} );
}