1 08/06/84    Artwork constructs in compose.
  2 
  3 This file provides explanations and short examples of the artwork
  4 constructs available within compose.  Artwork of a more general nature
  5 than discussed here must be constructed with the Multics Graphics
  6 System (MGS).
  7 
  8 In the following sections, dollar signs ($) represent the ASCII
  9 backspace character (octal value 010) to indicate that the characters
 10 adjoining are overstruck, that is, are in the same column (e.g.,
 11 "X$X").
 12 
 13 
 14 A user can insert certain conventional overstruck character patterns
 15 into an input file and have them displayed as fabricated symbols and
 16 line art diagrams.  The detection and expansion of the artwork
 17 constructs is controlled with the block-begin-art and block-end-art
 18 formatting controls (see Wordpro Reference Manual, AZ98).  All examples
 19 are shown as they appear on an ASCII, type 11, terminal (overstriking
 20 of characters is inappropriate for video terminals).
 21 
 22 Use of the word "rule" below means a typographic rule, that is, a line
 23 of given length, thickness, and orientation.
 24 
 25 
 26 Artwork conventions:
 27 Members of the line art set are syntactically significant if overstruck
 28 with another character from the set, whereas members of the math symbol
 29 set are syntactically significant if they are overstruck with a valid
 30 size character (described below).  The characters in a construct may be
 31 given in any order.
 32 
 33  Line   Math
 34   Art  Symbol   Meaning
 35 
 36    -            element of a horizontal rule
 37    |     |      element of a vertical rule or a vertical bar, depending
 38                   on overstrike pattern
 39    /     /      element of a +45 degree slant rule or a division sign,
 40                   depending on overstrike pattern
 41 
 42 
 43    \            element of a -45 degree slant rule
 44    (     (      left semicircle or left parenthesis, depending on
 45                   overstrike pattern
 46    )     )      right semicircle or right parenthesis, depending on
 47                   overstrike pattern
 48    ^     ^      up arrow, diamond top vertex, or upward movement,
 49                   depending on overstrike pattern
 50    v     v      down arrow, diamond bottom vertex, or downward move-
 51                   ment, depending on overstrike pattern
 52    <     <      left arrow, diamond left vertex, or leftward movement,
 53                   depending on overstrike pattern
 54    >     >      right arrow, diamond right vertex, or rightward move-
 55                   ment, depending on overstrike pattern
 56          [      left bracket
 57          ]      right bracket
 58 
 59 
 60          {      left brace
 61          }      right brace
 62          X      multiplication sign (1-high math symbol only)
 63    ~            vertical or slant rule terminator
 64    *     *      horizontal rule terminator or text deletion symbol,
 65                   depending on overstrike pattern
 66   " '           replicator character showing overstrike but having no
 67                   pictorial meaning
 68   H h           half-line control, up or down, depending on overstrike
 69                   pattern
 70   S s           superscript/subscript control, depending on overstrike
 71                   pattern
 72          =      double vertical bar concatenate symbol
 73          c      text modification change bar (1-high math symbol only)
 74          o      bullet (1-high math symbol only)
 75 
 76 
 77 If any of the characters in the math symbol set is overstruck with a
 78 numeric or alphabetic character it is considered a math symbol and the
 79 overstrike character is interpreted as the symbol size.
 80 
 81  1-0    1 through 10
 82  a-z   11 through 36
 83  A-Z   31 through 56
 84 
 85 
 86 Boxes:
 87 Rectangular boxes are constructed by defining their four corners with
 88 the following four symbols.
 89 
 90      -$|    upper left corner
 91      *$|    upper right corner
 92      -$~    lower left corner
 93      *$~    lower right corner
 94 
 95 The box corners are placed at the BOTTOM and LEFT EDGE of the symbols.
 96 The minimum box is one column wide and one line high.
 97 
 98 Source    -^H|*^H|
 99           -^H~*^H~  Minimum box
