我在一个NSMutableAttributedString中添加了一个CATextLayer。除了paragraphStyle之外,所有属性都在应用。对原因有什么想法吗?
谢谢你的帮助。
func createTextLayer() {
let textLayer = CATextLayer()
textLayer.frame = CGRect(x: view.center.x - 150, y: view.frame.size.height / 2, width: 300, height: 300)
let layerText = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce auctor arcu quis velit congue dictum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce auctor arcu quis velit congue dictum."
let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.firstLineHeadIndent = 10
paragraphStyle.headIndent = 10
paragraphStyle.tailIndent = 10
paragraphStyle.minimumLineHeight = 38
paragraphStyle.alignment = .center
let textAttributes: [NSAttributedStringKey : Any] = [
.font: UIFont(name: "HelveticaNeue-Bold", size: 18)!,
.foregroundColor: UIColor.white,
.backgroundColor: UIColor.black,
.baselineOffset: 10,
.paragraphStyle: paragraphStyle
]
textLayer.string = NSMutableAttributedString(string: layerText, attributes: textAttributes)
textLayer.backgroundColor = UIColor.clear.cgColor
textLayer.isWrapped = true
textLayer.contentsScale = UIScreen.main.scale
textView.layer.addSublayer(textLayer)
}发布于 2018-04-08 16:48:21
AFAIK CATextLayer不尊重任何段落风格。您需要一个UITextView来显示段落样式的文本。
编辑:
我猜你想
paragraphStyle.tailIndent = -10负值是指从尾随边距的距离。
https://stackoverflow.com/questions/49719954
复制相似问题