in reply to Setting opacity with dissolve in perlmagick
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.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Setting opacity with dissolve in perlmagick
by shohn (Novice) on May 28, 2012 at 13:34 UTC |