ftp.nice.ch/pub/next/unix/graphics/ImageMagick.3.8.6.s.tar.gz#/ImageMagick

ImageMagick.html
 
ImageMagick.man
[View ImageMagick.man] 
Imakefile
 
Install
 
Magick.tmpl
 
Makefile
 
Makefile.in
 
Manifest.ps
[View Manifest.ps as PDF] 
README
 
X.h → magick/X.h
[Download]
animate.c
[View animate.c] 
animate.h
[View animate.h] 
animate.man
[View animate.man] 
combine.c
[View combine.c] 
combine.man
[View combine.man] 
config.log
 
config.status
 
configure
 
configure.in
 
convert.c
[View convert.c] 
convert.man
[View convert.man] 
display.c
[View display.c] 
display.h
[View display.h] 
display.man
[View display.man] 
identify.c
[View identify.c] 
identify.man
[View identify.man] 
images/
 
import.c
[View import.c] 
import.man
[View import.man] 
install-sh
 
jpeg-6a/
 
magick/
 
magickshr.opt
 
make.com
 
miff.man
[View miff.man] 
mkinstalldirs
 
mogrify.c
[View mogrify.c] 
mogrify.man
[View mogrify.man] 
montage.c
[View montage.c] 
montage.man
[View montage.man] 
quantize.man
[View quantize.man] 
scenes/
 
scripts/
 
www/
 
xlib/
 
xtp/
 

README

  "I swear by my life and my love of it that I will never live
   for the sake of another man, nor ask another man to live for
   mine."

                    John Galt in "Atlas Shrugged", by Ayn Rand


AUTHOR

  The author is cristy@sympatico.org.  This software is NOT
  shareware.  However, I am interested in who might be using
  it.  Please consider sending me a picture postcard of the area
  where you live.  Send postcards to

    John Cristy
    P.O. Box 40
    Landenberg, PA  19350
    USA

  I'm also interested in receiving coins from around the world.


AVAILABILITY

  ImageMagick is available as

    ftp://ftp.wizards.dupont.com/pub/ImageMagick/ImageMagick-3.8.6.tar.gz

  ImageMagick client executables are available for some platforms. See

    ftp://ftp.wizards.dupont.com/pub/ImageMagick/binaries
    ftp://ftp.wizards.dupont.com/pub/ImageMagick/mac
    ftp://ftp.wizards.dupont.com/pub/ImageMagick/nt
    ftp://ftp.wizards.dupont.com/pub/ImageMagick/vms
    ftp://ftp.wizards.dupont.com/pub/ImageMagick/linux

  I want ImageMagick to be of high quality, so if you encounter a
  problem I will investigate.  However, be sure you are using the most
  recent version from ftp.wizards.dupont.com before submitting any bug
  reports or suggestions.


