html2canvas Speichern als JPEG ohne Öffnen im Browser

Ich versuche eine Screengrab-Schaltfläche zu erstellen, die ein Bild des Benutzers erstelltdocument.body.

Im Idealfall hätte der Benutzer dann die Möglichkeit, das Bild lokal als zu speichern.jpeg.

Ich bin kurz davor, die Funktionen zu erstellen, die ich mit demhtml2canvas Bibliothek.

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
    }
});

}

Um zu überprüfen, ob dies funktioniert, habe ich die geöffnetimg Variable in einem neuen Browserfenster. Das Bild wird nicht vollständig gerendert, und ich vermute, das liegt daran, dass es mehr als 30.000 Zeichen lang ist.

Wie könnte ich dem Benutzer eine Option geben, um die Zeichenfläche lokal nach dem zu speichern?onrendered Veranstaltung?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage