toDataUrl 方法

String toDataUrl(
  1. [String type = 'image/png',
  2. num? quality]
)

返回一个包含由类型指定的图像表示的数据 URI(默认为 'image/png')。

数据 URI 格式如下 data:[<MIME-type>][;charset=<encoding>][;base64],<data>

可选参数 quality 在 0.0 到 1.0 的范围内使用,当请求类型为 'image/jpeg' 或 'image/webp' 时。如果未传递 quality,则使用默认值。注意:默认值因浏览器而异。

如果这个画布元素的宽高为 0,则返回 'data:',表示没有数据。

如果请求的类型不是 'image/png',且返回值为 'data:image/png',则表示不支持请求的类型。

示例用法

CanvasElement canvas = new CanvasElement();
var ctx = canvas.context2D
..fillStyle = "rgb(200,0,0)"
..fillRect(10, 10, 55, 50);
var dataUrl = canvas.toDataUrl("image/jpeg", 0.95);
// The Data Uri would look similar to
// 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA
// AAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO
// 9TXL0Y4OHwAAAABJRU5ErkJggg=='
//Create a new image element from the data URI.
var img = new ImageElement();
img.src = dataUrl;
document.body.children.add(img);

另请参阅

实现

String toDataUrl([String type = 'image/png', num? quality]) =>
    _toDataUrl(type, quality);