2

我已经在 Photoshop 中编辑了图像的以下属性,并且正在为它们寻找相应的颜色矩阵。色相/饱和度/对比度/颜色叠加/RGB 通道混合器/色阶。

到目前为止,我已经解决了色相/饱和度/对比度。剩下的 3 个我不清楚如何开始。

 _filter.hue = function( rotation ) {
    rotation = (rotation || 0)/180 * Math.PI;
    var cos = Math.cos(rotation),
        sin = Math.sin(rotation),
        lumR = 0.213,
        lumG = 0.715,
        lumB = 0.072;

    _filter.colorMatrix([
            lumR+cos*(1-lumR)+sin*(-lumR),lumG+cos*(-lumG)+sin*(-lumG),lumB+cos*(-lumB)+sin*(1-lumB),0,0,
            lumR+cos*(-lumR)+sin*(0.143),lumG+cos*(1-lumG)+sin*(0.140),lumB+cos*(-lumB)+sin*(-0.283),0,0,
            lumR+cos*(-lumR)+sin*(-(1-lumR)),lumG+cos*(-lumG)+sin*(lumG),lumB+cos*(1-lumB)+sin*(lumB),0,0,
            0, 0, 0, 1, 0
    ]);
};


 _filter.saturation = function( amount ) {
    var x = (amount || 0) * 2/3 + 1;
    var y = ((x-1) *-0.5);
    _filter.colorMatrix([
        x, y, y, 0, 0,
        y, x, y, 0, 0,
        y, y, x, 0, 0,
        0, 0, 0, 1, 0
    ]);
};


 _filter.contrast = function( amount ) {
    var v = (amount || 0) + 1;
    var o = -128 * (v-1);

    _filter.colorMatrix([
        v, 0, 0, 0, o,
        0, v, 0, 0, o,
        0, 0, v, 0, o,
        0, 0, 0, 1, 0
    ]);
};

这是所需的过滤器和输入属性-

  • 颜色叠加:十六进制颜色、不透明度和混合模式
  • RGB-Channel : 每个通道的 RGB 值,Constant & BlendMode
  • 级别:高、中、低值

3-Properties 的屏幕截图

4

0 回答 0