Delphi 11 环境下FMX iOS端自定义字体无法生效问题咨询
Delphi 10.4/11 版本iOS端自定义字体失效核心成因
- Info.plist自动生成逻辑变更:从Delphi 10.4版本开始,IDE调整了iOS项目Info.plist文件的默认生成规则,旧版本仅通过部署面板添加字体文件即可自动同步到
UIAppFonts配置项的逻辑被移除,新建项目如果没有手动在Info.plist的自定义字段里添加字体文件名配置,iOS系统无法识别包内的自定义字体资源。 - 字体部署路径规则调整:旧版本自定义字体部署到iOS应用包根目录即可被识别,11版本后多语言、多区域配置的项目默认会将资源类文件部署到
Resources/子目录下,如果Info.plist配置的字体路径仅填写文件名不带对应前缀,系统将无法定位到字体文件。 - 大小写匹配规则收紧:Delphi 11升级了iOS部署资源的文件名校验逻辑,字体文件名与Info.plist中配置的名称大小写不一致时,旧版本会自动做兼容匹配,新版本会直接判定为找不到对应资源,导致字体加载失败。
- 资源签名校验升级:新版本IDE默认开启了iOS应用包的全资源签名校验,如果自定义字体文件本身的授权元信息不完整,或者部署时未标记为「允许嵌入的可执行资源」,签名完成后会被iOS系统判定为无效资源,无法正常加载。
内容的提问来源于stack exchange,提问作者Peter-Paul
相关产品推荐
相关产品推荐

