Advertisement
Guest User

Untitled

a guest
Nov 26th, 2015
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.04 KB | None | 0 0
  1. import UIKit
  2.  
  3. extension UILabel {
  4.  
  5. func setText(text: String, withKerning kerning: Double) {
  6. self.attributedText = NSAttributedString(string: text, attributes: kerningAttribute(kerning))
  7. }
  8.  
  9. func setText(text: String, withLineSpacing lineSpacing: CGFloat) {
  10. self.attributedText = NSAttributedString(string: text, attributes: lineSpacingAttribute(lineSpacing))
  11. }
  12.  
  13. func setText(text: String, withLineHeightMultiple lineHeightMultiple: CGFloat) {
  14. self.attributedText = NSAttributedString(string: text, attributes:lineHeightMultipleAttribute(lineHeightMultiple))
  15. }
  16.  
  17. func setText(text: String, withKerning kerning: Double, lineSpacing: CGFloat) {
  18. var attributes = kerningAttribute(kerning)
  19. attributes.add(lineSpacingAttribute(lineSpacing))
  20. self.attributedText = NSAttributedString(string: text, attributes: attributes)
  21. }
  22.  
  23. func setText(text: String, withKerning kerning: Double, lineHeightMultiple: CGFloat) {
  24. var attributes = kerningAttribute(kerning)
  25. attributes.add(lineHeightMultipleAttribute(lineHeightMultiple))
  26. self.attributedText = NSAttributedString(string: text, attributes: attributes)
  27. }
  28.  
  29.  
  30.  
  31. private func kerningAttribute(kerning: Double) -> [String: AnyObject] {
  32. return [NSKernAttributeName: kerning]
  33. }
  34.  
  35. private func lineSpacingAttribute(lineSpacing: CGFloat) -> [String: AnyObject] {
  36. let paragraphStyle = NSMutableParagraphStyle()
  37. paragraphStyle.lineSpacing = lineSpacing
  38. return [NSParagraphStyleAttributeName : paragraphStyle]
  39. }
  40.  
  41. private func lineHeightMultipleAttribute(lineHeightMultiple: CGFloat) -> [String: AnyObject] {
  42. let paragraphStyle = NSMutableParagraphStyle()
  43. paragraphStyle.lineHeightMultiple = lineHeightMultiple
  44. return [NSParagraphStyleAttributeName : paragraphStyle]
  45. }
  46. }
  47.  
  48.  
  49. private extension Dictionary {
  50. mutating func add(dictionary: Dictionary) {
  51. for (name, value) in dictionary {
  52. self[name] = value
  53. }
  54. }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement