throbber
6,046,818
`[11] Patent Number:
`[19]
`United States Patent
`
`Benson
`[45] Date of Patent:
`*Apr. 4, 2000
`
`USOO6046818A
`
`[54]
`
`IMPOSITION IN A RASTER IMAGE
`PROCESSOR
`
`5,740,338
`
`4/1998 Gauthier et al.
`
`........................ 395/116
`
`[75]
`
`.
`[*] Not1ce:
`
`Inventor: Craig H. Benson, Fremont, Calif.
`.
`[73] Ass1gnee: Adobe SYStems Incorporated’ San
`Jose, Callf.
`.
`~
`~
`Th1s patent 1ssued on a contmued pros-
`ecution application filed under 37 CFR
`153(d)’ and IS “We?“ to the twenty year
`patent
`term prov1s1ons of 35 U.S.C.
`154(a)(2)
`
`.
`[21] Appl. No.: 08/868,045
`.
`Jun. 3’ 1997
`Flled:
`Int. Cl.7 ...................................................... B41B 15 00
`/
`....................... 358/118; 358/1.18; 358/115;
`358/11; 358/19
`[58] Field Of Search ..................................... 395/116, 114,
`395/101> 117’ 109’ 111’ 115; 101/136
`References Cited
`U.S. PATENT DOCUMENTS
`
`[22]
`51
`[
`l
`[52] US. Cl.
`
`[56]
`
`Primary Examiner—Edward L. Coles
`Assistant Examiner—Twyler Lamb
`Attorney, Agent, or Firm—Fish & Richardson P.C.
`
`57]
`
`ABSTRACT
`
`A method and apparatus for rendering one or more page
`description language descriptions of pages to be printed by
`.
`.
`.
`.
`a pr1nt1ng deV1ce on a sheet. The apparatus includes an
`assembler, an interpreter and a rendering engine. The assem-
`bler receives as an input a job ticket including layout and
`page identifier information. The assembler operates to gen-
`erate an ordered list of objects to be printed by the printing
`device on the sheet. The inter reter receives the
`a e
`p
`p g
`description language input and the ordered list and generates
`display list objects for each object in the ordered list. The
`d1sp1ay 11st objects may be stored 111 a display 11st memory.
`The rendering engine receives the display list objects ren-
`ders the objects. The rendered objects may be printed by a
`print engine onto the sheet.
`
`5,163,368
`
`11/1992 Penasavecchia et a1.
`
`.............. 101/136
`
`35 Claims, 8 Drawing Sheets
`
`LAYOUT
`FILE
`
`
`
` GENERATIONINTERFACE COMPUTER
`UTILITY
`STORAGE
`
`INTERPRETER
`
`
`
`
`
`
`
`DISPLAY
`LIST
`MEMORY
`
`PRINT
`ENGINE
`
`34
`
`
`
`PRINTING INDUSTRIES OF AMERICA
`
`EXHIBIT 1 2 l 2
`
`

`

`US. Patent
`
`Apr. 4, 2000
`
`Sheet 1 0f 8
`
`6,046,818
`
`ms
`
`mu__n_
`
`m0<m0._.m
`
`mmEEmEZ.m5m§mmm<
`
`mm.
`
`___
`
`r/h
`
`><._n_m_n_
`
`._.m_._
`
`>IO_>_m=>_
`
`_mm8
`
`rllllllll|ll
`
`__
`
`mm»._m2<E
`"autism
`
`vm
`
`EEQ
`
`mz_ozm
`
`F1.6E
`
`._.DO><._
`
`>._._.=._.D
`
`
`
`ZO_._.<mm_Zm_Gm_O<n_m_m_._.Z_
`
`EMFDQEOO
`
`
`
`
`
`
`

`

`US. Patent
`
`Apr. 4, 2000
`
`Sheet 2 0f 8
`
`6,046,818
`
`AwkzmhzooF52d:awe/E:
`Each.onoz560.mN_mFzmzaooe29259.2.382
`
`
`
`
`wmmPFZMEDOOD
`
`
`
`_.m_.=u_._.Zm=>_DDOn_
`
`
`
`Nw.=u_._.Zm=>_DOOn_
`
`
`
`FHOm—wm—ODmo<n_n_._.maxim—3m
`
`wmmFPDOk§4
`
`
`
`Xm0<uEDwxFowwmoDmo<._n_.
`
`
`
`Xm..=n_._.Zm=>_DOOD
`
`Ne
`w
`
`VON
`
`mew
`
`mew
`
`

