将 Photoshop HSL 调整层转换为颜色矩阵?
Convert Photoshop HSL Adjustment layer to Color Matrix?
我正在为颜色矩阵做噩梦。我在 photoshop 中使用了一个调整图层,其值为 Hue: -37
、Saturation: -25
,这会产生漂亮的粉红色黎明色:
我正在尝试使用 EaselJS
根据 Rainmeter 的 HSL 调整层中的值创建我的矩阵(只能使用这些值),所以我正在生成我的矩阵:
new createjs.ColorMatrix().adjustColor(0, 0, -25, -37);
看这里:http://www.createjs.com/docs/easeljs/classes/ColorMatrix.html#method_adjustColor
如您所见,这会产生亮绿色:
还有其他方法可以生成我的颜色矩阵吗?我可以将 Photoshop 调整图层转换为颜色矩阵吗?
结果的差异是否与未检查 Colorize
有关?
事实证明这个问题的答案相当简单。生成的矩阵是正确的,但略有不同。这些差异原来是因为 Photoshop HSL 调整层也更改了 brightness
和 contrast
。我相信 Lightness
是 Brightness
和 Contrast
的函数,尽管我不确定它是如何计算出来的,所以要做到完美并不容易。基本上是反复试验。
之前我的颜色完全错误的原因是 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 矩阵。
我正在为颜色矩阵做噩梦。我在 photoshop 中使用了一个调整图层,其值为 Hue: -37
、Saturation: -25
,这会产生漂亮的粉红色黎明色:
我正在尝试使用 EaselJS
根据 Rainmeter 的 HSL 调整层中的值创建我的矩阵(只能使用这些值),所以我正在生成我的矩阵:
new createjs.ColorMatrix().adjustColor(0, 0, -25, -37);
看这里:http://www.createjs.com/docs/easeljs/classes/ColorMatrix.html#method_adjustColor
如您所见,这会产生亮绿色:
还有其他方法可以生成我的颜色矩阵吗?我可以将 Photoshop 调整图层转换为颜色矩阵吗?
结果的差异是否与未检查 Colorize
有关?
事实证明这个问题的答案相当简单。生成的矩阵是正确的,但略有不同。这些差异原来是因为 Photoshop HSL 调整层也更改了 brightness
和 contrast
。我相信 Lightness
是 Brightness
和 Contrast
的函数,尽管我不确定它是如何计算出来的,所以要做到完美并不容易。基本上是反复试验。
之前我的颜色完全错误的原因是 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 矩阵。