UNPKG

2.06 kBSource Map (JSON)View Raw
1{"version":3,"file":"canvasGetImageData.js","sources":["../../../src/api/canvas/canvasGetImageData.ts"],"sourcesContent":["import Taro from '@tarojs/api'\r\n\r\nimport { findDOM } from '../../utils'\r\nimport { MethodHandler } from '../../utils/handler'\r\n\r\n/**\r\n * 获取 canvas 区域隐含的像素数据。\r\n */\r\nexport const canvasGetImageData: typeof Taro.canvasGetImageData = ({ canvasId, success, fail, complete, x, y, width, height }, inst) => {\r\n const handle = new MethodHandler({ name: 'canvasGetImageData', success, fail, complete })\r\n const el = findDOM(inst) as HTMLElement\r\n const canvas = el?.querySelector(`canvas[canvas-id=\"${canvasId}\"]`) as HTMLCanvasElement\r\n\r\n try {\r\n const ctx = canvas?.getContext('2d')\r\n // TODO ImageData => Uint8ClampedArray\r\n const data = ctx?.getImageData(x, y, width, height) as unknown as Uint8ClampedArray\r\n return handle.success({\r\n width,\r\n height,\r\n data\r\n })\r\n } catch (e) {\r\n return handle.fail({\r\n errMsg: e.message\r\n })\r\n }\r\n}\r\n"],"names":[],"mappings":";;;AAKA;;AAEG;AACU,MAAA,kBAAkB,GAAmC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,KAAI;AACrI,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;AACzF,IAAA,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAgB,CAAA;AACvC,IAAA,MAAM,MAAM,GAAG,EAAE,KAAA,IAAA,IAAF,EAAE,KAAF,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAE,CAAE,aAAa,CAAC,CAAA,kBAAA,EAAqB,QAAQ,CAAA,EAAA,CAAI,CAAsB,CAAA;IAExF,IAAI;AACF,QAAA,MAAM,GAAG,GAAG,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,UAAU,CAAC,IAAI,CAAC,CAAA;;AAEpC,QAAA,MAAM,IAAI,GAAG,GAAG,aAAH,GAAG,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAH,GAAG,CAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAiC,CAAA;QACnF,OAAO,MAAM,CAAC,OAAO,CAAC;YACpB,KAAK;YACL,MAAM;YACN,IAAI;AACL,SAAA,CAAC,CAAA;AACH,KAAA;AAAC,IAAA,OAAO,CAAC,EAAE;QACV,OAAO,MAAM,CAAC,IAAI,CAAC;YACjB,MAAM,EAAE,CAAC,CAAC,OAAO;AAClB,SAAA,CAAC,CAAA;AACH,KAAA;AACH;;;;"}
\No newline at end of file