HarmonyOS如何获取resources/media下图片的信息,如图片高、宽? 如何转pixelmap?

HarmonyOS如何获取resources/media下图片的信息,如图片高、宽? 如何转pixelmap?

HarmonyOS
2024-09-10 10:52:59
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

可以参考如下demo来获取图片资源的尺寸信息以及了解相关转pixelmap操作:

import image from '@ohos.multimedia.image' 
@Entry 
@Component 
struct Index { 
  @State message: string = '点击获取图片尺寸'; 
  @State imagePixelMap: PixelMap | undefined = undefined; 
  @State imageWidth:number = -1; 
  @State imageHeight:number = -1; 
  build() { 
    Row() { 
      Column() { 
        Button(this.message).fontSize(30).width(350).height(150).fontWeight(FontWeight.Bold).onClick(() => { 
          getContext(this).resourceManager.getMediaContent($r("app.media.ic_app_background")).then((data) => { 
            let arrayBuffer = data.buffer.slice(data.byteOffset, data.byteLength + data.byteOffset) 
            let imageSource: image.ImageSource = image.createImageSource(arrayBuffer); 
            imageSource.getImageInfo((err, value) => { 
              //获取图片资源的尺寸 
              console.log(`图片的尺寸为:width:${value.size.width}height:${value.size.height}`) 
              if (err) {return;} 
              //转PixelMap 
              let opts: image.DecodingOptions = 
                { editable: true, desiredSize: { height: value.size.height, width: value.size.width } }; 
              imageSource.createPixelMap(opts, (err, 
                                                pixelMap) => { 
                this.imagePixelMap = pixelMap 
                this.imagePixelMap.getImageInfo().then((value)=> { 
                  this.imageWidth = value.size.width 
                  this.imageHeight = value.size.height 
                }) 
              }) 
            }) 
          }) 
        }) 
        Image(this.imagePixelMap).width(300).height(400) 
        Text(`图片尺寸信息:width: ${this.imageWidth}, height: ${this.imageHeight}`) 
      } 
    } 
  } 
}
分享
微博
QQ
微信
回复
2024-09-10 17:38:40
相关问题
鸿蒙如何获取Element图片
7866浏览 • 1回复 待解决
HarmonyOS photoAsset获取图片失败
299浏览 • 1回复 待解决
如何获取窗口信息
2322浏览 • 1回复 待解决
如何获取图片,你知道吗?
2332浏览 • 1回复 待解决
页面加载前获取网络图片
644浏览 • 1回复 待解决
图片压缩指定和限制大小
903浏览 • 1回复 待解决
ArkTs如何获取组件
4596浏览 • 1回复 待解决
怎么把PixelMap图片BASE64
9334浏览 • 1回复 待解决
如何测量获取控件
766浏览 • 1回复 待解决
HarmonyOS如何获取指定子组件
1176浏览 • 1回复 待解决
如何PixelMap图片base64字符串?
446浏览 • 1回复 待解决
HarmonyOS 图片exif信息获取异常
411浏览 • 2回复 待解决
获取Column最终
393浏览 • 1回复 待解决
如何PixelMap处理图片
1855浏览 • 1回复 待解决
如何图片base64字符串PixelMap
536浏览 • 1回复 待解决
如何获取组件,你学会了吗?
2497浏览 • 1回复 待解决