So it turns out that I still am having a little problem with this. It worked great on a mask that was On/Off values, but with a variable mask my result is a lot different from IM 6, which may be correct but not what I'm after. Here are my samples, any idea on what I could do different? Thanks for any input you may have.
IM 6 command line -
convert alphatemp1.png alphatemp2.png -alpha off -compose copy_opacity -composite final_im6.png
Magick.Net code
Mask Image
IM6 copy_opacity output
Magick.Net output (you can't tell the difference as much on the web page, but in a view that shows transparent you can really see how much additional artifact is left)
IM 6 command line -
convert alphatemp1.png alphatemp2.png -alpha off -compose copy_opacity -composite final_im6.png
Magick.Net code
using (MagickImage img = new MagickImage(TempFile1))
{
using (MagickImage mask = new MagickImage(TempFile2))
{
using (MagickImage outfile = new MagickImage(MagickColor.Transparent, img.Width, img.Height))
{
img.Mask = mask;
outfile.Composite(img, 0,0 , CompositeOperator.SrcOver);
outfile.Write("final.png");
}
}
}
Input ImageMask Image
IM6 copy_opacity output
Magick.Net output (you can't tell the difference as much on the web page, but in a view that shows transparent you can really see how much additional artifact is left)