如何在 Swift 中更改字母间距?

Posted

技术标签:

【中文标题】如何在 Swift 中更改字母间距?【英文标题】:How to change letter spacing in Swift? 【发布时间】:2014-12-06 20:11:33 【问题描述】:

我想更改导航栏标题中的字母间距,但到目前为止还没有成功。

提前致谢。

【问题讨论】:

【参考方案1】:

一个很酷的 UILabel 扩展:

extension UILabel
func setCharacterSpacing(_ spacing: CGFloat)
    let attributedStr = NSMutableAttributedString(string: self.text ?? "")
    attributedStr.addAttribute(NSAttributedString.Key.kern, value: spacing, range: NSMakeRange(0, attributedStr.length))
    self.attributedText = attributedStr
 

用法:

label.setCharacterSpacing(4)

【讨论】:

【参考方案2】:

您可以通过代码来设置标题,通过带有一些空格(“E x a m p l e”)的标题字符串,或使用制表符(\t)或通过如下代码:

 let attributedString = NSMutableAttributedString(string: "Example")
 attributedString.addAttribute(NSKernAttributeName, value:   CGFloat(1.4), range: NSRange(location: 0, length: 9))

然后您将属性字符串分配给您的标题。

【讨论】:

【参考方案3】:

波纹管功能对我有用,希望对你也有帮助

func setCharacterSpacig(string:String) -> NSMutableAttributedString 

    let attributedStr = NSMutableAttributedString(string: string)
    attributedStr.addAttribute(NSKernAttributeName, value: 1.25, range: NSMakeRange(0, attributedStr.length))
    return attributedStr

【讨论】:

以上是关于如何在 Swift 中更改字母间距?的主要内容,如果未能解决你的问题,请参考以下文章

如何更改 Textview 中的字母间距?

Swift - UICollectionView:如何在标题中自动布局标签间距

如何对 QComboBox 中的文本执行字母间距?

如何在公式编辑器中调整字母间距

如何在android的提示文本中设置字母间距

如何使用 pycairo 创建字母间距属性?