# 应用内字体未跟随系统设置变化

#### 问题现象

改变系统字体大小、粗细，应用内字体未同步/部分发生变化。

#### 背景知识

*   configuration标签是一个profile文件资源，用于指定描述应用字体大小跟随系统变更的配置文件。
*   fontSize可设置字体大小。
*   fontWeight可设置文本的字体粗细，设置过大可能会在不同字体下有截断。
*   ApplicationContext.setFontSizeScale可设置应用字体大小缩放比例。

#### 问题定位

1.  排查应用AppScope/app.json5文件的configuration标签中是否将fontSizeScale属性配置为followSystem。
2.  排查组件是否在fontSize属性中设置了px来定义字体大小或fontWeight属性中设置了字体粗细。
3.  排查应用是否使用setFontSizeScale设置了应用字体大小缩放比例。设置后，应用字体将不跟随系统变化，不再支持订阅系统字体大小变化。

#### 分析结论

*   应用configuration标签中未将fontSizeScale属性配置为followSystem。
*   组件在fontSize属性中设置了px来定义字体大小或fontWeight属性中设置了字体粗细，导致改变系统字体大小、粗细，应用内字体未同步/部分发生变化。
*   应用使用setFontSizeScale设置了应用字体大小缩放比例，导致改变系统字体大小、粗细，应用内字体未同步/部分发生变化。

#### 修改建议

*   请参考configuration标签调整全局配置文件。
*   若需部分组件内容跟随系统字体变化，优先使用fp/vp单位，同时不用fontWeight属性指定字体粗细。
*   不使用setFontSizeScale设置应用字体大小缩放比例。