如何使用Swift编辑NSAttributedstring背景颜色大小和位置

如何使用Swift编辑NSAttributedstring背景颜色大小和位置,swift,fonts,background,nsattributedstring,truetype,Swift,Fonts,Background,Nsattributedstring,Truetype,在我的应用程序中,我有一个功能,用户可以将背景颜色添加到文本中 所以,我添加了.backgroundColor属性,它可以工作,但不同字体的背景位置不同。有没有办法编辑字符串背景大小和位置,或者我应该改为编辑ttf字体 谢谢 编辑-代码: 我尝试了两种方法 第一个不包括空格: var startIndex = self.text.startIndex while let r = self.text.range(of: "\\S+", options: .regularExpression, ra

在我的应用程序中,我有一个功能,用户可以将背景颜色添加到文本中

所以,我添加了.backgroundColor属性,它可以工作,但不同字体的背景位置不同。有没有办法编辑字符串背景大小和位置,或者我应该改为编辑ttf字体

谢谢

编辑-代码:

我尝试了两种方法 第一个不包括空格:

var startIndex = self.text.startIndex
while let r = self.text.range(of: "\\S+", options: .regularExpression, range: startIndex..<self.text.endIndex) {
   customizedText.addAttribute(.backgroundColor, value: highlightColor, range: NSRange(r, in: self.text))
                startIndex = r.upperBound
}

屁股你可以看到,它看起来不好任何路线,但左

我们可能会接受这种情况,但问题是其他字体看起来有什么可怕的问题

示例:

现在是什么(红色)和我想要什么(白色)的另一个示例:

有什么想法吗?
谢谢

您能提供一些屏幕截图,显示您当前的结果和期望吗?还有你的代码,请详细说明:代码和预期结果
customizedText.addAttribute(.backgroundColor, value: highlightColor, range: range)