Support type and encoderOptions parameters in toBlob polyfill.

This commit is contained in:
ccd0 2015-10-25 21:23:19 -07:00
parent 673408f5e1
commit 832fb65cf5

View File

@ -3,12 +3,13 @@ Polyfill =
@toBlob()
toBlob: ->
return if HTMLCanvasElement::toBlob
HTMLCanvasElement::toBlob = (cb) ->
data = atob @toDataURL()[22..]
HTMLCanvasElement::toBlob = (cb, type='image/png', encoderOptions) ->
url = @toDataURL type, encoderOptions
data = atob url[url.indexOf(',')+1..]
# DataUrl to Binary code from Aeosynth's 4chan X repo
l = data.length
ui8a = new Uint8Array l
for i in [0...l] by 1
ui8a[i] = data.charCodeAt i
cb new Blob [ui8a], type: 'image/png'
cb new Blob [ui8a], {type}
$.globalEval "HTMLCanvasElement.prototype.toBlob = (#{HTMLCanvasElement::toBlob});"