NSImage+HHTint - Tints grayscale images using CoreImage
https://github.com/gloubibou/NSImage-HHTint
This category on NSImage adds a single method:
- (NSImage *)hh_imageTintedWithColor:(NSColor *)tint;
This method creates a tinted copy of the image. Colored / gray pixels of the original image lead to pixels of an equally dark shade of the tint color.
This code was originally written for Tembo.app. The navigation bar in Tembo is build from grayscale images. At runtime these are tinted to a dark blue. In Tembo's drill-down view the same process is applied to a stock NSSegementedControl to make it match the color of the navigation bar.
这个category给NSImage添加了一个方法:
- (NSImage *)hh_imageTintedWithColor:(NSColor *)tint;
这个方法会创建一个image的copy备份,之前灰度的图片会填充上一些颜色。
这份代码最初是写给应用Tembo.app的。Tembo应用中导航栏上的图片是灰白图片,运行时动态的填充为深蓝色。在Tembo的下拉view中,NSSegementedControl也用了同样的方式,在下拉过程中填充颜色来保持与导航栏上的颜色一致。