It should still be done with NSAttributedStrings
as the parameters you've listed exactly describe the attributes of strings. NSTextStorage
is a subclass of NSMutableAttributedString
but it's not intended for what you want to do (I think this class might have misled you).
Using Text Kit to Draw and Manage Text contains a nice overview of Text Kit objects, I highly recommend reading it.