【问题标题】:make a NSGradient from a given NSColor从给定的 NSColor 制作一个 NSGradient
【发布时间】:2013-09-11 05:20:29
【问题描述】:

我有一个函数用传递给它的NSColor 绘制特定区域。为了给它一种 3D 外观,我需要用给定颜色的渐变来绘制它。假设NSColorblueColor,那么该区域应该用lightBlueblueColor 之类的东西来绘制,这样我就可以获得轻微的渐变效果。

所以我的问题是如何创建比传递给函数的NSColor 更轻的NSColor

【问题讨论】:

    标签: objective-c cocoa gradient nscolor


    【解决方案1】:

    查看NSColor Class Reference“更改颜色”部分。有几种方法可以使新的颜色形式存在:

    – blendedColorWithFraction:ofColor:
    – colorWithAlphaComponent:
    – highlightWithLevel:
    – shadowWithLevel:
    

    您还可以使用从现有颜色(或 HSB 组件)计算的 RGB 组件创建新颜色

    + colorWithCalibratedHue:saturation:brightness:alpha:
    + colorWithCalibratedRed:green:blue:alpha:
    

    【讨论】:

    • 添加后,您会想尝试通过创建一种亮度低于原始颜色 (0.9?) 的新颜色来稍微降低颜色的亮度。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-07
    • 1970-01-01
    • 2011-08-19
    相关资源
    最近更新 更多