100 
101 
102 ^?^?^?^?Result    __
103           _^H|_^H|  Minimum box
104 
105 The maximum box is limited only by the current line length and page
106 length for the document.  For example,
107 
108 Source    -^H|                                *^H|
109 
110             Larger box with enclosed text.
111           -^H~                                *^H~
112 
113 ^?^?^?^?Result    __________________________________
114 ^?^?^?^?          |                                |
115 ^?^?^?^?          | Larger box with enclosed text. |
116           _^H|_________________________________^H|
117 
118 
119 If interior lines are needed, be sure to remember that vertical lines
120 start at the TOP of the symbol and end at the BOTTOM of the symbol; and
121 that horizontal lines start and stop at the LEFT EDGE of the symbols.
122 (Note the difference from horizontal lines EXTERIOR to boxes.)  For
123 example,
124 
125 Source    -^H|   *^H|
126           "^H-1"^H|2*^H-
127           -^H~3|^H~4*^H~
128 
129 ^?^?^?^?Result    _____
130           _^H|_^H1_^H_^H|_^H2_^H|
131           _^H|_^H3_^H_^H|_^H4_^H|
132 
133 
134 Superscripts and subscripts:
135 Superscripts and subscripts are created by placing the letter "s"
136 (either uppercase or lowercase) and one of the two vertical motion
137 characters at the point where the baseline change is to occur.
138 Alternatively, "S" for superscript or "s" for subscript and a
139 replicator character may be used.  When using superscripts and
140 subscripts, the user must remember to return to the normal text
141 baseline.  For example, the chemical symbol for water could be given
142 as,
143 
144    Hs$v2^$s0
145 
146 The baseline offset for superscripts and subscripts is one third of the
147 current linespace value but the feature is effective only for those
148 devices capable of fractional linespacing.  The constructs are,
149 
150 
151  S$^   superscript
152  s$^   superscript
153  S$"   superscript
154  S$'   superscript
155  S$v   subscript
156  s$v   subscript
157  s$"   subscript
158  s$'   subscript
159 
160 Source    A superscript - xS$^2S$v and a subscript - HS$v2S$^0.
161 
162           A superscript - xS^H^2S^Hv and a subscript - HS^Hv2S^H^0.
163 
164 Result    A superscript - x2 and a subscript - H20.
165 
166 
167 Half-lines:
168 Half-lines are created by placing the letter "h" (either uppercase or
169 lowercase) and one of the two vertical motion characters at the point
170 where the baseline change is to occur.  Alternatively, "H" for
171 half-line up or "h" for half-line down and a replicator character may
172 be used.  When using half-lines, the user must remember to return to
173 the normal text baseline.
174 
175 The baseline offset for half-lines is one half of the current linespace
176 value but the feature is effective only for those devices capable of
177 fractional linespacing.  The constructs are,
178 
179 
180  H$^   half-line up
181  h$^   half-line up
182  H$"   half-line up
183  H$'   half-line up
184  H$v   half-line down
185  h$v   half-line down
186  h$"   half-line down
187  h$'   half-line down
188 
189 Source    A half-line H$vdownH$^ and H$^up.H$v
190 
191           A half-line H^HvdownH^H^ and H^H^up.H^Hv
192 
193 Result    A half-line down and up.
194 
195 
196 Math symbols:
197 Multi-line math symbols are created by "stacking" the appropriate math
198 symbol construct in the same input column for the desired number of
199 lines.  The constructs are given as one of the math symbol selector
200 characters below and the alphanumeric character representing the
201 desired size.  The maximum symbol size is 56.  The size character and
202 the number of input lines given should be the same.
203 
204     Note -- It is critical that text filling be off and that alignment
205             be flush left for these constructs so that the positioning
206             of the symbol elements are maintained.
207 
208 The selector characters are,
209 
210 
211  [   opening bracket
212  ]   closing bracket
213  {   opening brace
214  }   closing brace
215  (   opening parenthesis
216  )   closing parenthesis
217  |   single line (Boolean OR)
218  =   double line (concatenate)
219 
220 In addition, the following symbols are available as "1-high" only
221 (these symbols may also be used in filled text),
222 
223 
224  o$1   bullet
225  /$1   division sign
226  X$1   multiplication sign
227  $1    asterisk
228  c$1   heavy vertical line (change bar mark)
229 
230 Source    1$[ 1$] 1${ 1$} ($1 )$1 1$| 1$= 1$o 1$/ 1$X *$1 1$c
231             one high math symbols
232 
233           1^H[ 1^H] 1^H{ 1^H} (^H1 )^H1 1^H| 1^H= 1^Ho 1^H/ 1^HX *^H1 1^Hc one high math symbols
234 
235 Result    [ ] { } ( ) | [^H] o^Hx / X * (C) one high math symbols
236 
237 
238 Source    3$[ 3$] 3${ 3$} ($3 )$3 3$| 3$=
239           3$[ 3$] 3${ 3$} ($3 )$3 3$| 3$= three high math symbols
240           3$[ 3$] 3${ 3$} ($3 )$3 3$| 3$=
241 
242           3^H[ 3^H] 3^H{ 3^H} (^H3 )^H3 3^H| 3^H=
243           3^H[ 3^H] 3^H{ 3^H} (^H3 )^H3 3^H| 3^H= three high math symbols
244           3^H[ 3^H] 3^H{ 3^H} (^H3 )^H3 3^H| 3^H=
245 
246 Result    [ ] { } ( ) | [^H]
247           [ ] { } ( ) | [^H] three high math symbols
248           [ ] { } ( ) | [^H]
249 
250 
251 Diamonds:
252 Diamonds are constructed by defining their vertices with the following
253 four symbols.
254 
255      ^$"    top vertex
256      v$"    bottom vertex
257      <$"    left vertex
258      >$"    right vertex
259 
260 Top vertices are positioned at the BOTTOM of the symbol; left and right
261 vertices at the LEFT and RIGHT edges, respectively, of the symbols; and
262 bottom vertices at the TOP of the symbol.
263 
264 
265 Diamonds must always be an ODD number of lines high and the top and
266 bottom vertex symbols must appear in the same column.  The left and
267 right vertex symbols must appear on the mid-way line between the top
268 and bottom symbols; must be centered on the column containing the top
269 and bottom symbols; and must be separated by the same number of columns
270 as there are lines separating the top and bottom symbols.  Symbols for
271 diamond vertices may NOT appear in column 1.
272 
273 The minimum diamond is one line high and one column wide and has two
274 forms as shown below.  The first form has poor appearance on an ASCII
275 terminal but looks good on a plotting terminal.
276 
277 
278 Source    "^H^  "^H<"^H>
279           "^Hv
280 
281 ^?^?^?^?Result    ^  <>
282 ^?^?^?^?          v
283 
284 The maximum diamond is limited only by the current line length and page
285 length.
286 
287 Source     "^H^       "^H^
288           "^H< "^H>
289            "^Hv     "^H<   "^H>
290 
291                    "^Hv
292 
293 
294 ^?^?^?^?Result     ^       ^
295 ^?^?^?^?          < >     / \
296 ^?^?^?^?           v     <   >
297 ^?^?^?^?                  \ /
298 ^?^?^?^?                   v
299 
300 
301 Lozenges:
302 Lozenges (flattened diamonds) are constructed by defining their four
303 corners and their two vertices with the following five symbols.
304 
305      -$/              upper left corner
306      *$\              upper right corner
307      -$~$\            lower left corner
308      *$~$/            lower right corner
309      \$~$/            left or right vertex
310 
311 The four corners are positioned at the BOTTOM of the symbols; left and
312 right corners at the LEFT and RIGHT edges, respectively, of the
313 symbols; and left and right vertices at the LEFT and RIGHT edges,
314 respectively, of the symbols.
315 
316 
317 Lozenges must always be an ODD number of lines high and the upper and
318 lower corners symbols must appear in the same column on either side.
319 The left and right vertex symbols must appear on the mid-way line
320 between the top and bottom symbols and must lie to the left and right,
321 respectively, of their corners the same number of columns as there are
322 lines separating them from the top and bottom symbols.  Symbols for
323 lozenge corners and vertices may NOT appear in column 1.
324 
325 The minimum lozenge is three lines high and three columns wide.
326 
327 Source     *^H-^H/^H\        superposed upper left- and right-corners
328           /^H\^H~ /^H\^H~
329            *^H-^H/^H\^H~        superposed lower left- and right-corners
330 
331 
332 ^?^?^?^?Result     _
333 ^?^?^?^?          / \
334 ^?^?^?^?          \_/
335 
336 The maximum lozenge is limited only by the current line length and page
337 length.
338 
339 Source     -^H/         *^H\     -^H/  *^H\
340           /^H\^H~  Is the   /^H\^H~
341            -^H\^H~flag set?*^H/^H~
342                         /^H\^H~        /^H\^H~
343    ^?^?
344    ^?^?
345                            -^H\^H~  *^H/^H~
346 
347 
348 ^?^?^?^?Result     ___________     ____
349 ^?^?^?^?          /  Is the   \   /    \
350           \__^Hf_^Hl_^Ha_^Hg__^Hs_^He_^Ht_^H?_/  /      \
351 ^?^?^?^?                        /        \
352 ^?^?^?^?                        \        /
353 ^?^?^?^?                         \      /
354 ^?^?^?^?                          \____/
355 
356 
357 Rules:
358 Typographical rules are created by giving their starting and ending
359 points with the constructs below.  Rules are started by giving a rule
360 selector character and any other line art character in an artwork
361 construct and are ended by giving the appropriate terminator character
362 with any other line art character in an artwork construct.
363 
364 Unterminated rules that attempt to cross either page margin result in
365 error messages.  Unterminated rules that reach the end of the artwork
366 block are terminated gracefully.  The rule selector and terminator
367 characters are,
368 
369  -   horizontal rule
370  |   vertical rule
371  \   left slant rule
372 
373 
374  /   right slant rule
375  *   horizontal terminator
376  ~   vertical and slant terminator
377 
378 Source    ~$| v$|$~ ~$|$~ -$* -$"-$* -$" -$** -$" Some text -$*
379             -$"Some-$* <$-*$- -$">$* >$- >$*
380           More text    More
381 
382           | ~ ~ * "* " * " Some text *Some* -- "* - * *
383                            More text  More
384 
385 Result    | |^Hv |^H^  _ __ ___^HS_^Ho_^Hm_^He__^Ht_^He_^Hx_^Ht_ __^HS_^Ho_^Hm_^He _^H< __^H> _^H<__^H>
386                    More text    More
387 
388 
389 Circles and rounded boxes:
390 A circle may be created by giving a left and a right parenthesis, each
391 with a replicator character, in artwork constructs separated by exactly
392 one column.  The separating column may be used for a single character.
393 The resulting circle is three lines high.  No other circle size is
394 provided.
395 
396 A rounded box may be created by opening up the space between the
397 parenthesis constructs and giving horizontal rules in the line before
398 and the line after the one containing the parentheses.  The extra space
399 may be used for any text.  The constructs are,
400 
401  ($"   left semicircle
402  )$"   right semicircle
403 
404 
405 Source          "$-   -$*
406           "$( "$)  "$(H$vAH$^"$)  "$( H$vboxH$^ "$)
407                 "$-   -$*
408 
409                 -   *
410           ( )  (vA^)  ( vbox^ )
411                 -   *
412 
413 Result    ( )  (A)  ( box )