【问题标题】:Flutter - Rendering a custom symbol based fontsFlutter - 渲染基于自定义符号的字体
【发布时间】:2020-11-19 03:58:14
【问题描述】:

我正在尝试渲染由符号组成的自定义字体,确切地说是Phoenician alphabet,我有字体文件“.ttf”,在我的 pubspec.yaml 中我添加了我通常会做的字体即将添加自定义字体:

flutter:
  fonts:
    - family: Phoenician
      fonts:
        - asset: fonts/Phoenician.ttf

当我尝试测试字体时,它没有呈现,而是显示了常规的拉丁字符。

Text(test_str, style: TextStyle(fontFamily: 'Phoenician'),

我确定了字体的元数据,它工作得很好,我什至把它安装在我的电脑上。

我如何准确地使用这种级别的自定义字体与颤振?

PS:我正在运行 MacOS 并在 iPhone 11 模拟器上进行测试

更新: 这些符号存在于字符表中。

【问题讨论】:

  • 您是否尝试过冷重启您的应用(关闭调试会话然后重新调试)?
  • @hisam 是的,我经历过!
  • 您能否提供Phoenician.ttf 文件,以便我自己尝试?
  • @hisam 这是一个 WeTransfer 链接wetransfer.com/downloads/…
  • 您是否有理由使用非标准编码的字体?任何相对较新的操作系统(MacOS、iOS、Windows、Android)都将具有支持 Unicode 编码的腓尼基字符的字体。如果您转到以下链接并且可以在表格中看到腓尼基字符的字形,那么您的系统支持字体。 en.wikipedia.org/wiki/Phoenician_alphabet#Unicode

标签: flutter dart fonts custom-font


【解决方案1】:

在我自己尝试了字体之后,它真的很好用:

我认为问题出在Phoenician.ttf 文件中。

为什么?见下图:

如您所见,并非所有字母都“翻译”成腓尼基字母 未“翻译”的组件是:

a、e、f、i、j、o、t、u、v、大写字母(T除外)、数字等

于是,我决定试一下大写字母,然后结果是:

所以如果要使用这种字体,请确保不要使用大写字母、数字等。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-10
    • 1970-01-01
    • 2014-01-28
    • 1970-01-01
    • 2014-12-31
    • 1970-01-01
    相关资源
    最近更新 更多