Face2ps is a general-purpose FaceSaver-to-PostScript translator. The only FaceSaver images that are generally available have been created at the two most recent Usenix's. They have been in {106,98}w x 128h x 8d. I have created a number of faces that are not in either of those resolutions, hence my need for face2ps. No copyright claimed. To get information on getting faces from UUNET via e-mail, send a mail message to faceserver@uunet.uu.net (or uunet!faceserver) with the subject line of "help". To get the faces via anonymous FTP, ftp to uunet.uu.net and cd to the "faces" directory. Rather than impose its own idea of how a face should be printed, face2ps simply converts the face file into a form compatible with PostScript. Before doing so, it outputs an appropriate PostScript prolog. Various prologs exist: face2ps - Prints a 8.5"x6.5" and a 1"x1" face on the same page. lineup - Prints up to 25 faces on a single page. card - Prints a business card. dartboard - Prints a full-page dartboard. labels * Prints a page of sticky labels. interp * Prints a full-page face, interpolating between pixels. * not working yet, but included anyway. Face2ps.c requires an ANSI compiler, because I made liberal use of ANSI constructs like string pasting. Using "gcc -o face2ps face2ps.c" under Unix or "tcc face2ps" under MS-LOSS is sufficient, so no makefile is included. Before compiling, you must change the define at the beginning of face2ps that gives the absolute pathname to the prologs. There are only two switches: -p prolog Sets the prolog to be used, i.e. "-p card". If this switch is not used, then the name of the prolog is taken from the name of the program. Hence, the default prolog is face2ps. Under Unix, you can link the file to the names of the different prologs. Under MS-LOSS, you must make several copies of the executable with different names. -D define=value Use of this switch will generate /define value def in the PostScript output. None of the current prologs use it, but it's there anyway. Face2ps outputs things in the following order: the prolog anything defined with -D A definition of "count" to be the number of faces to follow. start data for the first face face data for the second face, if any face ... finish where start, face, and finish are defined by the prolog. Reading face2ps.ps and examining the output of face2ps will show you how things arranged much faster than reading any documentation. But in a nutshell, each header entry in the face file is sent to the output as a /header (contents) def. The face data is sent as /imagedata <> def. This means that huge amounts of memory are used, but is so convenient that I chose to leave it as is. This software should really be considered alpha test, because I'm sure that several people are going to object to the ANSIness of the C program. Also, I hope that someone out there feels like getting the three non-functional prologs working, or perhaps writes their own prolog, or improves one of the existing ones. So, keep me informed: --russ (nelson@clutx [.bitnet | .clarkson.edu])|(70441.205@compuserve.com)