Greeings Monks,
I've been working with some images recently using imagemagick. I started by creating the desired image with the command line tools, but the final objective is to avoid forking off processes, so I would like to be able to use Image::Magick to replecate my steps. This is where I run into trouble.
A brief synopsis of the commands I've run (escape for your shell as needed):
convert ( imgbase*.gif -colorspace Gray -colors 2 -negate ) -colorize
+$color -negate -transparent white outimg%02d.gif
convert -background white outimg01.gif outimg02.gif outimg03.gif $etc
+-flatten outcomp.gif
And the code that from what I've gleaned from the documentation should do the same thing.
my $image;
print "Creating composite...\n";
my @imgfiles = glob("img*.gif");
my $compos = Image::Magick->new(size=>'3200x1324');
foreach my $img (reverse @imgfiles) {
print "\t Compositing image $img... ";
$image = Image::Magick->new();
$image->Read($img);
$image->Quantize(colors=>2,colorspace=>"Gray");
$image->Negate();
$image->Colorize(fill=>"rgb(".(pop @colors).")");
$image->Negate();
$image->Transparent(color=>"white");
push @$compos,$image;
undef $image;
print "composed.\n";
}
$compos->Flatten();
$compos->Write('outcomp.gif');
The docs seem kindof sparse and obstruse to me, so if there are undocumented caveats or other things I should know please light the darkness monks.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|