MDN wants to learn about developers like you:


Our volunteers haven't translated this article into 中文 (简体) yet. Join us and help get the job done!
You can also read the article in English (US).

This feature is obsolete. Although it may still work in some browsers, its use is discouraged since it could be removed at any time. Try to avoid using it.

The HTMLCanvasElement.mozFetchAsStream() internal method used to create a new input stream that, when ready, would provide the contents of the canvas as image data. However, this non-standard and internal method has been removed.


void canvas.mozFetchAsStream(callback, type);


An nsIInputStreamCallback.
type Optional
A DOMString indicating the image format. The default type is image/png.

Return value



Save to disk with mozFetchAsStream (Chrome context only)

This technique also converts it to ico, however it will not work in Windows XP as WinXP cannot convert from PNG to ICO. It saves to the desktop it uses FileUtils.jsm. Also uses NetUtil.jsm

var canvas = document.getElementById('canvas');
var d = canvas.width;
ctx = canvas.getContext('2d');
ctx.moveTo(d / 2, 0);
ctx.lineTo(d, d);
ctx.lineTo(0, d);
ctx.fillStyle = 'yellow';

var netutilCallback = function() {
    return function(result) {
       if (!Components.isSuccessCode(result)) {               
          alert('FAILED to create icon');
       } else {
           alert('succesfully made');

var mfasCallback = function(iconName) {
    return function(inStream) {
       var file = FileUtils.getFile('Desk', [iconName + '.ico']);
       var outStream = FileUtils.openFileOutputStream(file);
       NetUtil.asyncCopy(inStream, outStream, netutilCallback());

canvas.mozFetchAsStream(mfasCallback('myIcon'), 'image/');


Not part of any specification.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support No support No support [1] No support No support No support
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support No support No support No support No support No support No support

[1] This method was implemented in Gecko 13 and removed in Gecko 43.

See also


 此页面的贡献者: nmve, fscholz
 最后编辑者: nmve,