HarmonyOS 获取网络图片PixelMap

image.createImageSource(uri: String)方法不支持网络图片url,那有没有办法获取网络图片的PixelMap信息,难道只能下载下来么。我这边可以通过ImageBitmap加载url后绘制到CanvasRenderer上面后再获取Canvas上面的PiexelMap数据,但是太麻烦了

HarmonyOS
2024-12-25 15:13:09
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Excelsior_abit

只能下载,请参考示例如下:

import http from '@ohos.net.http';
import image from '@ohos.multimedia.image';
import { BusinessError } from '@ohos.base';

@Entry
@Component
struct ImageToPixelMap {
  @State image: PixelMap | undefined = undefined;

  httpRequest() {
    http.createHttp()
      .request("https://xxx.jpg",(error: BusinessError, data: http.HttpResponse) => {
        if (error) {
          console.error(`http reqeust failed with. Code: ${error.code}, message: ${error.message}`);
        } else {
          console.error('http reqeust success.');
          let imageData: ArrayBuffer = data.result as ArrayBuffer;
          let imageSource: image.ImageSource = image.createImageSource(imageData);
          console.error(`http reqeust size = ${imageData.byteLength}`);

          class tmp {
            height: number = 100;
            width: number = 100
          }

          let options: Record<string, number | boolean | tmp> = {
            'alphaType': 0, // 透明度
            'editable': false, // 是否可编辑
            'pixelFormat': 3, // 像素格式
            'scaleMode': 1, // 缩略值
            'size': { height: 100, width: 100 }
          } // 创建图片大小
          imageSource.createPixelMap(options).then((pixelMap: PixelMap) => {
            this.image = pixelMap
          })
        }
      })
  }

  build() {
    Column() {
      Button("获取网络图片")
        .onClick(() => {
          this.httpRequest()
        })
      Image(this.image).height(200).width(200)
    }.width('100%').height('100%')
  }
}
分享
微博
QQ
微信
回复
2024-12-25 18:53:12
相关问题
HarmonyOS 网络图片如何转换成PixelMap
213浏览 • 1回复 待解决
HarmonyOS 获取网络图片高度
81浏览 • 1回复 待解决
如何获取网络图片的尺寸?
677浏览 • 1回复 待解决
服务卡片image怎么获取网络图片
7462浏览 • 2回复 待解决
获取网络图片并保存到相册
1993浏览 • 1回复 待解决
HarmonyOS 请求网络图片
658浏览 • 1回复 待解决
HarmonyOS Image加载网络图片
116浏览 • 1回复 待解决
HarmonyOS 网络图片加载控件
273浏览 • 1回复 待解决
页面加载前获取网络图片的宽高
866浏览 • 1回复 待解决
HarmonyOS ImageKnife加载网络图片失败
268浏览 • 1回复 待解决
HarmonyOS 网络图片加载不显示
505浏览 • 1回复 待解决
HarmonyOS 使用picker保存网络图片
103浏览 • 1回复 待解决
HarmonyOS Image 加载网络图片问题
1120浏览 • 1回复 待解决
HarmonyOS ImageView不能加载网络图片
122浏览 • 1回复 待解决
HarmonyOS 保存网络图片,图库更新
531浏览 • 1回复 待解决
HarmonyOS Image组件网络图片不显示
717浏览 • 1回复 待解决
如何保存网络图片到相册
1115浏览 • 1回复 待解决
HarmonyOS Image组件的网络图片缓存
416浏览 • 1回复 待解决