我想在 UIView
上将文本绘制到我的子类上,以便文本从形状中剪切出来,并显示 View 背后的背景,就像在此处找到的 OSX Mavericks Logo 中一样。
IBOutlet UIView *ViewTest
IBOutlet UIlabel *labelTest alpha:0 style
(显示背景图片)http://s25.postimg.org/tkf1sa3x9/1122.png
我会说我更像是一名中级/早期高级 iOS 开发人员,所以请随意向我抛出一些疯狂的解决方案。我希望我必须重写 drawRect
才能做到这一点。
一种方法是使用图层蒙版。将文本渲染到图像上,并将该图像设置为图层的蒙版,并将该图层指定为 View 的蒙版。
// Create your mask layer
CALayer* maskLayer = [CALayer layer];
maskLayer.frame = CGRectMake(0,0,yourMaskWidth ,yourMaskHeight);
maskLayer.contents = (__bridge id)[myTextRenderedImage CGImage];
// Apply the mask to your uiview layer
yourUIView.layer.mask = maskLayer;
myTextRenderedImage
是您呈现纯文本的图像。
关于iOS UIView 子类将透明文本绘制到背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27673119/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |