HarmonyOS Canvas.drawImage怎么绘制本地图片,并指定大小

HarmonyOS
2024-12-20 18:03:48
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Excelsior_abit
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.startIcon")).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
                  } // desiredSize: { height: 300, width: 200 }
                };
                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(this.imageWidth).height(this.imageHeight)
        Text(`图片尺寸信息:width: ${this.imageWidth}, height: ${this.imageHeight}`)
      }
    }
  }
}
分享
微博
QQ
微信
回复
2024-12-20 19:49:56
相关问题
HarmonyOS 本地图库选择器编辑图片
369浏览 • 1回复 待解决
canvas怎么绘制资源目录下的图片
1118浏览 • 1回复 待解决
HarmonyOS canvas如何绘制图片导出
375浏览 • 1回复 待解决
HarmonyOS 如何压缩本地图片
477浏览 • 1回复 待解决
HarmonyOS图片压缩不到指定大小
1048浏览 • 1回复 待解决
HarmonyOS customScan 如何扫描本地图片
374浏览 • 1回复 待解决
HarmonyOS Image加载本地图片咨询
923浏览 • 1回复 待解决
HarmonyOS 如何上传本地图片
455浏览 • 1回复 待解决
HarmonyOS Canvas中关于绘制图片问题
647浏览 • 1回复 待解决
如何获取手机本地图片
720浏览 • 1回复 待解决
HarmonyOS如何获取手机本地图片
973浏览 • 1回复 待解决
HarmonyOS Image展示本地图片失败
510浏览 • 1回复 待解决
HarmonyOS 卡片使用本地图片作为背景
263浏览 • 1回复 待解决
Canvas如何绘制app.media下面的图片?
2745浏览 • 1回复 待解决
HarmonyOS Canvas绘制圆角
485浏览 • 1回复 待解决
服务卡片设置本地图片显示空白
7844浏览 • 2回复 已解决
如何保存本地图片到相册中
1681浏览 • 1回复 待解决