[comp.sys.ibm.pc] Graphics Conversion Programs

lowey@dvinci.USask.CA (Kevin Lowey) (03/30/89)

Hi,

  I work in the User Support Centre at the University of Saskatchewan.
One of our functions is support of Microcomputers on campus.

  Many people use microcomputers for wordprocessing.  This caused problems
because we had a proliferation of different word processors all using
incompatible file formats.  Luckily there are a number of programs out there
like "Word for Word" that easily let us convert from one wordprocessing 
format to another while leaving most of the formatting information intact.

  Recently the use of microcomputers for Graphics has increased on campus.
People are using PCs and Macs to develop their own graphics.  This is causing
similar file compatibility problems that we had with Word Processing.

  A lot of programs can READ other graphic formats.  For example, Word Perfect
can read many graph formats and convert them to .WPG files for use in WP 5.0.
Unfortunately, most programs only WRITE to one or two formats.  I need a
"Word for Word" like program that converts between the popular graphics
formats like .PCX, ANSI Metafiles, Encapsulated Postscript, HP7475 plot files,
IFF, TIFF, Lotus .PIC, etc.

  I realize that this isn't easy.  Some of these programs store bitmaps, others
store the picture as objects.  However, any pointers someone can give me to
commercial or PD programs would be welcome.

  Also, any pointers to the structure of the various graphics file formats
would be appreciated.  Then I could (gasp) write my own conversion program.

  Please send any replies to:

  LOWEY@SASK.USASK.CA         on internet (prefered)
  {ihnp4,alberta}!sask!lowey  on uucp
  LOWEY@SASK                  on BITNET
  

sekoppenhoef@rose.waterloo.edu (04/01/89)

In article <1929@dvinci.USask.CA> lowey@dvinci.USask.CA (Kevin Lowey) writes:
 :
 :formats like .PCX, ANSI Metafiles, Encapsulated Postscript, HP7475 plot files,
 :IFF, TIFF, Lotus .PIC, etc.
 :  Also, any pointers to the structure of the various graphics file formats
 :would be appreciated.  Then I could (gasp) write my own conversion program.

If anyone has info on ANY of these could you post them? PLEASE!! :-)
I've been trying to collect the graphic format info on these for a while now
but no-one seems to know anything but GIF and/or TIFF!

______________________________________________________________________________
Shawn Koppenhoefer  CS C&O, University of Waterloo, Canada N2L 3G1       _ _  
                    sekoppenhoef@waterloo  { .CSNET or .CDN or .EDU }     < 
Klein bottle for sale...  enquire within                                  -

vail@tegra.UUCP (Johnathan Vail) (04/03/89)

