html2canvas salvando como um jpeg sem abrir no navegador
Eu estou tentando criar um botão screengrab que cria uma imagem do usuáriodocument.body
.
Idealmente, o usuário teria uma opção para salvar a imagem localmente como.jpeg
.
Estou chegando perto de criar a funcionalidade que preciso usando ohtml2canvas biblioteca.
function screenGrabber() {
html2canvas([document.body], {
logging: true,
useCORS: true,
onrendered: function (canvas) {
img = canvas.toDataURL("image/jpg");
console.log(img.length);
console.log(img);
window.location.href=img; // it will save locally
}
});
}
Para verificar se isso está funcionando, estive abrindo oimg
variável em uma nova janela do navegador. A imagem não renderiza completamente e eu estou supondo que é porque o comprimento é superior a 30.000 caracteres.
Como é melhor dar ao usuário uma opção para salvar a tela localmente após aonrendered
evento?