TestsTested | ✓ |
LangLanguage | SwiftSwift |
License | MIT |
ReleasedLast Release | Apr 2016 |
SPMSupports SPM | ✓ |
Maintained by David House.
Creating NSAttributedString objects can be cumbersome to do in code. This library adds a helper object that can apply attributes to strings easily.
Creating a NSAttributedString with different formats applied to different sections of the string involves a lot of code. If you have some basic formatting needs, and some strings, this library allows for creating an NSAttributedString quickly.
The helper class is called Attributed
contains a set of formatting attributes, then gives a simple set of methods for applying those attributes to strings or NSAttributedStrings. It also provides a way for strings and NSAttributedStrings to be added together.
Attributed
objectlet noFormatting = Attributed()
let redText = Attributed(color: NSColor.redColor())
let blueText = Attributed(color: NSColor.blueColor())
let boldText = Attributed(font: NSFont.boldSystemFontOfSize(24))
let detailsText = Attributed(attributes: [NSForegroundColorAttributeName: NSColor.greenColor(), NSFontAttributeName: NSFont.systemFontOfSize(18)])
Attributed
objectlet stringWithAttributes = redText.toString { "Hi mom!" }
let attributedStringWithAttributes = redText.toString { NSAttributedString(string: "The quick brown fox") }
let multipleStrings = boldText.combine(strings: "Hi mom!", "The quick brown fox")
let nestedStrings = redText.toString { boldText.toString { "Header: " } + "here are the details" }
let anotherNestedString = redText.toString { boldText.toString { "Header: " } + detailsText.toString { "here are the details" } + blueText.toString{ "@" } }
let addedString = stringWithAttributes + " How are you?"