With all the people looking for information for different image file
formats I am excerpting from the Features file for the fbm utilities.
I have used them some and have been impressed.  Shar and Enjoy.


  ************************************************************************
  *   Announcing the "Fuzzy PixMap" (or FBM) image manipulation library  *
  ************************************************************************

			  Current version 0.9

  The FBM library is now available in Beta test form to interested
  parties.  This package allows manipulation and conversion of a variety
  of color and black-and-white image formats.

  Philosophy

      Each program can read any of the understood formats, and
      can write any of the understood formats that make sense for
      the image data.

      Programs are designed around specific image operations (sizing,
      scaling, retoning, halftoning, quantizing, etc.), rather than
      simply converting from one format to another.  For example,
      converting a 4bit color GIF file to a 1bit Sun rasterfile
      takes the following operations:

	  read GIF format
	  map color values to grayscale
	  adjust aspect ratio (1.2 --> 1.0)
	  scale image up to be visible (320x200 --> 640x480 or 1152x864)
	  optionally sharpen the image (edge enhancement)
	  optionally clean up "snow" in image (flip isolated pixels)
	  halftone (Blue noise, Floyd-Steinberg, Jarvis, Threshhold)
	  write Sun rasterfile format.

      So there equivalent pipeline of fbm routines would be:

      clr2gray < foo.gif | fbnorm | fbext [ args ] | fbhalf [args] > foo.1bit

      That way you have maximum control over the resulting image size
      and quality.

  Inputs the following file formats

    o Sun rasterfiles	(1, 8, or 24 bits, color or grayscale)
    o GIF files		(1 to 8 bits, color or grayscale)
    o Amiga IFF files	(except HAM mode)
    o PCX files
    o PBM bitmaps
    o Face files		(CMU format for 1bit files by Bennet Yee)
    o FBM files		(my own format)

      (automatically determines input format, and uncompresses
       files compressed using 'compress')

  Outputs the following formats

    o Sun rasterfiles
    o FBM files
    o GIF files		(mapped color only)
    o Amiga IFF files	(except HAM mode)
    o PBM			(1bit files only)
    o Face format		(1bit files only)

  With input converter for

    o raw images (like Amiga Digi-View files)

  With output converters for

    o PostScript         (1bit or 8bit grayscale files only)
    o Diablo graphics    (1bit files only)

  Operations

    o Extract rectangle (optionally resizing and changing aspect ratio)
    o Change density and contrast (color and grayscale)
    o Rotate  90, 180, or 270 degrees
    o Quantize 24 bit RGB images to 8..256 colors
	  Modified Heckbert median cut
    o Halftone grayscale using
	  Ulichney's Blue Noise dithering
	  Floyd-Steinberg dithering
	  Jarvis's Constrained averaging
	  Threshholding
    o Edge Sharpening by Digitial Laplacian (color or grayscale)
    o Convert color to grayscale (or compute "gray" colormap
	  so grayscale images can be viewed on frame buffers)
    o Compute histograms of grayscale images
    o Sample 1bit images to convert to grayscale

  Status

      Beta test release, 0.9.  "Use at your own risk, bug fixes not
      guaranteed, be happy with minimal documentation."  Bugs reported
      so far have been fixed.

      Freely available for use, redistribution, incorporation into
      other code.  Just don't make a profit off it or take my name
      off of it.

      Written in C for BSD and Mach Unix Systems.
      Tested on Vaxes, Sun Workstations, IBM RTs and Pyramids.

      Self contained.  Does not require Sun include files or library
      routines to manipulate Sun rasters.

  Availability

      Anonymous FTP

      Host:	nl.cs.cmu.edu (128.2.222.56)
      User:	anonymous
      Password:	name@site
      Directory:	/usr/mlm/ftp/
      Filename:	fbm.tar.Z
      Transfer:	'image'

      Note: you must 'cd' to /usr/mlm/ftp directly, you cannot access
      either /usr, or /usr/mlm alone.  Don't forget to specify 'image'
      format transfer.

      Will be posted to UseNet when the code is stable and
      the documentation is complete and accurate.

  Acknowledgements

      GIF read support written by David Koblas.
      GIF write support written by David Rowley.
      Some IFF code by Jerry Morrison and Steve Shaw of Electronic Arts.
      Edge detection and pixel cleaning by Gary Sherwin and Michael Mauldin

  Rumours

      Future support is rumoured for TIFF files and MacPaint files.  Also it
      may someday be able to write all of the formats that it can read.

      All that is needed to incorporate a new format is to write a routine
      that reads the given image into memory and one that writes it out
      again.  I will incorporate other code on a "whenever I'm not working
      on my thesis" basis.

  Michael L. Mauldin (Fuzzy)		School of Computer Science
  ARPA: Michael.Mauldin@NL.CS.CMU.EDU	Carnegie Mellon University
  Phone: (412) 268-3065			Pittsburgh, PA  15213-3890


.         /|/|
  _______/ | |
    ( )  \ | |
          \|\|
 _____
|     | Johnathan Vail  | tegra!N1DXG@ulowell.edu
|Tegra| (508) 663-7435  | N1DXG @ 145.110-, 444.2+, 448.625-
 -----