.TH CIF2PS LOCAL "23 June 1989" .UC 4 .SH NAME Cif2ps \- CIF to postscript translator .SH SYNOPSIS .na .B cif2ps .RB [ \-r ] .RB [ \-c .IR cell ] .RB [ \-d .IR depth ] .RB [ \-f .IR font-size ] .RB [ \-w .IR width ] .RB [ \-h .IR height ] .RB [ \-s .IR LAYER=style-string ] .RI [ in-file.cif \ [ out-file.ps ]] .ad .br .SH DESCRIPTION .I Cif2ps converts a CIF file produced by Magic or another VLSI layout editor into PostScript. The output file produced is complete and suitable for printing on a letter-size PostScript printer. The first file name (i.e. .IR in-file.cif ) is the input file The second file name (i.e. .IR out-file.ps ) is the output file. If no file names are given the program reads from standard input and writes to standard output. If just one file name is specified, it is used as input. .PP .I Cif2ps options are : .TP .B \-r rotate the plot by 90 degrees (cumulative if repeated). .TP .BI \-c \ cell .I cell (name or CIF number) should be plotted. By default the top-level cell (number zero) is plotted. CIF files generated by Magic have a "dummy" top-level cell used only for specifying scale factors and the "real" top-level cell (as seen in Magic) is number one. .TP .BI \-d \ depth Cells instantiated .I depth levels or more below the top level should not be plotted. The default is zero, meaning plot at all depths. A depth of one restricts plotting to the top level. .TP .BI \-f \ font-size Use a font (Helvetica) scaled to a height of .I font-size points. The default is 6 points. .TP .BI \-w \ width the plot should be made .I width pages wide. By default the width is one page. .TP .BI \-h \ height the plot should be made .I height pages wide. By default the height is one page. .PP .I Cif2ps will rescale a user-specific dimension if neccesary to avoid producing blank pages. The largest dimesion allowed is 5 pages by 5 pages (25 pages of output). .TP .BI \-s \ LAYER=style-string set the drawing style for the layer named .I LAYER to the string .I style-string. Any number of .BI \-s \ LAYER=style-string pairs of arguments may be given, each defining one CIF layer. If .I style-string is omitted then .I LAYER is not plotted. Built-in default styles are provided for some technologies (MOSIS SCMOS and Bulk CMOS, Oct symbolic). See .B Style Customiztion below for information on style strings. .SH "Style Customization" .PP Style strings (used with the .B \-s option) are simply strings of PostScript commands (with one exception). The commands are used to fill each figure generated by .I cif2ps. The exception is that styles using the printer's built-in gray fill function need special handling because this fill function uses an opaque fill method (obliterating any drawings previously inside the filled area). Style strings which use the printer's built-in gray fill do so by prepending a special code "G" and a number to the otherwise ordinary PostScript string. The number following the "G" is the gray-level to be used, with zero (0) being black and one (1.0) being white. Note that for this special code to be recognized the "G" must be the first letter in the style string. .PP .I Cif2ps will write all gray fill boxes in order of decreasing gray-level before writing any of the regular PostScript fill styles. This produces a plot with most layers being rendered with transparent overlap regions. .PP The PostScript functions provided in addition to gray fill are: .TP "\fIs a\fR L" Fill the region with lines spaced by \fIs\fR pixcels and rotated (counter-clockwise) by angle \fIa\fR degrees from horizontal. .TP "X" Draw an "X" across the figure. .TP "stroke" A PostScript primitive which draws a line along the current path and then clears the path. Since the current path is cleared by "stroke" it must be used \fIafter\fR any of the above commands. .PP Some examples: .TP "" (null string) Don't draw anyting for this layer. .TP "G0" Fill with black. .TP "G.5" Fill with 50% gray. .TP "8 45 L" Fill with lines spaced by 8 pixcels and rotated 45 degrees. (The lines will have a slope of one.) .TP "G.75 32 135 L" Fill with light gray (75%) and then fill with lines spaced by 32 pixcels and rotated by 135 degrees (slope = -1). .TP "G.5 X stroke" Fill with dark gray (50%), draw an "X" from the corners, and draw an outline of the figure. This produces a box with an diagonals similar to contacts in Magic. .SH "SEE ALSO" Magic .SH AUTHORS Arthur Simoneau (of The Aerospace Corporation, El Segundo, Calif) wrote the original version, "cifp." .br Marc Lesure (of Arizona State University, Tempe, AZ) modified 'cifp' to produce 'cif2ps', adding scale factors and multi-page output. .br Gordon Ross (of The MITRE Corporation, Bedford, MA) added: run-time style customization options, transluscent fill operators using PostScript, support for CIF polygons, circles, and wires, and reduced output file size. .SH BUGS .PP Text is plotted only in the top-most cell chosen for plotting. .PP The output can (still) become very large. Full depth plotting can easily produce output ten times the size of the CIF file. A work-around is to limit the plot depth with the .BI \-d \ depth option. .PP Multi-page plots cause repetition of the entire PostScript output for each page. This could be reduced if cif2ps did some clipping.