Поддержка Canvas toBlob() добавлена ​​в Chrome 50

Начиная с Chrome 50, элемент Canvas получает обновление: теперь он поддерживает метод toBlob() ! Это отличная новость для всех, кто создает изображения на стороне клиента и хочет, скажем, загрузить их на свой сервер или сохранить в IndexedDB для использования в будущем.

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

Использование toBlob() отлично, потому что вместо манипулирования строкой в ​​кодировке Base64, которую вы получаете от toDataURL() , теперь вы можете напрямую работать с закодированными двоичными данными. Он меньше и подходит для большего числа случаев использования, чем URI данных.

Если вам интересно, можно ли рисовать изображения в другом контексте холста, ответ — в Firefox и Chrome — да, абсолютно! Вы можете сделать это с помощью API createImageBitmap() , который также доступен в Chrome 50.