avs2ps is distributed as part of the Raster3D molecular graphics package.
avs2ps converts an AVS image input on stdin to monochrome PostScript on stdout.
avs2ps [-b] [-dpi xxx] < infile.avs > outfile.ps
avs2ps converts a 24-bit color image file in AVS format into a dithered monochrome PostScript image with the same number of pixels as the input file. avs2ps may be used as a filter for the output of the render program to produce a PostScript file directly. The code is machine independent, and does not impose restrictions on the tile size in the original image. It supersedes less general programs in the viewtools package.

avs2ps converts the input stream to a greyscale image and then applies an empirical algorithm for contrast enhancement, dithering, and error diffusion to produce a monochrome output image. The basic approach is a variant of Floyd-Steinberg error diffusion.


Produce an unbordered black & white image suitable for printing on a 300 dpi PostScript printer:
 render < description.r3d | avs2ps > image.ps
Add a border, and prepare image for a 400 dpi printer:
 render < description.r3d | avs2ps -b -dpi 400 > image.ps


Draw a border around the figure. By default avs2ps will produce a borderless image 0.5 inch in from the bottom left of the page.
-dpi xxx
By default avs2ps writes header records into the PostScript output file which are correct for a 300 dpi printer (e.g. an HP Laserjet IIIsi). If there is a mis-match between the header records and the actual resolution of the printer the image quality is substantially degraded. This option allows one to specify a different printer resolution (e.g. -dpi 400 for a Next printer, or -dpi 95 for Display PostScript on a 19'' 1280x1024 workstation screen).


Ethan A Merritt. Dithering algorithm derived from code by Randy Read and Albert Berghuis.
Back to top Raster3D homepage