8

我想稍微修改一个字符的 y 位置NSAttributedString。我知道我可以使用属性字典下标(或上标):

@{(id)kCTSuperscriptAttributeName: @(-1)}

不幸的是,在我的情况下,由此引起的转变太大了。我正在寻找一个以 1 点为单位调整基线的选项。

属性字符串将显示在UIButtonusing 中-setAttributedTitle:forState:

4

2 回答 2

16

从 iOS 7 开始,该NSBaselineOffsetAttributeName属性已被添加。

于 2014-06-24T00:00:20.040 回答
1

是的,你可以......但前提是你自己绘制文本,就像我在我的 DTCoreText 开源项目中那样。

请参阅此处 DTCoreTextLayoutFrame.m 中的第 924ff 行:https ://github.com/Cocoanetics/DTCoreText/blob/master/Core/Source/DTCoreTextLayoutFrame.m

不幸的是,这是我知道的唯一方法。UIKit 没有给你这个选项。

于 2013-01-11T15:41:30.077 回答