#鸿蒙通关秘籍#如何将手写绘制内容保存为图片文件

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
编程小行家

将手写绘制内容保存为图片文件可以通过以下步骤实现:

  1. 获取组件NodeContainer的PixelMap对象:

    componentSnapshot.get(NODE_CONTAINER_ID, async (error: Error, pixelMap: image.PixelMap) => {
      if (pixelMap !== null) {
        this.filePath = await this.saveFile(getContext(), pixelMap);
        logger.info(TAG, `Images saved using the packing method are located in : ${this.filePath}`);
      }
    })
    
  2. 使用ImagePacker库将获取的PixelMap对象保存为图片文件:

    async saveFile(context: Context, pixelMap: PixelMap): Promise<string> {
      const imagePackerApi = image.createImagePacker();
      const options: image.PackingOption = { format: "image/jpeg", quality: 100 };
      const filePath: string = `${context.filesDir}/${getTimeStr()}.jpg`;
      const file: fs.File = await fs.open(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
      const data: ArrayBuffer = await imagePackerApi.packing(pixelMap, options);
      fs.writeSync(file.fd, data);
      fs.closeSync(file);
      return filePath;
    }
    
分享
微博
QQ
微信
回复
1天前
相关问题
base64字符串保存为图片的方法
762浏览 • 1回复 待解决
如何将像素点保存图片文件
2260浏览 • 1回复 待解决
如何将Pixmap保存到本地文件
411浏览 • 1回复 待解决
有谁知道如何将图片保存到相册
943浏览 • 1回复 待解决
HarmonyOS如何将PixelMap保存到相册?
506浏览 • 1回复 待解决
鸿蒙如何将音频文件转成文本
4401浏览 • 1回复 待解决
如何将视频保存到相册以及主机端
5521浏览 • 1回复 待解决
ets中如何将图片转为byte[]?
3177浏览 • 1回复 待解决