6
O’RMATIONPRMESSING LETTERS 10972) 246-25 1. NORTH-HOLLAND PUBLISHING COMPANY XCRIRI., - AHeARDCOPYSCANEINE~GRAPHICSSYSTEM FORDOCUMENTGENERATIONf R, REDDY,W. BROADLEY, L. ERMAN,R. SOHNSSON, 2. NEWCOIIVIER: G. ROBERTSON and J. WRIGHT Cbmputw Science Dep., Gzrnegie-MeCon Univmi~y, Pittsburgh, Pa. 15213, USA Received 25 June 1972 gray-scale graphics 1 Elttmduction _L __________~ -: XCR.IBL is a system for producing arbitrary computer output such as variabletype phics, and half-tone images.This system aped at Carnegie-Mellon University using a Printer (XGP). Aithough the XGP was than ten years ago, it has not found acceptance as a computer cutput device in the Past. The main problems were the excessivecomputer time and memory requirements associated w_th scan- &e generation. Careful design of data structures and an interfafze using t mini computer as an intelligent oantroher for the XGP ?eadsto the inexpensive solution used in the XCRIBLsystem. This paper out- varicvs components of the XCRIBLsystem, viz., rlepresent;ltion of information, the interface, the ,e;upport systems, the character set design facility, and I;r;lguagp,s for document generation. P.I. S!e Xerox Gritpk l%nter The XGP is a facstie copying machine originally designed for transmission of documents over high andwid th telephone lines, The usual Xerox process t eaxch was upported in part by Xerox Corporation document generation consists of reflecting light from a printed page onto a selenium drum. The change in electrical charge on the Jrum caused by the light is used to transfer the “toner” to paper, where a high-temperature “fuse?’ makes the image permanent. Instead of reflected light, the XGP uses the image generated on a cathode-ray tube, one scan line at a time. The image on the CRT is produced by facsmile transmission or, ir this case, under computer control. For use with the XGP,an image is divided into a matrix of points (- 4O,CNIO/ square inch). Each of the points can be set to black or white and represented by a single bit. The XGP accepts this image in strings of bits, each string representing a single row of the matrix. The XGP has adjustable resolution; the one described here is operated at 192 points per inch which is equivalent to an image of approximately 3.5 million bits for an 8% X 11” page. The image is transferred to unsensitized zi zft” continuous roll paper at a speed 1 inch/set; the Papa may be cut to size automarically under computer control. Because of its high resolution each page can contain information 1:quivalent to two pages of co~,ventionalcomputer jisting, i.e., 110 lines of output every ten seconds (* 500 lpm). Th.eXGP printer is a syr.dhronraus device, requiring a complete raster line eirery 5 milliseconds. In order to reformat the data e(;onomically, z decision was made to use a low-c-l :& minicomputer as a controller. We presently use : DEC PDP-11, with a 28k ( 16 bit) memory. The imited computing power of the

XCRIBL – A hardcopy scan line graphics system for document generation

  • Upload
    r-reddy

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Page 1: XCRIBL – A hardcopy scan line graphics system for document generation

O’RMATION PRMESSING LETTERS 10972) 246-25 1. NORTH-HOLLAND PUBLISHING COMPANY

XCRIRI., - AHeARDCOPYSCANEINE~GRAPHICSSYSTEM FORDOCUMENTGENERATIONf

R, REDDY, W. BROADLEY, L. ERMAN, R. SOHNSSON, 2. NEWCOIIVIER: G. ROBERTSON and J. WRIGHT

Cbmputw Science Dep., Gzrnegie-MeCon Univmi~y, Pittsburgh, Pa. 15213, USA

Received 25 June 1972

gray-scale graphics

1 Elttmduction _L __________~

-: XCR.IBL is a system for producing arbitrary computer output such as variable type phics, and half-tone images. This system aped at Carnegie-Mellon University using a

Printer (XGP). Aithough the XGP was than ten years ago, it has not found

acceptance as a computer cutput device in the Past. The main problems were the excessive computer time and memory requirements associated w_th scan- &e generation. Careful design of data structures and an interfafze using t mini computer as an intelligent oantroher for the XGP ?eads to the inexpensive solution used in the XCRIBL system. This paper out-

varicvs components of the XCRIBL system, viz., rlepresent;ltion of information, the interface, the ,e;upport systems, the character set design facility, and I;r;lguagp,s for document generation.

P.I. S!e Xerox Gritpk l%nter The XGP is a facstie copying machine originally

designed for transmission of documents over high andwid th telephone lines, The usual Xerox process

t eaxch was upported in part by Xerox Corporation

document generation

consists of reflecting light from a printed page onto a selenium drum. The change in electrical charge on the Jrum caused by the light is used to transfer the “toner” to paper, where a high-temperature “fuse?’ makes the image permanent. Instead of reflected light, the XGP uses the image generated on a cathode-ray tube, one scan line at a time. The image on the CRT is produced by facsmile transmission or, ir this case, under computer control. For use with the XGP, an image is divided into a matrix of points (- 4O,CNIO/ square inch). Each of the points can be set to black or white and represented by a single bit. The XGP accepts this image in strings of bits, each string representing a single row of the matrix.

