Search code examples
imagemagick

More efficient image composite with opacity?


 I need to composite a soft light layer on top of a base image using 50% opacity. The following works, but is there a faster or more efficient way to achieve the same thing?

magick base.tif -alpha Off -compose SoftLight softlight.tif -composite fullSoftLightComp.tif
magick base.tif fullSoftLightComp.tif -compose dissolve -define compose:args=50,100 -composite compHalfLight.tif

Solution

  • With Imagemagick, you could try on unix-like systems

    magick base.tif -alpha off ( softlight.tif -evaluate multiply 0.5 ) -compose softlight -composite compHalfLight.tif
    

    on Windows remove the \ from before the parentheses, so

    Does that do what you want? Probably not, since you are doing 2 composites.

    You could try adjusting the 0.5 fraction to match.