@tsparticles/plugin-export-image
Version:
tsParticles export image plugin
48 lines (47 loc) • 1.61 kB
JavaScript
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ExportImageInstance = void 0;
class ExportImageInstance {
constructor(container, engine) {
this._exportImage = async (data) => {
const element = this._container.canvas.element;
if (!element) {
return;
}
return new Promise(resolve => {
element.toBlob(blob => {
if (!blob) {
resolve(undefined);
return;
}
resolve(blob);
}, data.type ?? "image/png", data.quality);
});
};
this._container = container;
this._engine = engine;
}
async export(type, data) {
const res = {
supported: false,
};
switch (type) {
case "image":
res.supported = true;
res.blob = await this._exportImage(data);
break;
}
return res;
}
}
exports.ExportImageInstance = ExportImageInstance;
});