Unterstützung für Canvas toBlob() in Chrome 50 hinzugefügt

Paul Lewis

Das Canvas-Element erhält ab Chrome 50 ein Upgrade: Es unterstützt jetzt die Methode toBlob(). Das sind gute Neuigkeiten für alle, die Bilder auf Clientseite generieren und sie beispielsweise auf ihren Server hochladen oder zur späteren Verwendung in IndexedDB speichern möchten.

function sendImageToServer (canvas, url) {

    function onBlob (blob) {
    var request = new XMLHttpRequest();
    request.open('POST', url);
    request.onload = function (evt) {
        // Blob sent to server.
    }

    request.send(blob);
    }

    canvas.toBlob(onBlob);
}

Die Verwendung von toBlob() ist großartig, da Sie jetzt direkt mit den codierten Binärdaten arbeiten können, anstatt einen base64-codierten String zu bearbeiten, den Sie aus toDataURL() erhalten. Sie ist kleiner und passt tendenziell zu mehr Anwendungsfällen als eine Daten-URI.

Wenn Sie sich fragen, ob Sie Bild-Blobs in einem anderen Canvas-Kontext zeichnen können, lautet die Antwort - in Firefox und Chrome - Ja, unbedingt! Das ist mit der createImageBitmap() API möglich, die auch in Chrome 50 verfügbar ist.