将Photoshop HSL调整图层转换为Color Matrix?

时间:2016-03-13 17:56:11

标签: javascript photoshop easeljs colormatrix rainmeter

我正在玩彩色矩阵的噩梦。我在photoshop中使用了一个调整图层,其值为Hue: -37Saturation: -25,这会产生一种漂亮的粉红色黎明色:

Photoshop Adjustment Layer

我正在尝试使用EaselJS根据Rainmeter的HSL调整图层中的值创建我的矩阵(只能使用这些),所以我生成我的矩阵,如下所示:

new createjs.ColorMatrix().adjustColor(0, 0, -25, -37);

见这里:http://www.createjs.com/docs/easeljs/classes/ColorMatrix.html#method_adjustColor

如您所见,这会产生亮绿色:

Bright green

还有其他方法可以生成我的色彩矩阵吗?我可以将Photoshop调整图层转换为颜色矩阵吗? 结果的差异是否与未Colorize检查有关?

1 个答案:

答案 0 :(得分:1)

这个问题的答案相当简单。生成的矩阵是正确的,略有不同。这些差异原来是因为Photoshop HSL调整图层也会更改brightnesscontrast。我认为LightnessBrightnessContrast的函数,但我不确定它是如何解决的,因此不容易让它变得完美。基本上是试错。

之前我的颜色完全错误的原因是由ColorMatrix.js生成的数组从上到下填充矩阵而不是从左到右。

即:

Array [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

变为:

Matrix [[0, 2, 4, 6, 8],
        [1, 3, 5, 7, 9]]

缩短例如,真彩色矩阵将是5x5矩阵。