------------------------------------
"This is the math form Gimp currently uses:
STD_BLEND + (Sa == 0.0 || Dc / Sc > Da / Sa ? Sa * Da : Dc * Sa * Sa / Sc)
HV 4.6.1 (and CV) actually uses:
(Sc > 0 ? Dc / Sc : 1)
Cin5 actually uses:
(Dc > 0 ? Sc / Dc : 0)
So, none of these look like Gimp. But Divide is a bit squirrelly.
It can fail on a per pixel basis because of divide by zero.
I prefer src (top track) / dst (btm track) with divide by zero as black (not white).
I think this is the way most would like to see it work, since it is a stack of operations, and it easier to work up from zero, than down from 1."
---------------------------------------
----------------------------------------
This is from CGG'code
Cinelerra-GG
// DIVIDE [Sa + Da - Sa*Da, Sc*(1 - Da) + Dc*(1 - Sa) + Sc / Dc]
// SUBTRACT [(Sa - Da), (Sc - Dc)]
But in HV and CV*, the Subtract and Divide blend modes work the same way as GIMP, Photoshop, Adobe Premiere Pro, EDIUS
GIMPDivide mode multiplies each pixel value in the lower layer by 256 and then divides that by the corresponding pixel value of the upper layer plus one.
Subtract mode subtracts the pixel values of the upper layer from the pixel values of the lower layer.
Photoshophttps://photoblogstop.com/photoshop/photoshop-blend-modes-explainedDivide
Background layer ÷ Active layer = Quotient
Subtract
B minus A
Adobe Premiere Prohttps://helpx.adobe.com/premiere-pro/using/blending-modes.htmlDivide
Divides underlying color by source color. If the source color is white, the result color is the underlying color. Result color values can be greater than 1.0 in 32-bpc projects.
Subtract
Subtracts the source file from the underlying color. If the source color is black, the result color is the underlying color. Result color values can be less than 0 in 32-bpc project
EDIUS (quote from its manual)
Subtract
Subtracts the overlay color values from the background.