The XGP has adjustable resolution; the one described here is operated at 192 points per inch which is equivalent to an image of approximately 3.5 million bits for an 8% X 11” page. The image is transferred to unsensitized zi zft” continuous roll paper at a speed 1 inch/set; the Papa may be cut to size automarically under computer control. Because of its high resolution each page can contain information 1:quivalent to two pages of co~,ventional computer jisting, i.e., 110 lines of output every ten seconds (* 500 lpm).

Th.e XGP printer is a syr.dhronraus device, requiring a complete raster line eirery 5 milliseconds. In order to reformat the data e(;onomically, z decision was made to use a low-c-l :& minicomputer as a controller. We presently use : DEC PDP-11, with a 28k ( 16 bit) memory. The imited computing power of the

Page 2: XCRIBL – A hardcopy scan line graphics system for document generation

I?. Reddy et al., A hwdcopy scan line graphics system 241

machine influenced many design decisions, such as the incubation of “modes” of operation of the interface.

1.2. The XCRIBL system The XCRIBL system operates as a peripheral device

to the host computer, a PDP-IO. The character set descriptions for various type fonts may be stored on a small head-per-track disk connected to the PDP-11, or kept 011 the PDP-10. Text and graphic information are transmitted as needed from the host across a high- speed data link (160,000 bits/se+ In addition to textual and graphic information, the data from the host may also con!a+r special purpose control informa- tion such as changes of type fonts, variations in margins, and speci(il formatting requests such as ii;le justification.

An interesting feature of the system is that every aspect of the output device now becomes a variable when compared with conventional line printers. The character sets, sizt, all margins, interline spacing, and page size are all v‘ariable, and can be changed dynam- &.lly during the output of a document.

1.2.1. Representation of information Characters are represented internally as a rectangu-

lar bit matrix. Each row of the matrix requires an integral multiple of 8 bits (the byte size of the con- troller), although not all the bits of the last byte may be used. Characters may be any width from 0 to 255 bits wide and (theoretically) up 215-1 bits high.

Vectors are represented in a conventional scan line format. This formar is necessarily different from the ordinary representation of vectors, since for most graphics terminals the entire screen is randomly accessible. In video terminals and hardcopy scan line devices the data must be presented in the order that the scan lines are generated. A software solution to the problem of vector intersection with scan lines was chosen in order to retain the capability for flexible formatting of the output. Vectors are processed in real time, and the ;lvailable computing power limits the number of vectors which can cross any scan line.

Gray scale representation is achieved by dividing the page into l/25 inch squares (an area of UO16 square inches) in which an appropriate number of bits is set to black to represent darkness. This is achieved at present by using a rectangular spiral representation cbf increasing darkness. Generation of gray scale

images thus tu:rir$ ,t 3 i-e :r 1,~ ; :a1 case of textual output in which a special gra; s4e type foi, b 1s used.

The generation of a scan line which contains both textual and graphic information is ntjt a problem for the controller if the text and gra;phk, is wn-over- lapping. If the latter is not the case, then one has to resort to an off-line solution of generating the bit image on the host or restricting the character set to only fii=ed=width characters. This is a restriction in the present system but may not be permanent.

2. Implementation

In this section we provide a description of the overall implerczntation of the s;;lstem. More detailed descriptions of the various aspects of the system may be found in f l].

2.1. The interface The purpose of the interface between the controller

and the XGP is to accept a coded scan line from the controller memory and decode it into a video signal, every 5 milliseconds. A scan line is a bit vector of about 1550 points, in which each point is either on (black) or off (white). There is no gray scale availabie at this level. The interface has facilities for handling three different modes of data and means for sbitching between modes, as well as providing control and inter- rupt functions. The modes available are “character mode”, “vector mode”, and ‘“image mode”.

In the character mode, the first byte sent to the interface represents the number of valid bits (and consequently, the number of following bytes) which contain the data. When the width cotlnt is given as zero, then the next byte represents a mode change (to either vector mode or image mode) or a stop code, indicating compleaion of the data.

In the vector mode, each pair of bytes represents a run-coding of (part of) the data. The first b:,t’: of the pair represents the number of white points and th; second byte represents the number of black points. When two successive bytes are zero, the interface reverts to character mode.

in image mode, every bit is treated as video informa- tion until an error cokldition occurs, vypically. “ever- scan”, at which pint an interrupt is Gw3ec? for restart

of the next sc line. ecause of the high data rat43

Page 3: XCRIBL – A hardcopy scan line graphics system for document generation

R. Redcfy et al., A hardcopy scaB line graphics q.wc?rn

is the onSy mode which I annot operate e from the host; for this mode, the scan line fist sent to the ion::cUer, where they are

lated on the disk before being transferred to

components to the support system; contzoller; the other operates as a

time-shared host computer. The rolier support system is to generate

ds~. rleeded by the XGP. The support terrupts from the host/c 2ntrol- !ncoming data for control in-

and selects type fon!s from the disk as of this is done subject to the real-time

af the support system which resides in the s the users with the facilities of sending

zzti character sets across *&e link. !t also of vector from conventional

n and modification

:ter matrix may be set or reset by the appropriate point on a grid and

ipulations, the system has tuting, translating, rotating,

reflecting characters. The I on a storage screen display o the host computer.

without the necessity of typing or drawing the symbols on the final document. Furthermore, the output is “camera-ready” -- a distinct advantage in light of rising publication costs.

Two languages t xisl on the PDP-10 system for document generation, RUNOFF (described in [ I] )

and PUB [2]. Both were initially in&Tided to produce documents on the line printer. The facilites which they include are line justifying, page formatting and numbering. Both systems have been modified to take full advantage of the features of the XGP. Experience with the modified systems is expected to provide valuable feedback on the future of the XGP interface and support system.

3. &suits and conchsions

Figs. 1,2,3 ,Ind 4 provide examples of typical output from the XCRIBL system.

While there is nothing new in any one of the techniques used the total system represents the bringing together of several technologies in both hard- ware and software to make such a system possible. There are several unserved problems. Most of them deal with the power and flexibility provided by the system. Several tradeoffs have been made in power to maintdn a maximum amount of flexibility. As problems are better understood, special hardware mhy be constructed to implement specific algorithms. Typical of these are sophisticated text justii,cation algorithms, the number of vectors which can cross a scan line, size and shape of the characters, and mixed :zxt and vector output. Other issues deal with such problems as tblz high-contrast nature of the Xerox Frocess, the rater resolution, and the actual dot resolution of the printer. Many design choices were dictated by the computing power available in the controller. The present interface cannot produce in- clined text, 0. text requiring the exchange of width and height of a page, for example. Overall, however, the flexibility, quality, and cost per page of computer output prov*lded by the present system is substantially better than other devices available for computer out- put.

Page 4: XCRIBL – A hardcopy scan line graphics system for document generation

R. ~~dd_~~ et al., A hardcopy scan line graphics system

This is an example of

capabilittc s of the XGP

controller can j~esri/y text

these, or not justify them,

option as shown below.

some of the

printer. The

lines, such as

at the user’s

It can also print rrrt~ character which

the user car conceive; a type font constsis

of 127 characters, and two type fon!s can be held in the machine at ot:e time.

Additional type fonts may be brought

in as needed, with a slight delay. These may contain speciA type styles or special characters.

aW*

Gi o

2I?UIi

begin integer x,y; boolean b; b:=x < 0; if b

gin x:=x+1; y:=(y-1)~2 end else begin x:=y+l; y:=x-1 end;

print(x) end

Currently available character sets

include /IPI, characters, sDeech phonemes,

and gray scale characters. This figure w’as

produced in a single output operation on

the XGP; there has been no pasteup.

Ffg. 1. Sample character outplrt.

Fig. 2.

References

PI

PI

R. Reddy, W. Broadley, L. Erman, J. Newcomer, G. Robertson and J. Wright, XCRIBL - A Hardcopy Scar1 Line Graphics System for Document Generation, Corn. puter Science Department Report, Carnegie-Mellon University, March 28, 1972. L. Teslar, PUB Marrud, Stanford Artificial Inteiligence Laboratory Operatlng Note, Stanford University, to be printed.

Page 5: XCRIBL – A hardcopy scan line graphics system for document generation

250 7,. Reddy et al., A hardcopy scan line graphics system

Page 6: XCRIBL – A hardcopy scan line graphics system for document generation

251

. ,

. .

.*

.*

. .

rl

.ll

r,

3.6

a. 1

I*,

I.

*.

I.

8.

I.

1.

t.

Ir

,.

I.

. ..p*. . -::.::* #iii!\

.;

:: . . .:

Il... **.**

. . . .

::.... ..I

. . . ..“..

. . . . . , . . . . . .

. . . . . . . a . . . . . .

: ....... .... ............... ....................... *.v . . ...

........... ...... . ....

..~~~.~.~~~~~~~~~...‘...

r . . ... .... ........

..::::;;;::.:::::: ::::;;.........:ili::;.....;iiii:. ............... . .

.............. ......... ....................

................ ........ ....... ............ ..fT..

.......... ....... ... . . . .:. 1

. . .

. ..I . .

. a.. *.* ,.,*.*a r... .

. ..*****.. .:.*...* .*.*g;*** .a“*.

- . . . . l * ,... “+~~f~~~“’ ::.:-:.:::::;,.:fy’ * .**..

.a..

Fig. 4. Sample of spectrograrr output.