HarmonyOS 如何把背景色中的文字放在垂直居中的位置

下面demo的文字好像往下掉了一点,相对于背景色而言,如何把背景色中的文字放在垂直居中的位置

@Entry
@Component
struct Index {
  build() {
    Column(){
      Text() {
        ContainerSpan() {
          // ImageSpan($r('app.media.point')).width(12).height(12).margin({left:4, right:4}).verticalAlign(ImageSpanAlignment.CENTER)
          Span('唯品国际')
            .fontSize(11)
            .fontWeight(FontWeight.Medium)
            .fontColor(Color.White)
          // .baselineOffset(LengthMetrics.vp(1))
          Span(' ')
        }.textBackgroundStyle({color:0x5E36D9, radius:4})
        Span(' ')
        ContainerSpan() {
          Span(' ')
          Span('包税').fontSize(11).fontWeight(FontWeight.Medium).fontColor(Color.White)
          Span(' ')
        }.textBackgroundStyle({color:0x5E36D9, radius:4})
        Span(' ')
        // Span(this.viewModel.productTitle())
      }.fontSize(16).fontWeight(FontWeight.Medium).fontColor(0x1B1B1B).lineHeight(22)
    }
    .width('100%')
    .height('100%')
  }
}
HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

出现demo的文字好像往下掉了一点的原因是Span(' ')默认的fontSize是16,设置11会导致下掉的情况。

可以参考下面这个demo。

// xxx.ets
@Component
@Entry
struct Index {
  build() {
    Column() {
      Text() {
        ContainerSpan() {
          ImageSpan($r('app.media.app_icon'))
            .width('40vp')
            .height('40vp')
            .verticalAlign(ImageSpanAlignment.CENTER)
          Span(' Hello World ! ').fontSize('16fp').fontColor(Color.White)
        }.textBackgroundStyle({color: "#7F007DFF", radius: "12vp"})
      }
    }.width('100%').alignItems(HorizontalAlign.Center)
  }
}

参考文档:

https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-basic-components-containerspan.md#textbackgroundstyle%E5%AF%B9%E8%B1%A1%E8%AF%B4%E6%98%8E

分享
微博
QQ
微信
回复
1天前
相关问题
如何设置窗口背景色
1943浏览 • 1回复 待解决
如何设置WebView背景色
642浏览 • 1回复 待解决
HarmonyOS Select组件背景色如何设置
30浏览 • 1回复 待解决
画布绘制文字垂直居中
387浏览 • 1回复 待解决
HarmonyOS 如何设置渐变背景色
1001浏览 • 1回复 待解决
Button组件如何设置渐变背景色
2595浏览 • 1回复 待解决
HarmonyOS 关于开屏背景色
92浏览 • 1回复 待解决
HarmonyOS 弹窗自带背景色
80浏览 • 1回复 待解决
HarmonyOS使用canvas如何使文字垂直居中
693浏览 • 1回复 待解决
如何设置背景色饱和度和亮度?
428浏览 • 1回复 待解决
HarmonyOS 文字标题没有垂直居中对齐
29浏览 • 1回复 待解决
TextInput按压态背景色如何修改
2535浏览 • 1回复 待解决
使用js引擎 设置dom背景色无效
840浏览 • 0回复 待解决