参考下简版demo:@Entry @Component struct RichText1 { @State data: string = '<h1 style="text-align: center;">h1标题</h1>' + '<h1 style="text-align: center;"><i>h1斜体</i></h1>' + '<h1 style="text-align: center;"><u>h1下划线</u></h1>' + '<h2 style="text-align: center;">h2标题</h2>' + '<h3 style="text-align: center;">h3标题</h3>' + '<p style="text-align: center;">p常规</p><hr/>' + '<div style="width: 500px;height: 500px;border: 1px solid;margin: 0 auto;">' + '<p style="font-size: 35px;text-align: center;font-weight: bold; color: rgb(24,78,228)">字体大小35px,行高45px</p>' + '<p style="background-color: #e5e5e5;line-height: 45px;font-size: 35px;text-indent: 2em;">' + '<p>这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字</p>' + '<p>这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字</p>' + "<font color='#9e8052' style='color:#9e8052;'>本产品中的门票由上海迪士尼乐园提供,按照上海迪士尼乐园规定,</font>" + "<font color='#ff7043' style='color:#ff7043;'>门票不可退</font>" + "<font color='#9e8052' style='color:#9e8052;'>敬请谅解。</font>" build() { Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) { RichText(this.data) .onStart(() => { console.info('RichText onStart'); }) .onComplete(() => { console.info('RichText onComplete'); }) .width('100%') .height(500) .backgroundColor(0XBDDB69) RichText('layoutWeight(1)') .onStart(() => { console.info('RichText onStart'); }) .onComplete(() => { console.info('RichText onComplete'); }) .size({ width: '100%', height: 110 }) .backgroundColor(0X92D6CC) .layoutWeight(1) RichText('layoutWeight(2)') .onStart(() => { console.info('RichText onStart'); }) .onComplete(() => { console.info('RichText onComplete'); }) .size({ width: '100%', height: 110 }) .backgroundColor(0X92C48D) .layoutWeight(2) } } }
参考下简版demo: