UILabel+lineAndWordSpace.m 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. //
  2. // UILabel+lineAndWordSpace.m
  3. // tls
  4. //
  5. // Created by 张灿 on 2018/1/16.
  6. // Copyright © 2018年 tianlishe. All rights reserved.
  7. //
  8. #import "UILabel+lineAndWordSpace.h"
  9. @implementation UILabel (lineAndWordSpace)
  10. + (void)changeLineSpaceForLabel:(UILabel *)label WithSpace:(float)space {
  11. NSString *labelText = label.text;
  12. NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:labelText];
  13. NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
  14. [paragraphStyle setLineSpacing:space];
  15. [attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [labelText length])];
  16. label.attributedText = attributedString;
  17. // [label sizeToFit];
  18. }
  19. + (void)changeWordSpaceForLabel:(UILabel *)label WithSpace:(float)space {
  20. NSString *labelText = label.text;
  21. NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:labelText attributes:@{NSKernAttributeName:@(space)}];
  22. NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
  23. [attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [labelText length])];
  24. label.attributedText = attributedString;
  25. // [label sizeToFit];
  26. }
  27. + (void)changeSpaceForLabel:(UILabel *)label withLineSpace:(float)lineSpace WordSpace:(float)wordSpace {
  28. NSString *labelText = label.text;
  29. NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:labelText attributes:@{NSKernAttributeName:@(wordSpace)}];
  30. NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
  31. [paragraphStyle setLineSpacing:lineSpace];
  32. [attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [labelText length])];
  33. label.attributedText = attributedString;
  34. // [label sizeToFit];
  35. }
  36. @end