X hits on this document

PDF document

Typesetting SGML Documents Using TjjX - page 6 / 6





6 / 6

Andrew E. Dobrowolski

the fonts found on the user's system based on the classification given by these characteristics. I would exclude allcap and offset from the classification, as these are not really properties of a font.

Difficult Transformations

The three transformations listed above are among the easiest. The characteristics affecting one TEX parameter do not necessarily come from a single category. Sometimes the transformation into TEX requires a long and complex algorithm. The seemingly simple request <span span=l> would cause an element to interrupt the current column mode in a multicolumn document, balance off the existing text on the page, switch into one-column mode for the duration of the element contents, and then switch back into the interrupted-column mode. These changes would also affect any parameter whose setting depends on the \hsize. Nonetheless, multicolumn algorithms exist and the required side effects of switching column modes can be rigorously


So the span characteristic can, in

theory, be implemented.

There implement

are characteristics that are impossible to

in w


The category that

controls page

breaks (keeps) contains widowct, and orphanct.

the characteristics keep, The first is a toggle (0

or 1)




inhibits the breakability of other two are integers that

the entire control the

number of widow or if the element must

orhan lines to be break. But $

kept only

together provides

widow/orphan control for first two and the last two the best transformation is

page lines only

breaks between of a paragraph. approximate:

the So

The lettersp category concerns kerns between

letter pairs.

can be made to do "track

kerning" in limitied circumstances, but the process is inefficient and the conditions under which it can be used are limited. There seems to be no point in

attempting to implement this capability.

The quadding category controls justification of lines within an element. Among other possibilities, it gives the FOSI designer the power to request that paragraph lines be ragged on the inside margin only or the outside margin only. But 7&X cannot justify the lines of a single paragraph based on which page they fall on, at least not in a one-pass system. This

is yet another esoteric request that would not cause a book designer to lose any sleep if it were glossed over.

Still other FOSI capabilities can be imple- mented by using extensions to 7&X.The category that controls underscoring and overstriking (highlt) may require a TEX extension or some driver assis- tance via \special commands. This same category gives control over the background and foreground colors.

TEX Capabilities That Are Not Expressible In a FOSI

It is interesting to note that just as there are FOSI capabilities that are not possible to implement by

TEX, there are TJ$ described in a FOSI.

capabilities that cannot be

The p l a i n . tex package already provides many typographical parameters to which the FOSI de- signer will have no access. Only parameters and capabilities that may need to be used in the middle of a document will be listed, since the macro pack- age can set up the other parameters easily. The list includes: horizontal kerning; \vboxes and \hboxes to any fixed dimension; the capabilities of \ h a l i p . \valign, and simple tabbing; mathematics and all parameters related to mathematics; \looseness, \par shape, and the paragraph-hanging parameters; \lineskip and \lineskiplimit control; \topskip; multilingual hyphenation patterns; marks of various flavors; and \xspaceskip, although interword space can be adjusted.

Adding macro packages increases the short- comings of the FOSI. Add to the list: mixed multi-column modes on one page, although span- ning to one column is possible; precise control of figure placement and many insert categories; side-by-side paragraphs; "picture" modes; multiple levels of footnotes; marginal notes; paragraph line numbering. The list goes on.

In general, the major advanced capabilities


has over FOSI capabilities are macro ex-

pandability, contitionals, and the ability to define custom output routines. For the time being, these are not serious limitations. It is more important to find an interim solution to the arbitrary DTD for- matting problem. The FOSI-driven TE_rC formatting engine provides a good solution. Its wide accep- tance in the SGML community would also mean a wide acceptance of w,a factor that would weigh

strongly in W ' s favor.


TUGboat, Volume 12 (1991), No. 3 -Proceedings

of the 1991 Annual Meeting

Document info
Document views19
Page views19
Page last viewedSat Dec 10 20:41:10 UTC 2016