`

`US. Patent
`
`Apr. 4,2000
`
`Sheet 3 0f8
`
`6,046,818
`
`%JTF— 1 .2
`
`301
`
`1 0 obj
`<<
`II‘ype /Cata10g
`/JobTicket 2 0 R
`>>
`
`/
`
`302
`
`[-
`
`endobj
`2 0 obj
`<<
`fI‘ype /JobTicket
`/Audit [ 3 0 R ]
`/Contents 4 0 R
`>>
`
`306
`
`f
`
`endobj
`3 0 obj
`<<
`IType /Audit
`/Date (199705141446+08’00’)
`/JTManager (ScenicSoft Preps 3.x)
`>>
`
`endobj
`4 0 obj
`<<
`/Type /JobTicketC0ntents
`[Layout 5 0 R
`/Documents [ 6 0 R ]
`>>
`
`304
`
`/
`
`endobj
`5 0 obj
`<<
`nype ILayout
`ISignatures [7 0 R]
`>>
`
`/
`
`310
`
`308
`
`[-
`
`endobj
`6 0 obj
`<<
`nype /Document
`/Files [ 8 0 R ]
`>>
`
`314
`
`endobj
`7 0 obj
`<<
`/Type /Signature
`/Sheets [9 0 R]
`/MediaSource 10 O R
`>>
`
`[-
`
`301
`
`301
`
`312
`
`[—
`
`endobj
`8 0 obj
`<<
`/Type /JTFile
`/File (testfiles/testtest20.pdf)
`/FileType IPDF
`>>
`
`316
`
`/.
`
`endobj
`9 0 obj
`<<
`/Type /Sheet
`/Front110 R
`[Back 12 0 R
`e):dobj
`
`300
`
`202
`
`206
`
`FIG. _ 3a
`
`

`

`US. Patent
`
`Apr. 4, 2000
`
`Sheet 4 0f 8
`
`6,046,818
`
`1000bj
`<<
`ITpr IMediaSource 4/
`/Media 13 0 R
`>>
`
`4/3
`
`318
`
`endobj
`11 0 obj
`<<
`/I'ype /Surface
`/P1acedObjects[140R 150R 160R 170R 180R 190R 200R 210R]
`>>
`
`/
`
`322
`
`endobj
`12 0 obj / 324
`/Type /Surface
`/Placed0bjects[220R 230R 240R 250R 260R 270R 280R 290R]
`>>
`
`endobj
`13 0 obj
`<<
`/Type lMedia
`/Dimensions [ 2736000000 1800000000 2736000000 1800000000 ]
`>>
`
`/
`
`319
`
`320
`
`/
`
`f 326
`
`endobj
`14 0 obj
`<<
`/Type /Placed0bject
`330
`332k /Name /Page
`334\ /CTM [ 1.000000 0.000000 0.000000 1.000000 873000000 405000000 ]
`/Clipping [ -9.000000 —9.000000 198.000000 198000000]
`/Ord 1
`>>
`endobj & 336
`15 0 obj
`<<
`/Type /P1acedObject
`/Name /Page
`/CTM[0.000046 1.000000 —1.000000 0.000046 1269.000000 405.000000]
`/Clipping [ —9.000000 0.000000 198000000 198000000 ]
`IOrd 1
`>>
`
`326
`
`[-
`
`326
`
`/
`
`endobj
`16 0 obj
`<<
`/Type [PlacedObject
`/Name /Page
`/CTM[—1.000000 0.000093 -0.000093 —1.000000 1467000000 603000000]
`/Clipping [0.000000 0.000000 198000000 207 .000000 ]
`/Ord 1
`>>
`
`326
`
`[—
`
`endobj
`17 0 obj
`<<
`/Type /PlacedObject
`/Name /Page
`/CTM [—0.000139 —l.000000 1.000000 —0.000139 1467.000000 603.000000]
`/Clipping [ 0.000000 0.000000 207.000000 198.000000 ]
`/Ord 1
`
`Zidobj
`
`FIG._3b
`
`

`

`US. Patent
`
`Apr. 4,2000
`
`Sheet 5 0f8
`
`6,046,818
`
`326
`
`/
`
`18 0 obj
`<<
`/Type lPlacedObject
`/Name /Page
`/CTM[1.000000 0.000000 0.000000 1.000000 873000000 603000000]
`/C1ipping[—9.000000 0.000000 198000000 198000000]
`/Ord 2
`>>
`
`326
`
`/
`
`endobj
`19 0 obj
`<<
`lType /P1acedObject
`/Name /Page
`/CTM [0.000046 1.000000 -1.000000 0.000046 1269000000 603000000]
`[Clipping [0.000000 0.000000 198000000 198000000]
`/Ord 2
`>>
`endobj
`20 0 obj
`<<
`/Type /Placed0bject
`/Name lPage
`ICTM [—1.000000 0.000093 -0.000093 -1.000000 1467.000000 801.000000]
`/C1ipping [ 0.000000 0.000000 198000000 198000000]
`/Ord 2
`>>
`
`326
`
`[—
`
`326
`
`{—
`
`endobj
`21 0 obj
`<<
`/Type /Placed0bject
`/Name /Page
`/CTM[—0.000139 —1.000000 1.000000 -0.000139 1467.000000 801.000000]
`/C1ipping [0.000000 0.000000 198000000 198000000]
`/Ord 2
`>>
`endobj
`22 0 obj
`<<
`IType /PlacedObject
`/Name /Page
`/CTM[1.000000 0.000000 0.000000 1.000000 1665.000000 405.000000]
`/C1ipping [0.000000 -9.000000 207000000 198000000]
`IOrd 2
`>>
`
`328
`
`[-
`
`328
`
`[-
`
`endobj
`23 0 obj
`<<
`IType /Placed0bject
`/Name /Page
`/CTM [0.000046 —1.000000 1.000000 0.000046 1467.000000 603.000000]
`/C1ipping [0.000000 0.000000 207000000 198000000]
`IOrdl
`>>
`
`endobj
`
`FIG._3c
`
`

`

`US. Patent
`
`Apr. 4,2000
`
`Sheet 6 0f8
`
`6,046,818
`
`328
`
`/
`
`24 0 obj
`<<
`/Type /Placed0bject
`/Narne /Page
`/CTM [ —1.000000 —0.000093 0.000093 -1.000000 1467.000000 603.000000]
`/Clipping [0.000000 0.000000 198.000000 207.000000]
`IOrd 1
`>>
`
`328
`
`/
`
`endobj
`25 0 obj
`<<
`IType /Placed0bject
`[Name /Page
`/CTM [ -0.000139 1.000000 -1.000000 -0.000139 1269.000000 405.000000 ]
`/Clipping [ -9.000000 0.000000 198000000 198000000 ]
`/Ord 1
`>>
`
`328
`
`/
`
`endobj
`26 0 obj
`<<
`lType /P1aced0bject
`/Name /Page
`/CTM[1.000000 0.000000 0.000000 1.000000 1665.000000 603.000000]
`/Clipping [ 0.000000 0.000000 207000000 198000000 ]
`IOrd 2
`>>
`
`328
`
`[—
`
`endobj
`27 0 obj
`<<
`/Type /Placed0bject
`/Name /Page
`/CTM [0.000046 —1.000000 1.000000 0.000046 1467.000000 801.000000]
`/C1ipping [ 0.000000 0.000000 198000000 198000000 ]
`/Ord 2
`>>
`
`328
`
`[-
`
`endobj
`28 0 obj
`<<
`nype /P1accd0bject
`/Name /Page
`/CTM [-1.000000 —0.000093 0.000093 -1.000000 1467000000 801000000]
`/Clipping [0.000000 0.000000 198000000 198000000]
`/Ord 2
`>>
`
`328
`
`/
`
`endobj
`29 0 obj
`<<
`/Type /PlacedObject
`/Name /Page
`ICTM [—0.000139 1.000000 —1.000000 —0.000139 1269000000 603000000]
`/C1ipping [ 0.000000 0.000000 198.000000 198.000000]
`/Ord 2
`>>
`
`endobj
`
`FIG._3d
`
`

`

`US. Patent
`
`Apr. 4, 2000
`
`Sheet 7 0f 8
`
`6,046,818
`
`xref
`
`0 30
`
`0000000000 65535 f
`
`0000000009 00000 n
`
`0000000067 00000 n
`
`0000000145 00000 n
`
`0000000248 00000 n
`
`0000000336 00000 n
`
`0000000398 00000 n
`
`0000000457 00000 n
`
`0000000540 00000 n
`
`0000000630 00000 n
`
`0000000698 00000 n
`
`0000000758 00000 n
`
`0000000882 00000 n
`
`0000001006 00000 n
`
`0000001113 00000 n
`
`0000001316 00000 n
`
`0000001520 00000 n
`
`0000001725 00000 n
`
`0000001930 00000 n
`
`0000002132 00000 n
`
`0000002335 00000 n
`
`0000002540 00000 n
`
`0000002745 00000 n
`
`0000002948 00000 n
`
`0000003 15 1 00000 n
`
`0000003356 00000 n
`
`0000003562 00000 n
`
`0000003764 00000 n
`
`0000003967 00000 n
`
`0000004172 00000 n
`
`trailer
`
`<<
`
`/Root 1 0 R
`
`>>
`
`startxref
`
`4377
`
`%EOF
`
`FIG._3e
`
`

`

`US. Patent
`
`Apr. 4,2000
`
`Sheet 8 0f8
`
`6,046,818
`
`402
`
`RECEIVE PDL FILE(S) RETRIEVE OBJECTS FROM
`THE LIST IN DISPLAY ORDER 404
`WITH EACH OBJECT
`EACH PAGE TO BE PRINTED INTERPRET PARAMETERS
`INTO DEVICE SPACE
`
`STORE ALL FILES
`IN FILE STORAGE
`
`406
`
`DETERMINE THE NUMBER
`OF PAGES AND SIZE OF
`
`422
`
`424
`
`426
`
`RETRIEVE PDL FILE
`DATA ASSOCIATED
`
`ERROR
`
`NO
`
`408
`
`ALL
`RESOURCES
`AVAILABLE
`?
`
`
`
`
`
`
`
`YES
`
`412
`
`428
`
`INTERPRET PDL FILE
`
`DATA INTO DEVICE SPACE
`
`430
`
`RECEIVE A JOB TICKET
`
`FOR PROCESSING
`
`DIVIDE THE RESULTANT
`DISPLAY DATA INTO BANDS
`
`414
`
`432
`
`DISPLAY LIST MEMORY
`
`CREATE A LIST OF OBJECTS
`FOR EACH SURFACE TO
`BE PRINTED ON A SHEET
`
`STORE THE DISPLAY LIST
`DATA IN LISTS IN THE
`
`416
`
`434
`
`DATA INTO PIXELMAPS
`
`SORT OBJECTS IN LIST
`BY DISPLAY ORDER
`
`RENDER THE DISPLAY LIST
`
`420
`
`436
`
` TRANSFER THE ORDERED LIST
`
`TO THE INTERPRETER (OR
`
`
`INTERPRETER PORTION OF RIP)
`
`
`
`
`
`
`PRINT THE RESULTANT
`PIXELMAPS
`
`FIG._4
`
`

`

`6,046,818
`
`1
`IMPOSITION IN A RASTER IMAGE
`PROCESSOR
`
`BACKGROUND OF THE INVENTION
`
`The present invention relates generally to methods and
`systems for printing computer generated images and more
`particularly to methods and apparatus for formatting a sheet
`in preparation for printing on a printing device.
`A computer system can output data to a wide variety of
`output display devices. Output display devices such as laser
`printers, plotters, imagesetters, and other printing devices
`produce an image or “visual representation” on a sheet of
`paper or the like. Aprinting device can print dots on a piece
`of paper corresponding to the information of a bitmap (or
`pixelmap where a pixelmap is characterized as having a
`depth of two or more bits). A “raster” printing device creates
`a visual representation by printing an array of pixels
`arranged in rows and columns from the bitmap.
`One type of printing device is a printing press. Aprinting
`press may be used to produce books, newspapers,
`pamphlets, posters and other single and multi-page printed
`matter. The printing press advantageously prints multiple
`pages of printed matter at the same time onto a single sheet.
`Other devices used for printing multiple pages at the same
`time include imagesetters and plate setters.
`When printing multiple pages, the individual pages are
`arranged in one or more sheets. Each sheet includes a layout
`of pages that may be ordered or otherwise optimized to
`facilitate post-printing processes. For example, the layout of
`the sheet may be arranged such that individual pages are in
`sequence when folding occurs.
`Printing devices that produce output in response to page
`description language input are widely used. Apage descrip-
`tion language (PDL) is a high level language for describing
`objects to be displayed by an output device. A printing
`device may receive page description data in the form of a
`PDL file. In order to produce a finished sheet, the printing
`device interprets the data contained in the PDL file, renders
`objects within the data into bitmaps, and after all objects for
`the sheet are rendered, prints the sheet.
`Imposition is the pre-printing process of arranging the
`pages for a sheet to achieve a proper sequence or position of
`each page relative to other pages. Imposition is performed to
`facilitate post-printing processes. These processes include
`fold and cut operations followed by some form of binding.
`Conventional imposition processes are executed on a com-
`puter workstation prior to the printing process. An imposi-
`tion process operates on one or more PDL files or image data
`files and layout information for a given sheet. The PDL files
`are representative of the various pages (or sub-pages) of
`content to be displayed on a given sheet. The layout infor-
`mation describes how the pages are to be arranged to achieve
`the desired output
`result. The output of an imposition
`process is a single PDL file that includes all the data required
`(including external references if any) to print the sheet by a
`printing device.
`
`SUMMARY
`
`In general, in one aspect, the invention features a method
`imposing and rendering image data for a surface to be
`printed by a printing device. The method includes receiving
`one or more page description files defining a plurality of
`pages to be printed on a surface of a media sheet. Ajob ticket
`is received defining the layout of the pages on the surface.
`An ordered list of objects is constructed for the surface from
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`is ordered according to layers.
`the job ticket. The list
`Thereafter, data from the page description files is interpreted
`resulting in display data. The display data is rendered in
`layer order to create pixelmaps. The pixelmaps are printed
`on the surface of the media sheet.
`Preferred embodiments of the invention include one or
`
`more of the following features. The page description files are
`PDF files. All page description files received are translated
`into PDF files prior to rendering. The printing device is
`selected from the group of an imagesetter, a digital press, a
`printing press and a plate setter.
`is built by
`If no job ticket
`is received, a job ticket
`processing a user defined signature describing the position
`of each page on the media sheet and determining the
`numbers and size of pages to be printed from each page
`description file received. A job ticket is created by mapping
`the page size into the signature to determine a list of objects
`to be printed for each surface of the media sheet.
`The step of interpreting includes dividing the display data
`into bands and storing the display data in a display list
`memory until all the pages are interpreted. The layer ordered
`list of objects may be sorted according to band order.
`The method further includes verifying the availability of
`all resources called in each page description file received. A
`proof may be printed on a second printing device prior to
`printing on the media sheet. A visual representation of the
`sheet may be displayed on a visual output device prior to
`printing on the media sheet.
`the invention features a
`In general,
`in another aspect,
`method printing a sheet by a printing device including
`receiving one or more files including one or more pages of
`content for display on the sheet. The files are stored in a file
`storage device. A job ticket is received including a layout
`and document tree. The document tree defines which pages
`in the files are to be printed on the sheet. The layout tree
`defines the location on the sheet for each page in the
`document tree. An object list is derived from the job ticket
`including an entry for each page to be printed on the sheet.
`Entries in the object list are arranged in layer order and each
`entry includes a pointer to a page in the files stored in the file
`storage device. Objects are interpreted from the object list in
`layer order including retrieving associated pages from the
`file storage device and interpreting page data to create
`display data. The display data is stored in display lists. When
`all the objects from the object list have been interpreted, the
`display list data is rendered to create pixelmaps which are
`printed on the sheet.
`the invention features a
`In general,
`in another aspect,
`method rendering an image on a sheet of media in an
`imagesetter configured to receive a page description lan-
`guage description of a plurality of pages to be printed on the
`sheet and having a display list memory for storing display
`list objects. The method includes deriving an ordered list of
`objects from user defined layout information for the sheet.
`The page description language input is interpreted according
`to a layer order defined by the ordered list into display list
`objects stored in the display list memory. Thereafter, the
`display list data is rendered.
`the invention features a
`In general,
`in another aspect,
`method an imposition method for defining the layout of a
`sheet to be printed by a printing device. The sheet includes
`one or more pages of content defined by one or more page
`description files. The method includes receiving one or more
`page description files defining one or more pages for display
`on the sheet and user input defining the layout of the pages
`on the sheet. A layout for the sheet is imposed without
`
`

`

`6,046,818
`
`3
`interpreting the received page description files and without
`creating an intermediary page description file including the
`page description files. The imposing step includes building
`a job ticket having an ordered list of objects to be rendered
`on the sheet. The job ticket is derived from the user layout
`input and provided along with the received page description
`files to a printing device for printing of the sheet.
`Preferred embodiments of the invention include one or
`
`more of the following features. The step of imposing
`includes receiving a user defined signature defining the
`layout of the pages to be printed on the sheet. The step of
`building a job ticket includes processing a user defined
`signature describing the position of each page on the sheet,
`determining the numbers and size of pages to be printed
`from each page description file received and creating a job
`ticket by mapping the page size into the signature to deter-
`mine a list of objects to be printed for each surface of the
`sheet.
`
`the invention features a
`In general, in another aspect,
`method of printing a sheet by a printing device where the
`sheet includes one or more pages of content defined by one
`or more page description files. The method includes receiv-
`ing one or more page description files defining one or more
`pages for display on the sheet and user input defining the
`layout of the pages on the sheet. A layout for the sheet is
`imposed without interpreting the received page description
`files and without creating an intermediary page description
`file including original page description file data. The impos-
`ing step includes building a job ticket having an ordered list
`of objects to be rendered on the sheet. Data from the page
`description files is interpreted resulting in display data. The
`display data is rendered in layer order to create pixelmaps
`and printed on the sheet.
`the invention features a
`In general, in another aspect,
`printing device configured to receive a plurality of page
`description language descriptions of pages to be printed on
`a sheet. The printing device includes an assembler connected
`to receive a job ticket including layout and page identifier
`information. The assembler operates to generate an ordered
`list of objects to be printed by the printer on the sheet. An
`interpreter is connected to receive page description language
`input and the ordered list and operates to generate display
`list objects for each object in the ordered list and cause
`display list objects to be stored in a display list memory. A
`rendering engine is coupled to the display list memory and
`operates to receive display list objects stored in the display
`list memory and to render the objects. A print engine
`receives the rendered objects and prints them on the sheet.
`Preferred embodiments of the invention include one or
`
`more of the following features.
`The printing device includes a layout generation utility
`that receives as an input a user defined signature describing
`the position of each page on the sheet and operates to
`determine the numbers and size of pages to be printed from
`each page description language description received. The
`layout generation utility creates a job ticket by mapping the
`page size into the signature to determine a list of objects to
`be printed for each surface of the sheet.
`The printing device includes a sorting mechanism for
`sorting the ordered list of objects according to band order.
`The printing device includes a resource verifier operating to
`verifying the availability of all resources called in each page
`description language description received. A proof print
`routine is included operating to cause the printing of a proof
`on a second printing device prior to printing on the sheet. An
`on-screen display routine is included operating to cause the
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`display of a visual representation of the sheet on a visual
`output device prior to printing on the sheet.
`Among the advantages of the invention are one or more
`of the following. File storage requirements are minimized in
`the development of layout
`information. Original source
`material is operated on in the rendering process after a layout
`is developed thereby saving processing time by not requiring
`the transformation of the original source material to an
`intermediary form. File transfer requirements are minimized
`because the layout mechanism is not required to consume
`(interpret) the original source material or required to pro-
`duce an output which includes all of the original source
`material. Late stage editing of the layout and of source
`material may be readily accomplished without having to
`repeat the imposition process for a given sheet.
`Other features and advantages of the invention will
`become apparent from the following description and from
`the claims.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram of a printer according to the
`invention.
`
`FIG. 2 is functional block diagram of a job ticket accord-
`ing to the invention.
`FIGS. 361—36 show an example of a job ticket for use with
`the present invention.
`FIG. 4 is a flow chart for a rendering and marking process
`for a raster output device including imposition in the RIP
`process according to the invention.
`
`DETAILED DESCRIPTION
`
`The present invention may be embodied in any output
`device that receives page description data and produces from
`the data visual output, for example on a piece of paper. An
`output device may include a prepress routine for implement-
`ing layout functions, a raster image processor for producing
`pixelmaps (or bitmaps depending on the depth of the result-
`ant data) from received data and one or more engines for
`producing images on varied output media. The invention has
`particular applicability to printing presses,
`imagesetters,
`plate setters, digital presses and the like and will be
`described in terms of an embodiment in such a device, which
`will be referred to simply as an imagesetter.
`Referring to FIG. 1, an imagesetter 16 receives input data
`files, from a computer 12, for example, and turns the input
`data files into marks on a piece of paper by sending signals
`to a print engine 34. The imagesetter 16 is configured to
`receive page description language input data files and layout
`information from one or more users and process it as will be
`described later. One suitable page description language is
`the Portable Document Format available from Adobe Sys-
`tems Incorporated of San Jose, Calif. Another suitable page
`description language is the PostScript® language available
`from Adobe Systems Incorporated of San Jose, Calif. The
`PostScript
`language is described in Adobe Systems
`Incorporated, Adobe PostScript® Language Reference
`Manual, Addison-Wesley (2d ed., @1990). Another suitable
`page description language is the PCL language available
`from Hewlett-Packard Company of Palo Alto, Calif. Another
`page description language is CT and LW by Scitex America,
`Inc., of Bedford Mass. Apage description language file sent
`to an imagesetter specifies objects to be displayed and
`related information. A PostScript object can, for example,
`include a pixelmap defining a pattern of pixels to be
`displayed, or it can reference an outline curve defining in
`
`

`

`6,046,818
`
`5
`mathematical terms a shape to be marked. The object may
`also include other rasterizing information such as font and
`size.
`
`The imagesetter 16 includes an interface 24, file storage
`25, a digital data processor, random access memory 28, and
`print engine 34. It also includes read-only memory, I/O
`interfaces, and data transfer paths and busses, none of which
`are shown, for storing and transferring data in support of the
`functions described below.
`
`Interface 24 regulates the flow of information between
`imagesetter 16 and computer 12 according to a standard
`communication protocol. Alternatively,
`interface 24 may
`support a file transfer protocol for sharing files between
`computers in networks on a intranet or internet. Interface 24
`may include a buffer for buffering data received from
`computer 12 in the event imagesetter 16 is not ready to
`process or otherwise unable to manipulate the received data.
`The buffer may be part of file storage 25.
`File storage 25 is a mass storage device such as hard disk
`or disk array for storing files received from computer 12.
`Each file includes one or more objects associated with a
`given sheet to be outputted by the imagesetter. Imagesetter
`16 may store all the files associated with a particular sheet
`in file storage 25 prior to rendering data objects associated
`with a given file. Alternatively, imagesetter 16 may begin
`render operations prior to the receipt of all page description
`files based on the availability of the job ticket and the receipt
`of the page description file including pages associated with
`the first object to be interpreted based on an ordered list. The
`ordered list and the interpretation process are described in
`greater detail below.
`The processor may be a general or special purpose
`microprocessor operating under control of computer pro-
`gram instructions executed from a memory. In the embodi-
`ment illustrated in FIG. 1, the processor includes a number
`of special purpose sub-processors including an layout gen-
`eration utility 50, an assembler 52, interpreter 54 and a raster
`image processor (RIP) 56. Each sub-processor may be a
`separate circuit able to operate substantially in parallel with
`the other sub-processors. Some or all of the sub-processors
`may be implemented as computer program processes
`(software) tangibly stored in a memory to perform their
`respective functions. These may share an instruction
`processor, such as a general purpose integrated circuit
`microprocessor, or each sub-processor may have its own
`microprocessor for executing instructions. Alternatively,
`some or all of the sub-processors may be implemented in an
`ASIC (application specific integrated circuit). In addition,
`the sub-processors may be distributed or may form a part of
`computer 12.
`Layout generation utility 50 processes input files received
`from computer 12 prior to storage in file storage 25. The
`processing may include layout functions, such as page
`sizing,
`resource checking,
`file translation, on-screen
`viewing, and job ticket generation.
`Input files may be of varying formats and include PDL
`files, PCL files, Portable Document Format (PDF) files,
`image files, and the like. Layout generation utility 50 may
`determine the page size for each file received (in terms of
`physical length and width that the page is to occupy on a
`printed sheet). The page size information may be coupled
`with layout information (signature) received from a user to
`create a job ticket as will be described in greater detail
`below.
`
`Layout generation utility 50 may include a resource
`checker for determining the resources required for printing
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`a particular page. The resource checker enables early detec-
`tion of error conditions,
`for example Postscript errors,
`thereby freeing system resources early in a printing process
`in the event of an error condition. Examples of resources
`include fonts, halftones, color rendering dictionaries, and
`open prepress interface (OPI) files. In addition, the resource
`checker may check all reference calls embedded within a file
`to assure the objects that are called are available to imag-
`esetter 16.
`
`Layout generation utility 50 may include an on-screen
`preview function or proof print function. The on-screen
`preview function displays a visual representation of a sheet
`to be printed on a visual output display (not shown) coupled
`to imagesetter 16. The display of the sheet on a visual
`display prior to printing allows a user to adjust
`layout
`parameters as required prior to printing a final image on the
`media. The on-screen preview function may be invoked
`before or after rendering the original source page description
`files, resulting in either shadow boxes or actual rendered
`images to be displayed on the visual display device. The
`proof print function prints a visual representation on a
`desktop printer, plotter or other printing device (not shown)
`coupled to imagesetter 16 prior to a final print on imagesetter
`16. Again, display of the sheet in printed form on a lower
`resolution output display device prior to final printing allows
`a user to adjust
`layout parameters as required prior to
`printing a final image on the media. Layout generation utility
`50 may also include a data translator for converting files
`from one format
`(an original equipment manufacturer
`(OEM) proprietary format, for example) to a second format
`(PDF, for example) which may be interpreted by interpreter
`54. The data translator is invoked for all such files and the
`
`resultant files may be stored in file storage 25.
`Layout generation utility 50 may receive order informa-
`tion and signature data from a user defining the ordering of
`files to be printed and a signature. A signature includes
`media information, transformation matrix information, clip-
`ping information, fold, cut and bind parameters and RIP
`parameters. Upon receipt of the ordering information, layout
`generation utility 50 may be invoked to map the file infor-
`mation (page size) into the signature to generate a list of
`sheets and surfaces to be processed. This list may be used to
`create a job ticket for transfer to assembler 52. Alternatively,
`a job ticket may be generated by a routine executed on an
`external computer and may be provided directly to assem-
`bler 52. Preps by ScenicSoft Corporation of Everett, Wash.
`is an example of a layout generation utility application
`which may be used to create a job ticket. Job tickets are
`discussed in greater detail below in association with FIGS.
`3 and 4.
`
`Assembler 52 processes user requests received in the form
`of a job ticket and generates an ordered list of objects to be
`processed by interpreter 54 and RIP 56. In one embodiment,
`the list is ordered based on a layer order. That is, objects that
`are to be printed in the same layer are grouped, and the
`layers are ordered according to a user preference for the
`printing of the individual layers in the final output. Assem-
`bler 52 receives as an input a job ticket from either computer
`12 or layout generation utility 50 and outputs an object list
`53 to interpreter 54 for processing.
`Referring now to FIG. 2, a job ticket 200 describes the
`layout of pages for one or more sheets in a given job. The
`layout defines the specific placement of pages on a sheet in
`view of media considerations (including the type of media
`and thickness of sheets) and in accordance with user selected
`post printing requirements such as folding, cutting, stacking
`and binding operations. Job ticket 200 may be generated by
`
`

`

`6,046,818
`
`7
`computer 12 and includes a header 202, media information
`204, a document tree 206 and a layout tree 208. Header 202
`identifies a particular job ticket. Media information 204
`includes information for identifying a media type including
`the dimensions of the target media. Document tree 206
`includes a list of files and respective pages in the files which
`are to be placed in the final printed sheet. Layout tree 208
`includes a list of layout objects which define exactly where
`and how a particular document object (page or file) in
`document tree 206 is to be placed on the media. As was
`described above, a job ticket may be provided from com-
`puter 12, or generated by a layout generation utility resident
`in or external to imagesetter 16. In one embodiment, job
`ticket 200 is coded such that the various sub-components of
`the job ticket are described by one or more objects.
`Referring now to FIGS. 3a—3e, a detailed example of a job
`ticket 300 for use with an imagesetter is shown. Job ticket
`300 includes a plurality of objects 301. Header 202 includes
`a general header 301 and a header object 302 that points to
`a content object 304 and an audit object 306. Audit object
`306 includes the date and author of the particular job ticket.
`Content object 304 includes a document object 308 and a
`layout object 310 which define the document and layout
`trees respectively for job ticket 300.
`Document object 308 includes a single file object 312. For
`this particular job ticket, single file object 312 represents the
`entire document tree 206 for job ticket 300. Alternatively, a
`plurality of file objects can be defined in a job ticket, each
`including one or more pages of content (or portions of
`pages) to be displayed in a final image.
`Layout object 310 includes a signature object 314. Sig-
`nature object 314 includes a sheet object 316 and media
`source object 318. Media source object 318 indicate

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket