HarmonyOS 如何在占位图中添加文本信息

图片的加载存在1-5秒的网络延迟,在这期间会有占位图先进行渲染,并且还需要在占位图上添加文本信息的布局,过了网络延迟的时间图片正常进行渲染。还请问需要如何在占位图中添加文本信息。

HarmonyOS
2025-01-09 15:10:50
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
put_get

在Image组件中,图片加载成功前显示预设图片目前只能通过占位图实现,但使用alt属性设置占位图,占位图参数类型只支持string | Resource | PixelMap;

图片添加文字可以通过相关组件实现,再输出为PixelMap类型,麻烦尝试一下通过这种方式先给图片添加文字输出后再传入占位图中能否解决问题。

图片添加文字并输出,参考代码如下:

import componentSnapshot from '@ohos.arkui.componentSnapshot'
import image from '@ohos.multimedia.image'

@Entry
@Component
struct Test03 {
  @State pixmap: image.PixelMap | undefined = undefined

  build() {
    Column() {
      Stack({ alignContent: Alignment.Center }) {

        Image($r('app.media.img')).autoResize(true).width(300).height(300)
        Row() {
          Text("文字")
            .width(40)
            .height(20)
            .fontSize(16)
            .fontColor(Color.White)
            .border({ color: Color.Red, width: 1 })
            .borderRadius(4)
            .margin({ top: 10, right: 10 })
        }
        .width(300).height(300)
        .alignItems(VerticalAlign.Top)
        .justifyContent(FlexAlign.End)
      }
      .id("root")

      Button("图片添加文字")
        .onClick(() => {
          componentSnapshot.get("root")
            .then((pixmap: image.PixelMap) => {
              this.pixmap = pixmap
            }).catch((err: Error) => {
            console.log("error: " + err)
          })
        }).margin(10)

      Image(this.pixmap).width(300).height(300).border({ color: Color.Blue, width: 1 }).margin(5)
    }
    .width('100%')
    .height('100%')
    .alignItems(HorizontalAlign.Center)
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
分享
微博
QQ
微信
回复
2025-01-09 18:20:34
相关问题
HarmonyOS如何使用Image占位图
1075浏览 • 1回复 待解决
HarmonyOS image 组件占位图
1228浏览 • 1回复 待解决
你们是如何在mysql中操作位图的?
2737浏览 • 1回复 待解决
鸿蒙-富文本如何添加图片
8447浏览 • 1回复 待解决
鸿蒙如何实现位图绘制
10746浏览 • 1回复 待解决
文本添加上划线如何实现?
977浏览 • 1回复 待解决
HarmonyOS图中如何渲染多个marker
875浏览 • 1回复 待解决
HarmonyOS 如何去除如图中的间隙
816浏览 • 1回复 待解决
HarmonyOS 文本控件如何在中间打点
565浏览 • 1回复 待解决
HarmonyOS string占位符中如何使用Span
623浏览 • 1回复 待解决
如何在HarmonyOS添加编译参数
1458浏览 • 1回复 待解决
ArkTS如何实现空格占位
3154浏览 • 1回复 待解决
HarmonyOS PixelMap位图处理问题
777浏览 • 1回复 待解决
HarmonyOS 如何实现图中的input控件效果
1033浏览 • 1回复 待解决