WWW

  The official ImageMagick WWW page is

    http://www.wizards.dupont.com/cristy/ImageMagick.html

  Another useful ImageMagick WWW page is

    http://www.vrl.com/Imaging/

  To use display as your external image viewer, edit the global mail-cap
  file or your personal mail-cap file .mailrc (located at your home
  directory) and put this entry:

    image/*; display %s


MAILING LIST

  There is a mailing list for discussions and bug reports about
  ImageMagick.  To subscribe send the message

    subscribe magick

  to majordomo@wizards.dupont.com.  You will receive a welcome message
  which tells you how to post messages to the list, magick@wizards.dupont.com.


MEMORY REQUIREMENTS

  You should allocate sufficient swap space on your system before
  running ImageMagick; otherwise, you may experience random server or
  application crashes. Anything less than 80 megabytes of swap space is
  likely to cause random crashes.

  On many systems, you will find that 80 megabytes is insufficient and
  you will have to allocate more swap space.  You should also have at
  least 32 megabytes of real memory although 64 megabytes or more is
  recommended.


UNIX COMPILATION

  Type:

    gunzip ImageMagick-3.8.6.tar.gz
    tar xvf ImageMagick-3.8.6.tar
    cd ImageMagick

  You might want to check the values of certain program definitions
  before compiling.  Change the definitions of ApplicationDefaults,
  BrowseCommand, EditorCommand, PostscriptColorDevice, PrintCommand,
  RGBColorDatabase, and TemporaryDirectory in magick/magick.h to suit
  your local requirements.  Next, type.

    xmkmf
    make Makefiles
    make -k

  Note, ImageMagick requires an ANSI compiler.  If the compile fails, first
  check to ensure your compile is ANSI compatible.  If it fails for some
  other reason, try

    cd magick
    make -k
    cd ..
    make -k

  If you do not have gunzip(1), it is available as
  prep.ai.mit.edu:pub/gnu/gzip-1.2.4.shar.  If you do not have
  xmkmf(1), or if xmkmf(1) fails to produce a usable Makefile,
  type

    configure
    make

  If you use gcc and get a link error, recompile with the option
  -fPIC.  If you use gcc and get a core dump, recompile with the option
  -fwritable-strings.  Dec Alpha users might need to remove magick/XWDFile.h
  and recompile to read images of type XWD.  Change ReadBinaryType to "r" and
  WriteBinaryType to "w" in magick/magick.h for FreeBSD.


  Finally type:

    display images/aquarium.miff
    display -monochrome -dither images/aquarium.miff

  If the program faults make sure that you may have inadvertingly linked
  to an older version of the libMagick library.  In this case type

    cd ImageMagick/magick
    make install
    cd ..
    make

  The aquarium and other images are available from anonymous FTP
  at ftp.wizards.dupont.com, file /pub/ImageMagick.images.tar.gz.

  If the image colors are not correct use this command:

    display -visual default images/aquarium.miff

  You can find other example images in the 'images' directory.

  Be sure to read the manual pages for the display(1), animate(1),
  montage(1), import(1), mogrify(1), identify(1), combine(1), and
  convert(1) utilities.  Also read the ImageMagick frequently asked
  questions in the file www/Magick.html.  This is required reading.  Most
  of the questions I get via electronic mail are answered in this
  document.

  Place display(1) X application defaults in
  /usr/lib/X11/app-defaults/Display.  Use the appropriate name
  for other clients (e.g. Animate, Montage, etc).  To execute display(1)
  from as a menu item of any window manager (olwm, mwm, twm, etc), use

    display logo:

  The ImageMagick utilities read and write MIFF images.  Refer
  to the end of this message for more information about MIFF.
  Use convert(1) to convert images to and from the MIFF format.

  ImageMagick utilities recognizes these image formats:

       Tag       Description
       ----------------------------------------------------
       AVS       AVS X image file
       BMP       Microsoft Windows bitmap image file
       CMYK      Raw cyan, magenta, yellow, and black bytes
       EPS       Adobe Encapsulated Postscript
       FAX       Group 3
       FITS      Flexible Image Transport System
       GIF       Compuserve Graphics image file
       GRAY      Raw gray bytes
       HDF       Hierarchical Data Format.
       JPEG      Joint Photographic Experts Group file interchange format
       MAP       colormap intensities and indices
       MATTE     Raw matte bytes
       MIFF      Magick image file format
       MNG       Multiple-Image Network Graphics
       MPEG      Motion Picture Experts Group digital video
       MTV       MTV ray tracer image format
       PCD       Photo CD
       PCX       ZSoft IBM PC Paintbrush file
       PDF       Portable Document Format
       PICT      Apple Macintosh QuickDraw/PICT file
       PNG       Portable Network Graphics
       PNM       Portable bitmap
       PS        Adobe PostScript file
       PS2       Adobe PostScript Level II file
       RAD       Radiance image file
       RGB       Raw red, green, and blue bytes
       RLA       Alias/Wavefront image file; read only
       RLE       Utah Raster Toolkit
       SUN       SUN Raster image file format
       TGA       Truevision Targa image file
       TEXT      raw text file;  read only
       TIFF      Tagged Image File Format
       UYVY      16bit/pixel interleaved YUV (e.g. AccomWSD)
       VICAR     Planetary File Format
       VID       Visual Image Directory
       VIFF      Khoros Visualization image file
       X         select image from X server screen
       XC        constant image of X server background color
       XBM       X11 bitmap
       XPM       X11 pixmap
       XWD       X11 window dump
       YUV       CCIR 601 4:1:1 file.

  and for your convenience automatically converts most of these
  alien image format to MIFF at execution time.  However, the
  MIFF image format has several advantages over most image
  formats (i.e. runlength encoding, visual image dorectories, digital
  signature on an image colormap, etc.).  ImageMagick is designed to
  exploit these advantages.  Whenever possible convert an alien image
  format to the MIFF format before using the various ImageMagick
  programs.

  Other formats may also be recognized.  See CONVERT(1) for a
  list of valid image formats.  You can specify a particular
  image format by prefixing the image filename with the image
  type and a colon (i.e.  ps:image).

  To further enhance the capabilities of ImageMagick, you may
  want to get these programs or libraries:

  o ImageMagick requires the X11 Stubs library available via anonymous
    FTP as

      ftp://ftp.wizards.dupont.com/pub/ImageMagick/plug-ins/X11_stubs.tar.gz

    if your system does not have the X11 libraries.  Display, animate,
    or import will not work with this library. The remaining programs have
    reduced functionality.

  o ImageMagick requires ralcgm from

      http://www.agocg.ac.uk:8080/agocg/New/Graphics/CGM/cgm.html

    to read the Computer Graphics Metafile image format (may not compile
    under linux).

  o ImageMagick requires GNU's Ghostscript software available
    via anonymous FTP as

      ftp://ftp.cs.wisc.edu/pub/ghost/aladdin/ghostscript-4.03.tar.gz

    to read the Postscript or the Portable Document format.  It is also
    required to annotate an image when an X server is not available.
    Note, Ghostscript must support the ppmraw device (type gs -h to verify).
    If Ghostscript is unavailable, the Display Postscript extension is
    used to rasterize a Postscript document (assuming you define HasDPS).
    The DPS extension is less robust than Ghostscript in that it will only
    rasterize one page of a multi-page document.

  o ImageMagick requires the NCSA HDF library available via anonymous FTP
    as

      ftp://ftp.ncsa.uiuc.edu/HDF/HDF4.0r2/tar/HDF4.0r2.tar.gz

    to read and write the HDF image format.

  o ImageMagick requires the JBIG-Kit software available via anonymous
    FTP as

      ftp://ftp.informatik.uni-erlangen.de/pub/doc/ISO/JBIG/jbigkit-0.9.tar.gz

    to read the JBIG image format.

  o ImageMagick requires the Independent JPEG Group's software
    available via anonymous FTP as

      ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6a.tar.gz
      ftp://ftp.cs.wisc.edu/pub/ghost/jpegsrc.v6a.tar.gz

    to read the JPEG image format.  ImageMagick creates progressive
    JPEG images by default.  Use the -interlace none option to create
    non-progressive images, or undef C_PROGRESSIVE_SUPPORTED in
    jmorecfg.h before you compile the library, or use JPEG version 5B.

    Concerning iterative JPEG compression:  see Kinoshita and
    Yamamuro, Journal of Imaging Science and Technology, "Image
    Quality with Reiterative JPEG Compression", Volume 39, Number 4,
    July 1995, 306-312 who claim that (1) the iterative factor of the
    repetitive JPEG operation had no influence on image quality, and
    (2) the first compression determined base image quality.

  o ImageMagick requires the MPEG library available via
    anonymous FTP as

      ftp://ftp.mni.mcgill.ca/pub/mpeg/mpeg_lib-1.2.tar.gz 

    to read the MPEG image format.  Use

      ftp://ftp.arc.umn.edu/pub/GVL/mpeg_encode1.2.2.tar.gz

    to write the MPEG image format.

  o ImageMagick requires picttoppm from

      ftp://ftp.cit.gu.edu.au/pub/users/A.Thyssen/netpbm-1mar94.p1.tgz

    to read Macintosh PICT images.

  o ImageMagick requires the PNG library from

      ftp://ftp.uu.net/graphics/png/src/libpng-0.96.tgz

    to read the PNG image format. See http://quest.jpl.nasa.gov/PNG/
    for more details.

  o ImageMagick requires ra_ppm from Greg Ward's Radiance
    software available via anonymous FTP as

      ftp://hobbes.lbl.gov/rad/Radiance3R07.tar.Z

    to read the Radiance image format (may not compile under linux).

  o ImageMagick requires rawtorle from the Utah Raster Toolkit
    available via anonymous FTP as

      ftp://ftp.cs.utah.edu/pub/urt-3.1b.tar.Z

    to write the RLE image format (may not compile under linux).

  o ImageMagick requires Sam Leffler's TIFF software available
    via anonymous FTP as

      ftp://ftp.sgi.com/graphics/tiff/tiff-v3.4beta036-tar.gz

    to read the TIFF image format.

  o ImageMagick requires the ZLIB library from

      ftp://ftp.uu.net/graphics/png/src/zlib-1.0.4.tar.gz

    to read the PNG image format or read and write Zip compressed
    MIFF images.

  o ImageMagick requires GET(1) available via anonymous FTP as

      http://www.sn.no/libwww-perl/libwww-perl-5.08.tar.gz

    to read images specified with a World Wide Web (WWW) uniform
    resource locator (URL).  GET(1) must be in /usr/local/bin.
    See WWWcommand in magick/image.h to change its location.  If
    you do not have a HTTP server, you can use xtp(1), available
    in the ImageMagick distribution, for URL's whose protocol is
    FTP.

  o ImageMagick requires a background texture for the TILE
    format and for the -texture option of montage(1).  You can
    use your own or get samples from

      http://the-tech.mit.edu/KPT/

  To display images in the HDF, JBIG, JPEG, MPEG, PNG, or TIFF,
  format, get the respective archive and build ImageMagick as follows:

  HDF:
    cd ImageMagick
    gunzip -c HDF4.0r2.tar.gz | tar xvf -
    mv HDF4.0r2 hdf
    cd hdf
    configure
    make -k allnofortran
    cd ..

  JBIG:
    cd ImageMagick
    gunzip -c jbigkit-0.9.tar.gz | tar xvof -
    mv jbigkit jbig
    cd jbig
    make
    cd ..

  JPEG:
    cd ImageMagick
    gunzip -c jpegsrc.v6a.tar.gz | tar xvof -
    mv jpeg-6a jpeg
    cd jpeg
    configure CC=cc -with-maxmem=7
    make
    cd ..

  MPEG:
    cd ImageMagick
    gunzip -c mpeg_lib-1.2.tar.gz | tar xvof -
    mv mpeg_lib mpeg
    cd mpeg
    ./configure
    make
    cd ..

  PNG:
    cd ImageMagick
    gunzip -c zlib-1.0.4.tar.gz | tar xvf -
    mv zlib-1.0.4 zlib
    cd zlib
    make
    cd ..
    gunzip -c libpng-0.96.tgz | tar xvf -
    mv libpng-0.96 png
    cd png
    make
    cd ..

  TIFF:
    cd ImageMagick
    gunzip -c tiff-v3.4beta036.tar.Z | tar xvof -
    mv tiff-v3.4beta036 tiff
    cd tiff
    configure
    make
    cd ..

    If your computer system supports shared libraries you must
    type

      make install

  Finally, perform the following:

    cd ImageMagick
    < edit Magick.tmpl and define Has???? as instructed >
    xmkmf
    make Makefiles
    make clean
    make

  If you do not have xmkmf, try

    configure
    make clean
    make -k

  If the compile fails due to a function redefinition it may be that
  either jpeg/jconfig.h or mpeg/mpeg.h is redefining *const*.  Fix this
  problem and try again.

  You can now display images in the HDF, JPEG, MPEG, or TIFF format.

  If you have HDF, JPEG, MPEG, PNG, and TIFF sources installed as
  directed above, you can also type

    Install sun

  Substitute the appropriate machine type (aix, hpux, sgi, etc).


VMS COMPILATION

  You might want to check the values of certain program definitions
  before compiling.  Change the definitions of ApplicationDefaults,
  DocumentationBrowser, EditorCommand, PostscriptColorDevice,
  PrintCommand, and RGBColorDatabase in magick/magick.h to suit your
  local requirements.  Next, type.

  Type

    @make
    set display/create/node=node_name::

  where node_name is the DECNET X server to contact.

  Finally type:

    display [.images]aquarium.miff
    display -monochrome -dither [.images]aquarium.miff

  Alternatively, get a zipped distribution (with JPEG, MPEG, TIFF,
  and XPM) from

    ftp://ftp.wizards.dupont.com/pub/ImageMagick/vms/ImageMagick-3.8.6.zip

  The VMS JPEG, TIFF, and XPM source libraries are available on
  axp.psl.ku.dk in [anonymous.decwindows.lib].

  Thanks to pmoreau@cenaath.cena.dgac.fr for supplying
  invaluable help as well as the VMS versions of the JPEG, MPEG, PNG,
  TIFF, and XPM libraries.


NT COMPILATION

  The NT distribution contains MetroWerks Codewarrior projects for
  compilation.  For those who do not have access to CodeWarrior, the
  binaries for the command line utilities are enclosed.

  Set the path to the Ghostscript executable in Autoexec.bat if you
  want to recognize the Postscript format.  If you have an NT X server
  like Exceed (from Hummingbird) you will also need to include

    SET DISPLAY=:0.

  in Autoexec.bat.

  And yes, the NT executables will work under Windows 95.

  Import(1) does not seem to work with Exceed.  Use Grab from File->Open
  of display(1) or try

    convert x:root image.gif


MACINTOSH COMPILATION

  The Macintosh distribution contains MetroWerks Codewarrior projects
  for compilation.  For those who do not have access to CodeWarrior,
  the binaries for the command line utilities are enclosed.  Display(1)
  and animate(1) currently do not work.

  I am looking for a volunteer to get display(1) and animate(1) to
  work on the Macintosh.  I also need a volunteer is needed to write a
  simple Mac program to call the libMagick routines and display an
  image in a window.


ANIMATION

  An example animation sequence is available from anonymous FTP
  at

    ftp://ftp.wizards.dupont.com/
      pub/ImageMagick/ImageMagick.animation.tar.gz.

  Or alternatively, you can create this sequence yourself.  Just
  look at README in the scenes directory.

  To prevent color flashing on visuals that have colormaps,
  animate(1) creates a single colormap from the image sequence.
  This can be rather time consuming.  You can speed this
  operation up by reducing the colors in the image before you
  `animate' them.  Use mogrify(1) to color reduce the images:

    mogrify +map -colors 256 scenes/dna.[0-9]*

  Note, the image sequence in ImageMagick.animation.tar.gz is
  already reduced.  Alternatively, you can use a Standard
  Colormap; or a static, direct, or true color visual.  You can
  define a Standard Colormap with xstdcmap(1).  For example, to
  use the "best" Standard Colormap, type:

    xstdcmap -best
    animate -map best scenes/dna.[0-9]*

  or to use a true color visual:

    animate -visual truecolor scenes/dna.[0-9]*

  Image filenames can appear in any order on the command line if
  the scene keyword is specified in the MIFF image.  Otherwise
  the images display in the order they appear on the command
  line.  A scene is specified when converting from another image
  format to MIFF by using the "scene" option with any filter.
  Be sure to choose a scene number other than zero.  For
  example, to convert a TIFF image to a MIFF image as scene #2,
  type:

    convert -scene 2 image.tiff image.miff


16-BIT IMAGING

  By default, ImageMagick uses a color depth of 8 bits (e.g.
  [0..255] for each of red, green, blue, and transparency components).
  Any 16-bit image is scaled to 8-bits before any image viewing or
  processing occurs.  If you want to work directly with 16-bit images
  (e.g. [0..65535]), edit Magick.tmpl or Makefile.in and define
  QuantumLeap as instructed in the respective file.  Next type

    make clean
    make

  In 16-bit mode expect to use about 33% more memory on the average.
  Also expect some processing to be slower than in 8-bit mode (e.g.
  Oil Painting, Segment, etc).

  In general, 16-bit mode is only useful if you have 16-bit images that
  you want to manipulate and save the transformed image back to a
  16-bit image format (e.g. PNG, VIFF).


64-BIT MACHINES

  Each pixel, within ImageMagick, is represented by the RunlengthPacket
  structure found in magick/image.h.  Only 8 bits are required for each
  color component and 16 bits for the colormap index for a total of 6
  bytes.  If QuantumLeap is defined (see 16-BIT IMAGING above), the
  color component size increases to 16 bits for a total of 10 bytes.
  Some 64-bit machines pad the structure which can cause a significant
  waste of memory.  For the cray, change the RunlengthPacket structure
  to this

    typedef struct _RunlengthPacket
    {
      unsigned char
        red : QuantumDepth,
        green : QuantumDepth,
        blue : QuantumDepth,
        length : QuantumDepth;

      unsigned short
        index : 16;
    } RunlengthPacket;

  before compiling.

  I'm not sure if this will work on other 64-bit machines that pad.  If you
  know a better solution, please send me E-mail.  Note, that the Dec Alpha
  apparently does not pad the structure so ImageMagick should be fine on
  this particular 64-bit machine.


MIFF IMAGE FORMAT

  MIFF is an image format which I developed.  I like it because

    1) It is machine independent.  It can be read on virtually
       any computer.  No byte swapping is necessary.

    2) It has a text header.  Most image formats are coded in
       binary and you cannot easily tell attributes about the
       image.  Use more(1) on MIFF image files and the
       attributes are displayed in text form.

    3) It can handle runlength-encoded images.  Although most
       scanned images do not benefit from runlength-encoding,
       most computer-generated images do.  Images of mostly
       uniform colors have a high compression ratio and
       therefore take up less memory and disk space.

    4) It allows a scene number to be specified.  This allows
       you to specify an animation sequence out-of-order on the
       command line.  The correct order is determined by the
       scene number of each image.

    5) MIFF computes a digital signature for images.
       This is useful for comparing images.  If two image files
       have the same signature, they are the identical images.

    6) There is a `montage' keyword allowing an image to act as
       a visual image directory.  See display(1) for more details.

  One way to get an image into MIFF format is to use
  convert(1).  or read it from an X window using the 'import'
  program.  Alternatively, type the necessary header information
  in a file with a text editor.  Next, dump the binary bytes
  into another file.  Finally, type

    cat header binary_image | display -write image.miff -

  For example, suppose you have a raw red, green, blue image
  file on disk that is 640 by 480.  The header file would look
  like this:

    id=ImageMagick columns=640 rows=480 :

  The image file would have red, green, blue tuples
  (rgbrgbrgb...).

  Refer to the display(1) manual page for more details.

COPYRIGHT

  Copyright 1997 E. I. du Pont de Nemours and Company

  Permission to use, copy, modify, distribute, and sell this
  software and its documentation for any purpose is hereby
  granted without fee, provided that the above copyright notice
  appear in all copies and that both that copyright notice and
  this permission notice appear in supporting documentation, and
  that the name of E. I. du Pont de Nemours and Company not be
  used in advertising or publicity pertaining to distribution of
  the software without specific, written prior permission.  E.
  I. du Pont de Nemours and Company makes no representations
  about the suitability of this software for any purpose.  It is
  provided "as is" without express or implied warranty.

  E. I. du Pont de Nemours and Company disclaims all warranties
  with regard to this software, including all implied warranties
  of merchantability and fitness, in no event shall E. I. du
  Pont de Nemours and Company be liable for any special,
  indirect or consequential damages or any damages whatsoever
  resulting from loss of use, data or profits, whether in an
  action of contract, negligence or other tortious action,
  arising out of or in connection with the use or performance of
  this software.

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.