|
|
|
@ -3,6 +3,7 @@ |
|
|
|
|
|
|
|
// <auto-generated />
|
|
|
|
|
|
|
|
|
|
|
|
using System; |
|
|
|
using System.Numerics; |
|
|
|
using System.Runtime.CompilerServices; |
|
|
|
@ -16,7 +17,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalSrc(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -24,7 +25,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return source; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalSrcAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -32,7 +33,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(backdrop, source, Normal(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalSrcOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -40,7 +41,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(backdrop, source, Normal(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalSrcIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -48,7 +49,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(backdrop, source, Normal(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalSrcOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -56,13 +57,13 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalDest(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
return backdrop; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalDestAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -70,7 +71,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(source, backdrop, Normal(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalDestOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -78,7 +79,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(source, backdrop, Normal(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalDestIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -86,7 +87,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(source, backdrop, Normal(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalDestOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -94,7 +95,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(source, backdrop); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalXor(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -102,7 +103,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Xor(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 NormalClear(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -254,7 +255,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplySrc(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -262,7 +263,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return source; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplySrcAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -270,7 +271,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(backdrop, source, Multiply(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplySrcOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -278,7 +279,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(backdrop, source, Multiply(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplySrcIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -286,7 +287,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(backdrop, source, Multiply(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplySrcOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -294,13 +295,13 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplyDest(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
return backdrop; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplyDestAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -308,7 +309,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(source, backdrop, Multiply(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplyDestOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -316,7 +317,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(source, backdrop, Multiply(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplyDestIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -324,7 +325,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(source, backdrop, Multiply(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplyDestOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -332,7 +333,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(source, backdrop); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplyXor(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -340,7 +341,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Xor(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 MultiplyClear(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -492,7 +493,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddSrc(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -500,7 +501,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return source; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddSrcAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -508,7 +509,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(backdrop, source, Add(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddSrcOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -516,7 +517,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(backdrop, source, Add(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddSrcIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -524,7 +525,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(backdrop, source, Add(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddSrcOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -532,13 +533,13 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddDest(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
return backdrop; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddDestAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -546,7 +547,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(source, backdrop, Add(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddDestOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -554,7 +555,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(source, backdrop, Add(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddDestIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -562,7 +563,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(source, backdrop, Add(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddDestOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -570,7 +571,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(source, backdrop); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddXor(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -578,7 +579,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Xor(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 AddClear(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -730,7 +731,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractSrc(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -738,7 +739,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return source; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractSrcAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -746,7 +747,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(backdrop, source, Subtract(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractSrcOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -754,7 +755,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(backdrop, source, Subtract(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractSrcIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -762,7 +763,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(backdrop, source, Subtract(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractSrcOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -770,13 +771,13 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractDest(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
return backdrop; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractDestAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -784,7 +785,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(source, backdrop, Subtract(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractDestOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -792,7 +793,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(source, backdrop, Subtract(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractDestIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -800,7 +801,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(source, backdrop, Subtract(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractDestOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -808,7 +809,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(source, backdrop); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractXor(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -816,7 +817,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Xor(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 SubtractClear(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -968,7 +969,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenSrc(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -976,7 +977,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return source; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenSrcAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -984,7 +985,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(backdrop, source, Screen(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenSrcOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -992,7 +993,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(backdrop, source, Screen(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenSrcIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1000,7 +1001,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(backdrop, source, Screen(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenSrcOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1008,13 +1009,13 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenDest(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
return backdrop; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenDestAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1022,7 +1023,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(source, backdrop, Screen(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenDestOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1030,7 +1031,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(source, backdrop, Screen(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenDestIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1038,7 +1039,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(source, backdrop, Screen(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenDestOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1046,7 +1047,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(source, backdrop); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenXor(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1054,7 +1055,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Xor(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 ScreenClear(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1206,7 +1207,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenSrc(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1214,7 +1215,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return source; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenSrcAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1222,7 +1223,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(backdrop, source, Darken(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenSrcOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1230,7 +1231,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(backdrop, source, Darken(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenSrcIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1238,7 +1239,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(backdrop, source, Darken(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenSrcOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1246,13 +1247,13 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenDest(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
return backdrop; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenDestAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1260,7 +1261,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(source, backdrop, Darken(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenDestOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1268,7 +1269,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(source, backdrop, Darken(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenDestIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1276,7 +1277,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(source, backdrop, Darken(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenDestOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1284,7 +1285,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(source, backdrop); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenXor(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1292,7 +1293,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Xor(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 DarkenClear(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1444,7 +1445,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenSrc(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1452,7 +1453,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return source; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenSrcAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1460,7 +1461,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(backdrop, source, Lighten(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenSrcOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1468,7 +1469,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(backdrop, source, Lighten(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenSrcIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1476,7 +1477,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(backdrop, source, Lighten(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenSrcOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1484,13 +1485,13 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenDest(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
return backdrop; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenDestAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1498,7 +1499,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(source, backdrop, Lighten(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenDestOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1506,7 +1507,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(source, backdrop, Lighten(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenDestIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1514,7 +1515,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(source, backdrop, Lighten(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenDestOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1522,7 +1523,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(source, backdrop); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenXor(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1530,7 +1531,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Xor(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 LightenClear(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1682,7 +1683,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlaySrc(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1690,7 +1691,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return source; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlaySrcAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1698,7 +1699,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(backdrop, source, Overlay(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlaySrcOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1706,7 +1707,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(backdrop, source, Overlay(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlaySrcIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1714,7 +1715,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(backdrop, source, Overlay(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlaySrcOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1722,13 +1723,13 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlayDest(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
return backdrop; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlayDestAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1736,7 +1737,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(source, backdrop, Overlay(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlayDestOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1744,7 +1745,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(source, backdrop, Overlay(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlayDestIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1752,7 +1753,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(source, backdrop, Overlay(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlayDestOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1760,7 +1761,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(source, backdrop); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlayXor(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1768,7 +1769,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Xor(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 OverlayClear(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1920,7 +1921,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightSrc(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1928,7 +1929,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return source; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightSrcAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1936,7 +1937,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(backdrop, source, HardLight(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightSrcOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1944,7 +1945,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(backdrop, source, HardLight(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightSrcIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1952,7 +1953,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(backdrop, source, HardLight(backdrop, source)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightSrcOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1960,13 +1961,13 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightDest(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
return backdrop; |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightDestAtop(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1974,7 +1975,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Atop(source, backdrop, HardLight(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightDestOver(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1982,7 +1983,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Over(source, backdrop, HardLight(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightDestIn(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1990,7 +1991,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return In(source, backdrop, HardLight(source, backdrop)); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightDestOut(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -1998,7 +1999,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Out(source, backdrop); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightXor(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
@ -2006,7 +2007,7 @@ namespace SixLabors.ImageSharp.PixelFormats.PixelBlenders |
|
|
|
return Xor(backdrop, source); |
|
|
|
} |
|
|
|
|
|
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)] |
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)] |
|
|
|
public static Vector4 HardLightClear(Vector4 backdrop, Vector4 source, float opacity) |
|
|
|
{ |
|
|
|
source.W *= opacity; |
|
|
|
|