Elemen kanvas akan diupgrade mulai Chrome 50: sekarang mendukung metode toBlob()
. Ini adalah berita bagus bagi siapa saja yang membuat gambar di sisi klien, yang ingin -- katakanlah -- mengunggahnya ke server mereka, atau menyimpannya di IndexedDB untuk digunakan di masa mendatang.
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);
}
Menggunakan toBlob()
sangat bagus, karena daripada memanipulasi string berenkode base64 yang Anda dapatkan dari toDataURL()
, kini Anda dapat menggunakan data biner yang dienkode secara langsung. Ukurannya lebih kecil, dan cenderung sesuai dengan lebih banyak kasus penggunaan daripada URI data.
Jika Anda bertanya-tanya apakah Anda dapat menggambar blob gambar ke konteks kanvas lain, jawabannya adalah - di Firefox dan Chrome - ya, tentu saja! Anda dapat melakukan ini dengan createImageBitmap()
API, yang juga akan tersedia di Chrome 50.