非标
此特征是非标准的,且不在标准轨道中。不要在面向 Web 的生产站点中使用它:它不适用于每个用户。实现之间可能存在大的不兼容性,且行为将来可能改变。

The non-standard, Firefox-specific the HTMLCanvasElement 方法 mozGetAsFile() returns a memory-based File object representing the image contained in the canvas.

句法

canvas.mozGetAsFile(name, type);
					

参数

名称
DOMString indicating the file name to give the file representing the image file in memory.
type 可选
DOMString which specifies the image file format to use when creating the new image file. The default type is image/png . For other options, see our Image file type and format guide .

返回值

A File object representing the image contained in the canvas. The file's data is entirely located in memory until such time as it is explicitly written to disk.

范例

This example creates an image file from the <canvas> element on the page, then uses a FileReader to read the image data from the file.

HTML

<canvas id="canvas" width="100" height="100"></canvas>
<p><a href="#" id="link">Click here to try out mozGetAsFile()</a>.</p>
						

JavaScript

The following code uses mozGetAsFile() to create a File object from the canvas and appends it as an image to the page by loading it as a data URL using the readAsDataURL() method. Then a new <img> element is created using the new data URL.

function draw() {
  var canvas = document.getElementById('canvas');
  var ctx = canvas.getContext('2d');
  ctx.fillStyle = 'rgb(200, 0, 0)';
  ctx.fillRect(10, 10, 55, 50);
  ctx.fillStyle = 'rgba(0, 0, 200, 0.5)';
  ctx.fillRect(30, 30, 55, 50);
  var link = document.getElementById('link');
  link.addEventListener('click', copy);
}
function copy() {
  var canvas = document.getElementById('canvas');
  var f = canvas.mozGetAsFile('test.png');
  var reader = new FileReader();
  reader.readAsDataURL(f);
  reader.onloadend = function() {
   var newImg = document.createElement('img');
   newImg.src = reader.result;
   document.body.appendChild(newImg);
  }
}
window.addEventListener('load', draw);
						

规范

Not part of any specification.

浏览器兼容性

The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request. 更新 GitHub 上的兼容性数据
桌面 移动
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
mozGetAsFile 弃用 非标 Chrome No Edge No Firefox 4 — 74
不支持 4 — 74
mozGetAsFile() was deprecated in Firefox 26 (in 2013) and was removed entirely in Firefox 74.
IE No Opera No Safari No WebView Android No Chrome Android No Firefox Android 4 Opera Android No Safari iOS No Samsung Internet Android No

图例

完整支持

完整支持

不支持

不支持

非标。预期跨浏览器支持较差。

非标。预期跨浏览器支持较差。

弃用。不要用于新网站。

弃用。不要用于新网站。

见实现注意事项。

元数据

  • 最后修改: