UNPKG

1.02 kBJavaScriptView Raw
1import { findDOM } from '../../utils/index.js';
2import { MethodHandler } from '../../utils/handler.js';
3
4/**
5 * 将像素数据绘制到画布。在自定义组件下,第二个参数传入自定义组件实例 this,以操作组件内 <canvas> 组件
6 * @todo 暂未支持尺寸相关功能
7 */
8const canvasPutImageData = ({ canvasId, data, x, y, success, fail, complete }, inst) => {
9 const handle = new MethodHandler({ name: 'canvasPutImageData', success, fail, complete });
10 const el = findDOM(inst);
11 const canvas = el === null || el === void 0 ? void 0 : el.querySelector(`canvas[canvas-id="${canvasId}"]`);
12 try {
13 const ctx = canvas.getContext('2d');
14 // TODO Uint8ClampedArray => ImageData
15 ctx === null || ctx === void 0 ? void 0 : ctx.putImageData(data, x, y);
16 return handle.success();
17 }
18 catch (e) {
19 return handle.fail({
20 errMsg: e.message
21 });
22 }
23};
24
25export { canvasPutImageData };
26//# sourceMappingURL=canvasPutImageData.js.map