You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

138 lines
4.4 KiB

Introduction
PerlMagick, is an objected-oriented Perl interface to ImageMagick.
Use the module to read, manipulate, or write an image or image sequence
from within a Perl script. This makes it suitable for Web CGI scripts. You
must have ImageMagick 7.0.0 or above installed on your system for this
module to work properly.
See
https://imagemagick.org/script/perl-magick.php
for additional information about PerlMagick. If you have problems, go to
https://github.com/ImageMagick/ImageMagick/discussions
for help. For instructions about installing ImageMagick, see
https://imagemagick.org/
Installation
Get the PerlMagick distribution and type the following:
gunzip ImageMagick-7.0.10-58.tar.gz
tar xvf ImageMagick-7.0.10
Follow the ImageMagick installation instructions in INSTALL-unix.txt
then type
cd PerlMagick
Next, edit Makefile.PL and change LIBS and INC to include the appropriate
path information to the required libMagick library. You will also need
library search paths (-L) to JPEG, PNG, TIFF, etc. libraries if they were
included with your installed version of ImageMagick. If an extension
library is built as a shared library but not installed in the system's
default library search path, you may need to add run-path information
(often -R or -rpath) corresponding to the equivalent library search
path option so that the library can be located at run-time.
To create and install the dymamically-loaded version of PerlMagick
(the preferred way), execute
perl Makefile.PL
make
make install
To create and install a new 'perl' executable (replacing your existing
PERL interpreter!) with PerlMagick statically linked (but other libraries
linked statically or dynamically according to system linker default),
execute
perl Makefile.PL
make perl
make -f Makefile.aperl inst_perl
or to create and install a new PERL interpreter with a different name
than 'perl' (e.g. 'PerlMagick') and with PerlMagick statically linked
perl Makefile.PL MAP_TARGET=PerlMagick
make PerlMagick
make -f Makefile.aperl inst_perl
See the ExtUtils::MakeMaker(3) manual page for more information on
building PERL extensions (like PerlMagick).
For Windows systems, type
perl Makefile.nt
nmake install
For Unix, you typically need to be root to install the software.
There are ways around this. Consult the Perl manual pages for more
information. You are now ready to utilize the PerlMagick routines from
within your Perl scripts.
Installation - Win32 Strawberry perl
On Win32 Strawberry perl the prefered way of installing PerlMagick is the
following:
1) Download and install ImageMagick Windows binaries from
https://imagemagick.org/script/binary-releases.php#windows
2) You HAVE TO choose dynamic (DLL) ImageMagick binaries. Note: it is not
possible to mix 32/64bit binaries of perl and ImageMagick
3) During installation select that you want to install ImageMagick's
development files (libraries+headers)
4) You NEED TO have ImageMagick's directory in your PATH. Note: we are
checking the presence of convert.exe or identify.exe tools
5) You might need Visual C++ Redistributable Package installed on your
system. See instructions on ImageMagick's Binary Release webpage.
6) If you have all prerequisites 1)...5) you can simply install
ImageMagick by running: cpan -i Image::Magick
Testing PerlMagick
Before PerlMagick is installed, you may want to execute
make test
to verify that PERL can load the PerlMagick extension ok. Chances are
some of the tests will fail if you do not have the proper delegates
installed for formats like JPEG, TIFF, etc.
To see a number of PerlMagick demonstration scripts, type
cd demo
make
Example Perl Magick Script
Here is an example script to get you started:
#!/usr/bin/perl
use Image::Magick;
$q = Image::Magick->new;
$x = $q->Read("model.gif", "logo.gif", "rose.gif");
warn "$x" if $x;
$x = $q->Crop(geom=>'100x100+100+100');
warn "$x" if $x;
$x = $q->Write("x.gif");
warn "$x" if $x;
The script reads three images, crops them, and writes a single image
as a GIF animation sequence.