HarmonyOS 鸿蒙Next 自定义字体如何应用到全局,有没有可以借鉴的案例

发布于 1周前 作者 htzhanglong 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 自定义字体如何应用到全局,有没有可以借鉴的案例

我们项目要用多多种字体,并且是全局使用,看了对应的文档对字体全局使用说的不是很清楚,想问一下有没有demo可以参考的。

2 回复

1、EntryAbility.ets文件,引入font ,在onWindowStageCreate生命周期,windowStage.loadContent回调中注册字体

import font from '@ohos.font';

onWindowStageCreate(windowStage: window.WindowStage): void {

  windowStage.loadContent('pages/registerFont', (err, data) => {

    if (err.code) {

    return;

    }

  font.registerFont({

    familyName: 'Beacon',

    familySrc: $rawfile('font/Beacon.otf')

    })

  font.registerFont({

    familyName: 'SF',

    familySrc: $rawfile('font/SF-Pro-Text-Italic.ttf')

    })

  });

}

2、registerFont.ets在页面中使用注册的字体familyName即可

@Entry

@Component

struct registerFont {

  @State message: string = 'test'

  build() {

    Column() {

      Text(this.message)

        .align(Alignment.Center)

        .fontSize(50)

        .fontFamily('Beacon')

      Text(this.message)

        .align(Alignment.Center)

        .fontSize(50)

        .fontFamily('SF')

    }.width('100%')

  }

}

更多关于HarmonyOS 鸿蒙Next 自定义字体如何应用到全局,有没有可以借鉴的案例的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS 鸿蒙Next系统中,自定义字体应用到全局的操作通常涉及系统级的配置和API调用。以下是一个简要的步骤和案例借鉴:

  1. 准备字体文件:首先,确保你的自定义字体文件(如.ttf或.otf格式)已正确放置在设备的存储中,或已经打包进你的应用资源中。

  2. 配置字体文件:在应用的配置文件中(如config.json),需要声明对自定义字体的引用。这通常包括字体文件的路径和名称。

  3. 使用系统API设置全局字体:HarmonyOS提供了相应的API接口,允许开发者在应用中调用以设置全局字体。例如,可以通过调用SystemUI.setFont(假设的API名称,实际API可能不同)来全局应用自定义字体。

案例借鉴

  • 可以参考HarmonyOS官方文档中的“主题与字体”章节,其中可能包含设置全局字体的具体步骤和示例代码。
  • 此外,在HarmonyOS的开发者社区或论坛中,搜索“全局自定义字体”等关键词,通常能找到其他开发者分享的实现方法和经验。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部