在Swift中可以将行高设置为小于1吗?

时间:2019-04-25 17:28:38

标签: swift nsattributedstring

我正在尝试使行距比小窗口的默认行距少。

我有类似以下问题的代码:How to Increase Line spacing in UILabel in Swift

let title = "This is text that will be long enough to form two lines"
let styles = NSMutableParagraphStyle()
styles.lineSpacing = 0.1
let attribs = [
    NSAttributedString.Key.paragraphStyle:styles
]
let attrString:NSAttributedString = NSAttributedString.init(string: title, attributes: attribs)
introText.attributedStringValue = attrString

虽然将lineSpacing更改为10会产生显着差异,但是如果将其小于1则看不到差异。

这是0.1的样子:

enter image description here

2 个答案:

答案 0 :(得分:1)

行距是以为单位,而不是以行为单位。基本上没有一点点的东西(出于绘图目的;我简化了,因为确实存在视网膜屏幕)。零是最小值,当您说0.1时,您在那里。您无法再降低领先优势。

答案 1 :(得分:0)

请记住点与像素之间的关系。对于最新的设备,一个点代表两个或三个像素。我已经将UIView的高度设置为0.5,用作分隔线,在许多设备上大约为1像素,并且能够看到差异。但是,高度0.1可能四舍五入。