1. An automated method of performing text justification to expand text within a line to produce flush left and right margins on an output medium comprising the steps of: A. determining the number of expandable interword positions within the line (SPACES); B. determining the number of expandable intercharacter positions within the line (CHARS); C. determining the amount of expansion required within the line to a justified margin (EXPAND) by subtracting the width of the text from the total line width, the width of the text and the total line width being expressed in terms of horizontal granular units which correspond to the smallest horizontal distance the printhead of the output device can traverse along a line under control of the justification process, the value of a horizontal granular unit not being known to the justification process; D. if both CHARS and SPACES are greater than 0: (1) compute portion of EXPAND which is to go between characters and distribute it in expandable intercharacter positions; and (2) compute portion of EXPAND which is to go between words and distribute it in expandable interword positions; E. If CHARS is equal to 0, distribute EXPAND into expandable interword positions; F. If SPACES is equal to 0, distribute EXPAND into expandable intercharacter positions;
9. The method of claim 1 wherein distribution of the expansion is done by augmenting a horizontal position count associated with each character that is to be moved during the justification process.