今天给播放器更换了字幕展示风格,在这里简单记录一下,因为字幕和别的普通UILabel
展示有点不一样,因为播放器播放视频的时候有各种颜色,所以就要求不管什么背景颜色下用户都需要清楚的看到字幕,所以首先肯定是不能直接使用单色,我刚开始使用了添加阴影,后来产品说有点不清晰,今天又改成了描边,两个效果对比个人觉得描边效果更好一点
效果
-
阴影
-
描边
实现
- 阴影
self.layer.shadowColor = UIColor.blackColor.CGColor;
self.layer.shadowOffset = CGSizeMake(2, 2);
self.layer.shadowOpacity = 0.8;
self.layer.shadowRadius = 4;
- 描边
- (void)drawTextInRect:(CGRect)rect
{
CGContextRef c = UIGraphicsGetCurrentContext();
// 设置描边宽度
CGContextSetLineWidth(c, 1);
CGContextSetLineJoin(c, kCGLineJoinRound);
CGContextSetTextDrawingMode(c, kCGTextStroke);
// 描边颜色
self.textColor = [UIColor blackColor];
[super drawTextInRect:rect];
// 文本颜色
self.textColor = [UIColor whiteColor];
CGContextSetTextDrawingMode(c, kCGTextFill);
[super drawTextInRect:rect];
}
备注:上面👆🏻的方法是UILabel
的方法,所以自定义之后在.m
文件中粘贴这个方法和代码就可以,系统会调用不需要单独手动调用
完美
网友评论