我想稍微修改一个字符的 y 位置NSAttributedString
。我知道我可以使用属性字典下标(或上标):
@{(id)kCTSuperscriptAttributeName: @(-1)}
不幸的是,在我的情况下,由此引起的转变太大了。我正在寻找一个以 1 点为单位调整基线的选项。
属性字符串将显示在UIButton
using 中-setAttributedTitle:forState:
。
我想稍微修改一个字符的 y 位置NSAttributedString
。我知道我可以使用属性字典下标(或上标):
@{(id)kCTSuperscriptAttributeName: @(-1)}
不幸的是,在我的情况下,由此引起的转变太大了。我正在寻找一个以 1 点为单位调整基线的选项。
属性字符串将显示在UIButton
using 中-setAttributedTitle:forState:
。
从 iOS 7 开始,该NSBaselineOffsetAttributeName
属性已被添加。
是的,你可以......但前提是你自己绘制文本,就像我在我的 DTCoreText 开源项目中那样。
请参阅此处 DTCoreTextLayoutFrame.m 中的第 924ff 行:https ://github.com/Cocoanetics/DTCoreText/blob/master/Core/Source/DTCoreTextLayoutFrame.m
不幸的是,这是我知道的唯一方法。UIKit 没有给你这个选项。