我使用了属性字符串和库,但是找不到标签文本效果的任何适当解决方案。
任何人都可以建议我如何实现此功能。
谢谢
答案 0 :(得分:3)
适应How do I apply a perspective transform to a UIView?中的代码,这是一些示例Swift 4代码,该示例将透视图应用于标签,从而提供与图像相似的结果。
let pview = UIView(frame: CGRect(x: 0, y: 0, width: 400, height: 300))
pview.backgroundColor = .black
let plabel = UILabel(frame: CGRect(x: 0, y: 110, width: 250, height: 75))
pview.addSubview(plabel)
plabel.text = " ND420 "
plabel.textAlignment = .center
plabel.font = UIFont.boldSystemFont(ofSize: 72)
plabel.textColor = .orange
plabel.backgroundColor = .red
plabel.sizeToFit()
let layer = plabel.layer
var transform = CATransform3DIdentity
transform.m34 = 1.0 / -200
transform = CATransform3DRotate(transform, -45 * CGFloat.pi / 180, 0, 1, 0)
layer.transform = transform
在操场上运行并查看pview
。
播放分配给transform.m34
的值和CATransform3DRotate
中的旋转角度。负旋转角(如上所示)使左侧变小而右侧变大。正角则相反。