HarmonyOS鸿蒙Next中PC上的WPS是怎么读取用户安装的字体的

HarmonyOS鸿蒙Next中PC上的WPS是怎么读取用户安装的字体的

我看@ohos.font的getFontByName和getUIFontConfig都是只能读取系统的字体,然而WPS却可以读取用户安装的字体

那么这个读取所有字体列表的接口是什么

2 回复

在HarmonyOS Next中,PC版WPS读取用户安装字体的机制如下:

  1. 通过HarmonyOS的分布式文件系统访问字体目录(如/system/fonts/和用户自定义目录)
  2. 调用ohos.file.fs文件系统API枚举字体文件
  3. 使用@ohos.font字体管理模块加载和解析字体
  4. 字体数据通过ArkUI的渲染管线提供给WPS应用

系统会维护全局字体列表,WPS通过查询该列表获取可用字体信息。用户安装的新字体会被实时同步到分布式字体管理中。

更多关于HarmonyOS鸿蒙Next中PC上的WPS是怎么读取用户安装的字体的的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中,WPS等第三方应用能够读取用户安装的字体,通常是通过以下两种方式实现的:

  1. 直接访问字体文件目录: 应用可以通过文件管理API访问用户字体安装目录(如/data/fonts/或用户自定义目录),扫描其中的字体文件(.ttf/.otf等格式),然后动态加载使用。

  2. 使用系统未公开的字体管理接口: 可能存在系统级字体服务接口(如FontManagerService),允许特权应用获取完整字体列表。这类接口可能尚未开放给普通开发者。

当前公开的@ohos.font API确实只能获取系统预装字体。若需实现类似功能,建议:

  • 让用户手动选择字体文件
  • 在应用沙箱内管理字体资源
  • 关注后续HarmonyOS SDK更新中可能开放的字体管理能力

(注:具体实现细节需参考最新官方文档,此处基于通用技术原理分析),

回到顶部