返回到:Canvas API:OffscreenCanvas
该OffscreenCanvas.convertToBlob()
方法创建一个Blob
表示画布中包含的图像的对象。
可以指定所需的文件格式和图像质量。如果未指定文件格式,或者不支持给定的格式,则数据将导出为image/png
. 需要浏览器支持image/png
;许多将支持其他格式,包括image/jpeg
和image/webp
.
对于支持编码分辨率元数据的文件格式,创建的图像将具有 96dpi 的分辨率。
语法
convertToBlob()
convertToBlob(options)
参数
options
选修的
具有以下属性的对象:
type
指示图像格式的字符串。默认类型是image/png
;如果不支持指定的类型,也将使用此图像格式。quality
Number
介于0
和之间,1
表示使用支持有损压缩的文件格式(例如image/jpeg
或)创建图像时要使用 的图像质量image/webp
。如果未指定此选项,或者如果数字超出允许范围,则用户代理将使用其默认质量值。
返回值
Promise
返回Blob
表示画布中包含的图像的对象。
例外情况
承诺可能会被拒绝,但有以下例外情况:
InvalidStateErrorDOMException
OffscreenCanvas
不分离; 换句话说,它仍然与 DOM 相关联,而不是当前的 worker。SecurityErrorDOMException
canvas context mode 是 2d 并且 bitmap 不是 origin-clean;至少它的某些内容已经或可能已经从加载文档本身的站点以外的站点加载。
IndexSizeErrorDOMException
画布位图没有像素(水平或垂直尺寸为零)。
EncodingErrorDOMException
由于编码错误,无法创建 blob。
例子
const offscreen = new OffscreenCanvas(256, 256);
const gl = offscreen.getContext("webgl");
// Perform some drawing using the gl context
offscreen.convertToBlob().then((blob) => console.log(blob));
// Blob { size: 334, type: "image/png" }
返回到:Canvas API:OffscreenCanvas
作者:terry,如若转载,请注明出处:https://www.web176.com/canvas_api/7784.html