| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- //
- // NSMutableAttributedString+Extension.swift
- // QuickSearchLocation
- //
- // Created by Destiny on 2024/11/26.
- //
- import Foundation
- import UIKit
- import YYText
- // MARK: - 一、基本的链式编程 扩展
- public extension NSMutableAttributedString {
-
- // MARK: 1.1、设置 删除线
- /// 设置 删除线
- /// - Returns: 返回自身
- @discardableResult
- func strikethrough() -> Self {
- let range = NSMakeRange(0, length)
- addAttributes([.strikethroughStyle: NSUnderlineStyle.single.rawValue], range: range)
- return self
- }
-
- // MARK: 1.2、设置富文本文字的颜色
- /// 设置富文本文字的颜色
- /// - Parameter color: 富文本文字的颜色
- /// - Returns: 返回自身
- @discardableResult
- func color(_ color: UIColor) -> Self {
- let range = NSMakeRange(0, length)
- addAttributes([.foregroundColor: color], range: range)
- return self
- }
-
- // MARK: 1.3、设置富文本文字的颜色(十六进制字符串颜色)
- /// 设置富文本文字的颜色(十六进制字符串颜色)
- /// - Parameter hexString: (十六进制字符串颜
- /// - Returns: 返回自身
- @discardableResult
- func color(_ hexString: String) -> Self {
- let range = NSMakeRange(0, length)
- addAttributes([.foregroundColor: UIColor.hexStringColor(hexString: hexString)], range: range)
- return self
- }
-
- // MARK: 1.4、设置富文本文字的大小
- /// 设置富文本文字的大小
- /// - Parameter font: 字体的大小
- /// - Returns: 返回自身
- @discardableResult
- func font(_ font: CGFloat) -> Self {
- let range = NSMakeRange(0, length)
- addAttributes([.font: UIFont.textF(font)], range: range)
- return self
- }
-
- // MARK: 1.5、设置富文本文字的 UIFont
- /// 设置富文本文字的 UIFont
- /// - Parameter font: UIFont
- /// - Returns: 返回自身
- @discardableResult
- func font(_ font: UIFont) -> Self {
- let range = NSMakeRange(0, length)
- addAttributes([.font: font], range: range)
- return self
- }
-
- // MARK: 1.6、设置富文本文字的间距
- /// 设置富文本文字的间距
- /// - Parameter wordSpaceing: 字体之间的间距
- /// - Returns: 返回自身
- @discardableResult
- func kern(_ wordSpaceing: CGFloat) -> Self {
- let range = NSMakeRange(0, length)
- addAttributes([.kern: wordSpaceing], range: range)
- return self
- }
-
- // MARK: 1.7、设置段落的样式
- /// 设置段落的样式
- /// - Parameter style: 样式
- /// - Returns: 返回自身
- @discardableResult
- func paragraphStyle(_ style: NSMutableParagraphStyle) -> Self {
- let range = NSMakeRange(0, length)
- addAttributes([.paragraphStyle: style], range: range)
- return self
- }
- }
|