P.S. Don't feel like a dunce, I seem to remember spending a few hours trying every compose type when I discovered this a few years back. :-) I changed a few filenames and lowered the opacity for clarity.
#!/usr/bin/perl use warnings; use Image::Magick; use strict; #From the command line, this is the result I'd like to achieve: # composite -dissolve 87.8 foreground.jpg -size 500x500 xc:white outpu +t.jpg; # composite mask.png output.jpg output.jpg my $mask = Image::Magick->new(magick=>'png'); my $background = Image::Magick->new(magick=>'png'); my $foreground = Image::Magick->new(magick=>'png'); $mask->Read("png:zzzmask.png"); $background->Set(size=>'500x500'); $background->Read("xc:white"); $background->Set(magick=>'png'); $foreground->Read("zzzforeground.jpg"); $foreground->Set(magick=>'png'); $background->Composite(compose=>'Atop', image=>$foreground, opacity => + '50.8%' ); $background->Composite(image=>$mask); $background->Write("zzzpoutput.png"); exit; # The mask can be any png with transparency (any kind of watermark), # and foreground any 500x500 image.
In reply to Re: Setting opacity with dissolve in perlmagick
by zentara
in thread Setting opacity with dissolve in perlmagick
by shohn
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |