HarmonyOS 鸿蒙Next中如何添加自定义字体

HarmonyOS 鸿蒙Next中如何添加自定义字体

一、在模块rawfile文件下创建一个font文件夹,将自定义字体文件放入font文件中

图像

二、在EntryAbility里面的onWindowStageCreate方法中进行初始化

windowClass.getUIContext().getFont().registerFont({
  familyName: 'test_name',//字体名字
  familySrc: $rawfile('font/test_font.xxx')//字体文件路径
})

三、使用

Text('测试字体')
  .fontSize(22)
  .fontColor('#222333')
  .fontWeight(FontWeight.Bold)
  .fontFamily('test_name')//组件有这个属性的都可以使用

更多关于HarmonyOS 鸿蒙Next中如何添加自定义字体的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

点赞

更多关于HarmonyOS 鸿蒙Next中如何添加自定义字体的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


字体文件名要注意大小写匹配

感谢分享

感谢分享

👍👍👍👍👍👍

感谢分享

在HarmonyOS Next中添加自定义字体步骤如下:

  1. 将字体文件(.ttf/.otf)放入工程的resources/base/fonts目录下

  2. 在resources/base/element/font.json中配置字体:

{
  "fonts": [
    {
      "name": "myfont",
      "src": "$media:MyFont"
    }
  ]
}
  1. 在代码中使用:
Text("Hello").fontFamily("myfont")

注意:

  • 字体文件需重命名为英文名
  • 字体名称大小写敏感
  • 支持TTF和OTF格式

在HarmonyOS Next中添加自定义字体的方法很清晰,我来补充几点关键细节:

  1. 字体文件格式支持:
  • 推荐使用.ttf或.otf格式
  • 确保字体文件没有版权限制
  1. 路径注意事项:
  • $rawfile()中的路径是相对于rawfile目录的
  • 路径区分大小写,建议全部使用小写字母
  1. 性能优化建议:
  • 字体文件不宜过大
  • 可考虑按需加载,非必要字体不要预注册
  1. 常见问题排查:
  • 检查字体文件是否成功打包到应用中
  • 确认familyName拼写一致
  • 测试不同字号下的显示效果
  1. 多语言支持:
  • 可以为不同语言注册不同字体
  • 通过条件判断动态切换字体

您提供的代码示例完全正确,这种方法适用于大多数UI组件。如果遇到具体问题,可以提供更多细节以便进一步分析。

回到顶部