如何读取本地资源Resource,转换成Pixelmap,给到canvas里绘制

马迪

沙发 发表于 2024-2-9 16:36:12
参考了imageknife的代码

首先要把文件读出出来,转成arraybuff。 如果是资源文件的话,可以通过resourceManager读取
  1.   let resBuf: ArrayBuffer = this.context.resourceManager.getMediaContentSync($r('app.media.startIcon').id) .buffer
复制代码


再通过@ohos.multimedia.image,把arraybuff解析成pixelmap
  1.   let imageSource: image.ImageSource = image.createImageSource(resBuf);
  2.     let decodingOption: image.DecodingOptions = {
  3.       editable: true,
  4.     }

  5.     imageSource.createPixelMap(decodingOptions)
  6.       .then((pixelmap: PixelMap) => {

  7.                 // 拿到了pixelmap

  8.                imageSource.release()
  9.       })
复制代码

battier

发表于 2024-2-17 21:03  IP属地: 广东省广州市

回复 马迪: 实测,有效

【1 条回复】

Copyright   ©2023  OpenHarmony开发者论坛  京ICP备2020036654号-3 |技术支持 Discuz!

返回顶部