jsdw_ios/QuickLocation/Core/Extension/NSAttributedString+Extensio...

45 lines
1.5 KiB
Swift

//
// NSAttributedString+Extension.swift
// JiuLaiBao
//
// Created by SeanXu on 17/05/2018.
// Copyright © 2018 GuoXiaoMei. All rights reserved.
//
import Foundation
import UIKit
public extension NSAttributedString {
convenience init?(string: String?, fontSize: CGFloat, color: UIColor = UIColor.darkText) {
self.init(string: string, font: UIFont.systemFont(ofSize: fontSize), color: color)
}
convenience init?(string: String?, font: UIFont, color: UIColor) {
guard let string = string else { return nil }
let attributes: [NSAttributedString.Key: Any] = [
.font: font,
.foregroundColor: color
]
self.init(string: string, attributes: attributes)
}
convenience init?(string: String?, fontSize: CGFloat, color: UIColor = UIColor.darkText, lineSpacing: CGFloat) {
self.init(string: string, font: UIFont.systemFont(ofSize: fontSize), color: color, lineSpacing: lineSpacing)
}
convenience init?(string: String?, font: UIFont, color: UIColor, lineSpacing: CGFloat) {
guard let string = string else { return nil }
let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.lineSpacing = lineSpacing
let attributes: [NSAttributedString.Key: Any] = [
.paragraphStyle: paragraphStyle,
.font: font,
.foregroundColor: color,
.baselineOffset: 0
]
self.init(string: string, attributes: attributes)
}
}