toDataUrl 方法
返回一个包含图像表示的数据 URI,格式由 type 指定(默认为 'image/png')。
数据 URI 格式如下 data:[<MIME-type>][;charset=<encoding>][;base64],<data>
可选参数 quality
在 0.0 和 1.0 的范围内,当请求 'image/jpeg' 或 'image/webp' 类型时可以使用。如果没有传递 quality
,则使用默认值。注意:默认值因浏览器而异。
如果此 canvas 元素的高度或宽度为 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);
另请参阅
-
数据 URI 方案 来自维基百科。
-
HTMLCanvasElement 来自 MDN。
-
toDataUrl 来自 W3C。
实现
String toDataUrl([String type = 'image/png', num? quality]) =>
_toDataUrl(type, quality);