|
|
1.1 ! root 1: .bp ! 2: .sh 1 "Invoking the Programs" ! 3: .lp ! 4: All of the programs provided with this toolkit have associated manual ! 5: pages for easy reference. Since a set of programs is more than the ! 6: sum of its options, some suggested uses are given below. ! 7: .sh 2 "\*(IP File Editor: ipfe" ! 8: .lp ! 9: This program executes page level operations on an \*(IP files. For example, ! 10: it will read an \*(IP master and output a new master that has all ! 11: the pages offset for binding. It can extract and combine pages from ! 12: different \*(IP files. In addition, it can insert files that are requested ! 13: via the \*(IP ! 14: .i sequenceInsertFile ! 15: command. ! 16: .lp. ! 17: Ipfe is used on this document to move the table of contents to the front. ! 18: \*(TR, like make document compilers, only makes one pass of the source files. ! 19: This means that table of contents (TOC) entries are gathered as each section ! 20: is encountered and then output at the end. Typically, the TOC is moved ! 21: by hand from the back of the document to the front. This step can be ! 22: automated. In this document, the cover page and TOC both occur at the ! 23: end. On what is to be last page of the finished document the following ! 24: \*(TR commands appear: ! 25: .(l ! 26: .nr x \\n%+1 ! 27: .sy echo ipfe -o body.ip doc-.ip \\\\"[1-\\n%]\\\\" > Split-pages.sh ! 28: .sy echo ipfe -o cover.ip doc-.ip \\\\"[\\nx-]\\\\" >> Split-pages.sh ! 29: .)l ! 30: The first line takes the current page number and adds one to it and ! 31: stores the result in the variable ``x''. The next two lines call the ! 32: shell to create a file called \%``Split-page'' which has two lines. ! 33: The first line of that file says create a new \*(IP file which ! 34: is the body of the document and the second a file that has the remainder. ! 35: The makefile that creates this document, executes the shell script to ! 36: split up the file. It then pastes the two files together in opposite order ! 37: (and processes inserts) with: ! 38: .(l ! 39: \f(TR ipfe -o doc.ip -s cover.ip body.ip ! 40: .)l ! 41: .lp ! 42: Image frames in Viewpoint are one way to create the sequenceInsertFile command. ! 43: The technique used by Viewpoint is described in the Print Service ! 44: Integration Standard \(sc6.6: ! 45: .i "Interpress image, form and logo interface" "." ! 46: Note that two sequenceInsertFile commands are created for each image frame: ! 47: one for the file named by the user and other for library routine called ! 48: "LIB>ILF". Some printers support the library routine (Xerox 8700 & 9700) ! 49: and for others you will have to supply your own (Xerox 8044). ! 50: .sh 2 "ipmetrics" ! 51: .lp ! 52: The \*(IP standard specifies that fonts metrics (like widths of characters) ! 53: are distributed as \*(IP files which when executed leave ! 54: on the stack property lists which contain ! 55: metric information about the fonts. The program ``ipmetrics'' ! 56: will execute an \*(IP master and produce metrics for \*(TR, TeX or a ! 57: ``generic'' composition system. ! 58: .sh 2 "iptroff and dipress" ! 59: .lp ! 60: The shell script ``iptroff\|'' is simply a front-end for TI-\*(TR and dipress. ! 61: Only under special circumstances will one need to invoke dipress directly. ! 62: In general, one invokes iptroff just as regular \*(TR would be used. ! 63: For example: ! 64: .(l ! 65: \f(TRiptroff -me foo.me ! 66: .)l ! 67: .lp ! 68: Remember, that many pre-processors such as eqn and pic ! 69: need to know which output device you intend to use. When using iptroff, ! 70: specifiy the ``\-Tip'' switch. ! 71: .sh 3 "Fonts" ! 72: .lp ! 73: In order to be compatible with the C/A/T phototypsetter, there are the ! 74: standard four fonts: R, B, I and S. The fonts provided with ! 75: this distribution have all the characters that the C/A/T had as well as ! 76: many new special characters. These are documented in Appendix \f(RN3\fR. ! 77: Because \*(TR has a restriction of only 221 special character names, ! 78: it was not possible to give all the special characters unique names. ! 79: The overflow characters were placed in three (3) pseudo-fonts as follows:\(dg ! 80: .(f ! 81: .ti -\n(fiu ! 82: \(dgThey are pseudo-fonts in the sense that although \*(TR thinks ! 83: they are separate fonts, they are actually mapped to the same Interpress font. ! 84: .)f ! 85: .RS ! 86: .ip "RN" ! 87: This is the roman numeral font. It has the digits one through nine ! 88: mapped to the matching roman numeral. The digit zero is mapped to roman ! 89: numeral 10. ! 90: .ip "CN" ! 91: This is the circled (arabic) numeral font. The digits are mapped ! 92: in the same way. ! 93: .ip "XX" ! 94: The remaining miscellaneous characters which are mapped to normal ! 95: ASCII characters. ! 96: .RE ! 97: .sh 3 "Inserting \*(IP files into \*(TR Documents" ! 98: .lp ! 99: This section discusses how to merge existing \*(IP files into a \*(TR ! 100: document. Before proceeding in detail, it is important to note two things ! 101: about \*(IP files: they are laid out on a cartesian plane and they don't ! 102: have any information indicating the image size (bounding box). ! 103: .lp ! 104: The request to insert an \*(IP file is done using \*(TR transparent ! 105: throughput mode (see \(sc10.6. of the \*(TR manual). The format ! 106: of such a command is: ! 107: .br ! 108: \\!x Xerox IP File.Name ! 109: .br ! 110: The effect is to create a ! 111: .i SequenceInsertFile ! 112: request at the current position with the requested file name. Thus the file ! 113: is not actually inserted in the \*(IP master, only it's name. The actual ! 114: insertion of the file is done in a seperate step. The current position ! 115: is where the insert's origin will be placed. As mentioned before, \*(IP ! 116: files are laid out on a cartesian plane. Typically, the point (0, 0) is ! 117: in the lower left hand corner of the page and the X-axis increases along ! 118: the bottom to the right and the Y-axis increases along the left edge going ! 119: up. (first quadrant rules) ! 120: .lp ! 121: There is one problem with the above transparent command: it may not ! 122: do the right thing because \*(TR is buffered. Something like the following ! 123: sequence is recommended: ! 124: .(l I ! 125: .fl ! 126: \\!V\\n(nl ! 127: .nr x \\n(.o+\\n(.i ! 128: \\!H\\nx ! 129: \\!x Xerox IP File.Name ! 130: .)l ! 131: .lp ! 132: Inserts are easiest to handle if they sit in the first quadrant and abut ! 133: the origin. The program plot2ip has the ability to position ! 134: files this way. In Viewpoint, a graphics frame can be placed at the bottom ! 135: left corner by setting the following property sheets: ! 136: .(l I ! 137: \fIpage\fP properties: ! 138: \(em\(emPage Margins LEFT: 0 ! 139: \(em\(emPage Margins BOTTOM: 0 ! 140: ! 141: \fIgraphics frame\fP properties: ! 142: \(em\(emMargins Left: 0 ! 143: \(em\(emMargins Bottom: 0 ! 144: \(em\(emAlighnment (horizontally): FLUSH LEFT ! 145: \(em\(emAlighnment (vertically): FLUSH BOTTOM ! 146: \(em\(emSpan: Page ! 147: .)l ! 148: Now paginate the document and the graphics frame should appear correctly. ! 149: An alternative is to use ipfe to change the X and Y position of the page. ! 150: .lp ! 151: As mentioned above, iptroff will only produce an insertion request ! 152: for a file. Not all \(IP printers support this feature. In particular, ! 153: the Xerox 8044 does not. To cause the insertion to happen before ! 154: the \*(IP master is sent to the printer, the program ipfe can be used. ! 155: For example, ! 156: .(l I ! 157: \f(TRipfe -s -o output.ip master.ip ! 158: .)l ! 159: will cause the file master.ip to be copied to output.ip while fulfilling ! 160: insertion requests. If, in the \*(TR document, we asked for the insertion ! 161: of head.ip but we wanted that mapped to /usr/local/lib/ip/letterhead.ip ! 162: we would type: ! 163: .(l I ! 164: \f(TRipfe -s -a head.ip:/usr/local/lib/ip/letterhead.ip ! 165: -o output.ip master.ip ! 166: .)l ! 167: For more details, check ipfe the manual page. ! 168: .sh 3 "Inserting RES files into \*(TR documents" ! 169: .lp ! 170: This section discusses how to merge files in the Raster Encoding Standard ! 171: (RES) with \*(TR documents. RES files are encoding similarly to \*(IP ! 172: but they don't image. Instead they leave data on the stack that can ! 173: be used to image them. This property of RES files means that decisions ! 174: about how a raster image will look on a page can be deffered until ! 175: the \*(IP master is executed. ! 176: .lp ! 177: A sample of the RES insert command in \*(TR is: ! 178: .(l ! 179: \\!x Xerox RES bl 300spi File.Name ! 180: .)l ! 181: In this example, the ``bl'' means that the current position should ! 182: anchor the bottom-left of the image. The possible values for this ! 183: field are: ! 184: .sp ! 185: .TS ! 186: box center; ! 187: l l. ! 188: code position ! 189: _ ! 190: bl bottom left ! 191: tl top left ! 192: br bottom right ! 193: tr top right ! 194: c center ! 195: .TE ! 196: .sp ! 197: In this example, the 300 means that the raster should be imaged at 300 spots ! 198: (dots) per inch. A resolution of zero (0) indicates that the natural ! 199: resolution specified in the RES file should be used. ! 200: .lp ! 201: The following is a sample RES file that was originally drawn on an ! 202: Apple MacIntosh using MacPaint. ! 203: .br ! 204: .ne 3i ! 205: .sv 3i ! 206: .fl ! 207: \!V\n(nl ! 208: .nr x \n(.o+\n(.i ! 209: \!H\nx ! 210: \!x Xerox RES bl 144spi happy-family.res ! 211: .sh 3 "Hints and Warnings" ! 212: .lp ! 213: This section discusses unexpected behavior that users of iptroff might ! 214: encounter and how to deal with it. ! 215: .lp ! 216: On page three (3) of ! 217: .i "Typesetting Mathematics - User's Guide" ! 218: it is implied that typing a ``{'' to eqn will produce a roman ``{'' in the ! 219: output. Unfortuately, eqn doesn't produce any code to guarantee this behavior. ! 220: Instead it relies on the fact that the C/A/T would always print ``{'' as ! 221: a roman character. Since the \*(IP fonts include bold and italic curly ! 222: brackets, eqn output will produce italic curly brackets by default. ! 223: .lp ! 224: The \-me macros have a bug where some footnotes are broken across pages when ! 225: they shouldn't be. This may be because our higher device resolution ! 226: alters the fudge factor that is used ! 227: to compute the amount of space to reserve for a footnote. ! 228: .lp ! 229: The 4.2 BSD macros have been modified to produce cut-marks for roll paper ! 230: devices such as Versatec plotters. These cut marks will cause appearance ! 231: errors to appear on the banner page produced by the 8044 printer. ! 232: In \-me they can be removed by placing the following ! 233: two lines at the front of your file: ! 234: .(l ! 235: \f(TR .rm @m ! 236: .)l ! 237: In \-ms they can be removed by using the following lines: ! 238: .(l ! 239: \f(TR .rm CM ! 240: .)l ! 241: .lp ! 242: The default physical offset for \*(TR is often too small. When ! 243: using paper that is 8\(12 inches wide most users ! 244: will preface their files with a ! 245: .(l ! 246: \f(TR .po 1i ! 247: .)l ! 248: .lp ! 249: to produce the correct page centering.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.