2017-02-24 38 views
0

歪斜文字我想让我的文字如歪斜是在图片。我有所需的字体文件。我如何在Swift 3中实现这一点?提前致谢!的UILabel与iOS上

enter image description here

回答

3

您可以将2D转换到任何UIView的subclasss实例。如果label是您的UILabel,然后:

label.transform = CGAffineTransform(a: 1.0, b: tan(-0.5), c: 0.0, d: 1.0, tx: 0.0, ty: 0.0) 

的参数是表示变换矩阵的值。该矩阵

| a b 0 | 
| c d 0 | 
| tx tx 1 | 

skew matrix algorithm对参数如何设置的细节。对于你的歪斜,b是重要的价值。

+1

也许你想说的话:'label.tranform = CGAffineTransform(...)这是' –

+0

现在! –

+0

双击Xcode和Safari给出不同的结果:) –

-2

您可以尝试使用CGAffineTransform affineTransformMakeShear()送给你的UIView所需的歪斜的效果。

+0

'affineTransformMakeShear()'在iOS SDK中不存在。 –

0

应用转换到的UILabel。一个小的负面b将像您的图片中一样倾斜。游乐场例如:

let container = UIView(frame: CGRect(x: 0, y: 0, width: 400, height: 200)) 
let label = UILabel() 

label.text = "ADDRESS" 
label.sizeToFit() 
label.transform = CGAffineTransform(a: 1.0, b: -0.5, c: 0, d: 1.0, tx: 0, ty: 20) 

container.addSubview(label) 
PlaygroundPage.current.liveView = container 

container 
+0

非常感谢! :) –