PrintScreen JavaScript
by Elvis de Freitas
JavaScript
function printScreen(){
let canvas = document.createElement("canvas");
navigator.mediaDevices.getDisplayMedia().then(stream => {
// Grab frame from stream
let track = stream.getVideoTracks()[0];
let capture = new ImageCapture(track);
capture.grabFrame().then(bitmap =>
{
// Stop sharing
track.stop();
// Draw the bitmap to canvas
canvas.width = bitmap.width;
canvas.height = bitmap.height;
canvas.getContext('2d').drawImage(bitmap, 0, 0);
// Grab blob from canvas
canvas.toBlob(blob => {
console.log('output blob:', blob);
var blobUrl = URL.createObjectURL(blob);
var link = document.createElement("a");
link.href = blobUrl;
link.download = "image.jpg";
link.innerText = "Click here to download the file";
document.body.appendChild(link);
document.querySelector('a').click();
});
});
})
.catch(e => console.log(e));
}
printScreen();