|
|
1.1 ! root 1: .if n .pH g1.picasso @(#)picasso 1.0 of 1/2/90 ! 2: .TH PICASSO 1 ! 3: .SH NAME ! 4: picasso \- a line drawing program ! 5: .SH SYNOPSIS ! 6: \f3picasso [ \-b\f2size\fP \-F\f2path\fP \-I\f2path\fP \-l\f2n\fP \-M\f2n\fP \-m\f2margin\fP \-p\f2m\fPx\f2n\fP \-t \-x ] [ \- ] [ \f2file_name\^(s)\fP ] ! 7: .ft 1 ! 8: .SH DESCRIPTION ! 9: .B Picasso ! 10: is a ! 11: processor for a PIC-like drawing language that produces PostScript output. ! 12: By default, this output is scaled to fit an 8 by 10 inch print area, and ! 13: centered on the page. ! 14: .PP ! 15: .B \-b ! 16: .IR size ! 17: specifies a buffer of \f2size\f1 objects accumulated before translation ! 18: into PostScript. ! 19: By default, an entire picture is buffered; ! 20: on machines with small memories, a buffer of a few thousand objects ! 21: can prevent thrashing when processing a very large picture. ! 22: This option is for exceptional cases and is not often needed. ! 23: .PP ! 24: .B \-I ! 25: .IR path ! 26: overrides the standard path for searching for the PostScript prologue ! 27: and font descriptions (not needed in normal use). ! 28: .PP ! 29: .B \-F ! 30: .IR path ! 31: overrides the standard path for font width tables. ! 32: The default is to use the \f(CWtroff\fP tables. ! 33: .PP ! 34: .B \-l ! 35: .IR n ! 36: processes layer \f2n\f1 only, as specified by \f(CWcurlayer=\f2n\fP. ! 37: .PP ! 38: .B \-M ! 39: .IR n ! 40: magnifies the output image by \f2n\f1 (shrinks if 0 < \f2n\fP < 1). ! 41: .PP ! 42: .B \-p ! 43: .IR m\f3x\fPn ! 44: .ft 1 ! 45: specifies output device size in inches (8.5x11 default). ! 46: .PP ! 47: .B \-t ! 48: packages the PostScript with surrounding troff input so that the ! 49: output file may be passed down a pipeline to ! 50: .BR troff (1). ! 51: The Drechsler/Wilks ! 52: .B mpictures ! 53: macro package can be used with ! 54: .B troff ! 55: to insert the pictures appropriately within the document. ! 56: Without the flag ! 57: .B picasso ! 58: outputs \fIonly\fR PostScript, dropping any text outside the markers ! 59: (.PS and .PE) delimiting each picture. ! 60: .PP ! 61: .B \-m ! 62: .IR margin ! 63: specifies an empty border, in printer's points, that ! 64: .B picasso ! 65: will place around each picture. ! 66: This may be useful at times to prevent too tight clipping against ! 67: adjacent text or the edge of the paper. ! 68: By default no margin is supplied; ! 69: to cause a 1/8" (9 point) margin, for example, specify ! 70: .BR \-m9 . ! 71: .PP ! 72: .B \-x ! 73: suppresses the default scaling and centering. ! 74: .PP ! 75: The ! 76: .B picasso ! 77: picture description language is object oriented, the basic objects being ! 78: .BR arrow , ! 79: .BR arc , ! 80: .BR box , ! 81: .BR circle , ! 82: .BR ellipse , ! 83: .BR line , ! 84: .BR sector , ! 85: .BR spline , ! 86: and (quoted) text. ! 87: These can be combined, hierarchically, into ! 88: .BR blocks . ! 89: Primitive objects can be drawn with ! 90: .BR solid , ! 91: .BR dashed , ! 92: .BR dotted , ! 93: or ! 94: .B invisible ! 95: edges. ! 96: These edges may be of varying ! 97: .B weight ! 98: (thickness) ! 99: and of any shade of gray (from black = 0 to white = 1) or color. ! 100: The predefined colors are ! 101: .BR black , ! 102: .BR white , ! 103: .BR red , ! 104: .BR green , ! 105: .BR blue , ! 106: .BR cyan , ! 107: .BR magenta , ! 108: and ! 109: .BR yellow . ! 110: .PP ! 111: Objects may be named and referred to by name or by anonymous ! 112: references such as ! 113: 1st box, 4th object, or 2nd last circle. ! 114: Object names require an initial upper case letter; ! 115: names beginning with lower case or an underscore are numeric variables. ! 116: There are a number of predefined variables such as ! 117: .BR circlerad , ! 118: .BR boxwid , ! 119: .BR linecolor . ! 120: .B Picasso ! 121: provides a limited set of programming language constructs ! 122: (loops, if statements, macros, some arithmetic) ! 123: for combining simple objects into relatively complex pictures. ! 124: .PP ! 125: By default, objects are placed on the page adjacent to each other ! 126: and from left to right. ! 127: The default direction may be changed, and any object can be placed ! 128: .B at ! 129: a specific postion, ! 130: given either in absolute coordinates or by reference to other objects and ! 131: points of interest. ! 132: Any object has a ! 133: .BR top , ! 134: .BR bottom , ! 135: .BR left , ! 136: and ! 137: .B right ! 138: point; ! 139: these points may also be refered to directionally as ! 140: .BR north , ! 141: .BR south , ! 142: .BR west , ! 143: and ! 144: .B east ! 145: (or ! 146: .BR n , ! 147: .BR s , ! 148: .BR w , ! 149: and ! 150: .BR e .) ! 151: The ``corner'' points may also be specified, ! 152: .IR e.g. , ! 153: .B northwest ! 154: or ! 155: .BR nw. ! 156: Lines have ! 157: .B start ! 158: and ! 159: .B end ! 160: points; ! 161: you may also refer to ! 162: .BR 1st , ! 163: .BR 2nd ... ! 164: .B nth ! 165: points along a line. ! 166: Boxes, circles, and ellipses have eight predefined points corresponding ! 167: to the directional references mentioned above, the first point being in ! 168: the eastern direction and the 8th point towards the southeast. ! 169: For any object, the ``corner'' points really lie on the corners of a box ! 170: surrounding the object while the ``counted'' points lie on the object itself. ! 171: This distinction is normally relevant only for circles and ellipses, but ! 172: since an object can be rotated or otherwise transformed it occasionally ! 173: has significance for other objects as well. ! 174: .SH EXAMPLE ! 175: The following is a simple no-smoking sign described in the ! 176: .B picasso ! 177: language. ! 178: ! 179: .in +.5i ! 180: .ft CW ! 181: .nf ! 182: .PS ! 183: d = 0.5 ! 184: [ box ht d wid 3.5 weight d/20 ! 185: box ht d wid d/2 filled 0.5 noedge ! 186: spline weight 0.2 edge .75 right d then up d \\ ! 187: then right d then up d ! 188: ] ! 189: linecolor = red; lineweight = 0.375 ! 190: circle rad 3 at last block ! 191: line from last circle .4th to last circle .8th ! 192: .PE ! 193: .in -.5i ! 194: .fi ! 195: .ft R ! 196: ! 197: If this is used in a ! 198: .B troff ! 199: document and processed through ! 200: .B picasso ! 201: with the ! 202: .B -t ! 203: flag, the .PS marking the start of the picture can specify the size and ! 204: placement of the picture at that point in your document. ! 205: For example, to place the no smoking sign centered on the page in a 3 ! 206: inch square area, flag the start of the picture with\f(CW .PS 3 3 c\fR. ! 207: .SH "SEE ALSO" ! 208: .BR troff (1), ! 209: .BR troff (5) ! 210: .SH REFERENCE ! 211: R. L. Drechsler and A. R. Wilks, ! 212: .I PostScript pictures in troff documents. ! 213: .br ! 214: B. W. Kernighan, ! 215: .I PIC \(em A Crude Graphics Language for Typesetting ! 216: .br ! 217: N-P. Nelson, M. L. Siemon, ! 218: .I ! 219: Picasso 1.0, An OPEN LOOK Drawing Program ! 220: .ft P ! 221: .\" @(#)picasso.1 1.0 of 1/4/84 ! 222: .SH BUGS ! 223: .B Picasso ! 224: is not completely compatible with ! 225: .BR pic (1). ! 226: Besides having a number of new keywords and predefined variable names, ! 227: .B picasso ! 228: also centers pictures on a page rather than placing them at upper left. ! 229: .P ! 230: The interactive version is unable to generate many elements ! 231: of the language, nor will it preserve such elements (e.g., loops) ! 232: if they are read in then written out.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.