【问题标题】:How to calculate line spacing based on font's line height in Swift?如何在 Swift 中根据字体的行高计算行距?
【发布时间】:2019-05-01 10:18:43
【问题描述】:

您可以通过以下代码设置标签中属性文本的行距:

let attributedString = NSMutableAttributedString(string: "My text")

let paragraphStyle = NSMutableParagraphStyle()

// line spacing in points
paragraphStyle.lineSpacing = 1.5

attributedString.addAttribute(NSParagraphStyleAttributeName,
 value:paragraphStyle, range:NSMakeRange(0, attributedString.length))


label.attributedText = attributedString

但是每当我检查设计时,我都会遇到一个名为 Line Height 的字体,它的字体大小不同,例如:

Font Size: 14pt
Line Height: 18pt

如何将数字转换为段落行距?

【问题讨论】:

    标签: ios swift cocoa-touch fonts uilabel


    【解决方案1】:

    我找到了答案。您可以按如下方式计算行距:

    Line Spacing = (Line Height - Font Size) / 2
    

    【讨论】:

    • 我知道这是一个老问题,您找到了解决方案,但您确定这是正确的吗?我认为行距的公式实际上是lineHeight / fontSize。例如,如果在您的设计程序中字体大小为 16,行高为 24,您将使用 paragraphStyle.lineSpacing = 24 / 16 或简单地使用 paragraphStyle.lineSpacing = 1.5
    猜你喜欢
    • 2016-06-12
    • 2016-04-23
    • 2013-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多