【问题标题】:How to use font to write musical sheet如何使用字体写乐谱
【发布时间】:2020-10-17 00:02:00
【问题描述】:

我正在尝试制作一个可以编写和编辑乐谱的 iOS 应用程序。 我想知道如何将其可视化。 我没有在 swift 中找到任何可以使它成为可能的完整框架。

但是我找到了这个字体bravura,但是我没有找到任何使用的例子。

这是一个 OpenType 字体。

阅读documentation我应该可以通过unicode字符来决定如何改变下一个元素的位置。 但不,它似乎不起作用。起初我以为是连字的原因,因为并非所有编辑都支持它,我不是字体专家,我可能是错的。

所以我使用了 NSAttributedString 类来修改这些参数。但结果仍然不是预期的。

这是我的代码:

    textView.font = UIFont(name: "Bravura-Text", size: 40)
    let text = "\u{E014}\u{EB99}\u{E0A4} \u{E014}\u{EB91}\u{E0A4}"
    let attributes = [
        NSAttributedString.Key.font : UIFont(name: "Bravura-Text", size: 40)!,
        NSAttributedString.Key.ligature : 2
        ]  as [NSAttributedString.Key : Any]
    let attributedString = NSAttributedString(string: text, attributes: attributes)

    textView.attributedText = attributedString

E014 = 显示五线谱表

EB99 = 减少两个员工职位

EB91 = 增加两个员工职位

E0A4 = 黑色符头

这是结果: result

有什么建议可以在 iOS 上使用此字体及其功能吗?

我想写一张像this one这样的乐谱。

【问题讨论】:

    标签: ios swift unicode fonts opentype


    【解决方案1】:

    乐谱的布局需要更高级别的布局,而不仅仅是显示一行文本。 (类似于使用 HTML 作为高级布局而不仅仅是文本行的网页。)字体可以提供基本符号,并且所有基本符号都以 Unicode 编码。但是您需要一些可以读取音乐符号标记语言并布局内容的库。

    您可以在https://www.w3.org/community/music-notation/ 找到您需要的资源

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-06
      • 2016-02-09
      • 2011-07-21
      • 1970-01-01
      • 2022-08-11
      • 1970-01-01
      相关资源
      最近更新 更多