所以我想根据Photoshop中的渐变设置UILabel的文字颜色。我具有渐变的{rgb值,{211,119,95}和{199,86,56}。这可能吗?我该怎么做?基于自定义线性渐变的UILabel文字颜色
回答
您可能需要使用这些定制的标签之一:
嗯,我以为已经在使用它了,除此之外,还有其他什么? – Carmichael 2013-04-09 14:52:13
是的,看看这个答案:http://stackoverflow.com/a/1391723/550177 – Felix 2013-04-09 14:56:50
非常感谢! – Carmichael 2013-04-10 11:07:58
另一种方式,如果你想定位到iOS 6+,与类别到UIColor
您创建一个UIColor从梯度:
[attrString addAttribute:NSForegroundColorAttributeName value:[UIColor gradientFromColor:[UIColor greenColor] toColor:[UIColor redColor] withHeight:labelView.height] range:defaultRange];
labelView.attributedString = attrString;
或简单地将文字颜色,如果你不也需要中风或其他造型效果
labelView.textColor = [UIColor gradientFromColor:[UIColor greenColor] toColor:[UIColor redColor] withHeight:labelView.height];
和:
+ (UIColor*) gradientFromColor:(UIColor*)c1 toColor:(UIColor*)c2 withHeight:(int)height
{
CGSize size = CGSizeMake(1, height);
UIGraphicsBeginImageContextWithOptions(size, NO, 0);
CGContextRef context = UIGraphicsGetCurrentContext();
CGColorSpaceRef colorspace = CGColorSpaceCreateDeviceRGB();
NSArray* colors = [NSArray arrayWithObjects:(id)c1.CGColor, (id)c2.CGColor, nil];
CGGradientRef gradient = CGGradientCreateWithColors(colorspace, (CFArrayRef)colors, NULL);
CGContextDrawLinearGradient(context, gradient, CGPointMake(0, 0), CGPointMake(0, size.height), 0);
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
CGGradientRelease(gradient);
CGColorSpaceRelease(colorspace);
UIGraphicsEndImageContext();
return [UIColor colorWithPatternImage:image];
}
与attrString为您NSMutableAttributeString
然后瞧,它在UILabel上的效果更好,否则你必须从你的字体(UIFont.leading)计算你的行高并将其传递给方法,背景将垂直重复。
真的很酷....易于使用.... – milanpanchal 2013-12-18 06:31:47
- 1. UIlabel文本颜色取决于渐变颜色指示器
- 2. 基于渐变色标定义许多css类的颜色
- 3. openCV中的线性颜色渐变
- 4. Matplotlib自定义渐变渐变忽略颜色
- 5. 的UILabel与颜色渐变到标签
- 6. CSS:渐变文字颜色?
- 7. 线性颜色渐变不起作用
- 8. Highcharts - 自定义颜色应用于渐变
- 9. SVG线性渐变定义
- 10. 基于模板绑定背景颜色更改内容模板的线性渐变偏移颜色WPF
- 11. 如何自定义UISegmentedControl字体颜色和UIToolbar渐变?
- 12. 获取给定颜色的渐变,其中颜色位于渐变的中间
- 13. 如何指定颜色渐变开始使用线性渐变的高度
- 14. 改变UILabel的文字颜色
- 15. Julia中的自定义颜色渐变热图
- 16. iOS:自定义颜色作为UILabel背景颜色
- 17. CoreGraphics的一条线的颜色渐变
- 18. 基于值的Android颜色渐变变化
- 19. AchartEngine中折线图的渐变颜色
- 20. 如何设置可变的线性渐变颜色?
- 21. UILabel - 颜色特定字符
- 22. 的UILabel更改背景颜色逐渐
- 23. Android谷歌地图:自定义标记为渐变颜色
- 24. HighCharts:如何将自定义颜色与渐变结合起来
- 25. d3.js:如何创建自定义颜色渐变图例?
- 26. d3.js自定义颜色怪异行为 - 渐变问题
- 27. 更改自定义UICollectionViewCell中UILabel的文本颜色
- 28. 渐变色到自定义视图
- 29. UILabel文字自定义
- 30. Javascript颜色渐变
“基于渐变”是什么意思? – Bernat 2013-04-09 14:39:01
你可以使用coretext并自己绘制文本。 – yunas 2013-04-09 14:40:56
所以我的字体颜色是在Photoshop中使用渐变制作的,所以我使用这两组值作为用于获取特定颜色的rgb值。 – Carmichael 2013-04-09 14:41:31