DE10012521A1 - Method for compressing printed data e.g. for electronic printers, involves converting graphical object into simplified super-positioning-free objects - Google Patents

Method for compressing printed data e.g. for electronic printers, involves converting graphical object into simplified super-positioning-free objects

Info

Publication number
DE10012521A1
DE10012521A1 DE2000112521 DE10012521A DE10012521A1 DE 10012521 A1 DE10012521 A1 DE 10012521A1 DE 2000112521 DE2000112521 DE 2000112521 DE 10012521 A DE10012521 A DE 10012521A DE 10012521 A1 DE10012521 A1 DE 10012521A1
Authority
DE
Germany
Prior art keywords
recording
print data
values
page
objects
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE2000112521
Other languages
German (de)
Other versions
DE10012521C2 (en
Inventor
Dieter Koch
Ingo Roeschke
Joerg Mueller
Lutz Markward
Joerg Krause
Dirk Reinhold
Wilfried Soeker
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Heidelberger Druckmaschinen AG
Original Assignee
Heidelberger Druckmaschinen AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Heidelberger Druckmaschinen AG filed Critical Heidelberger Druckmaschinen AG
Priority to DE2000112521 priority Critical patent/DE10012521C2/en
Publication of DE10012521A1 publication Critical patent/DE10012521A1/en
Application granted granted Critical
Publication of DE10012521C2 publication Critical patent/DE10012521C2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • H04N1/411Bandwidth or redundancy reduction for the transmission or storage or reproduction of two-tone pictures, e.g. black and white pictures
    • H04N1/413Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information
    • H04N1/419Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information in which encoding of the length of a succession of picture-elements of the same value along a scanning line is the only encoding step

Abstract

Run-length method for printing involves programmed page-writing (1) of the contents of the print page which is processed by an interpreter (3) in order to generate a display list (4) of graphical objects, the run length in the compressed data format (10) is limited to integral number multiples of a given number (s).

Description

Die Erfindung bezieht sich auf das Gebiet der elektronischen Reproduktionstech­ nik und betrifft ein Verfahren zur Komprimierung von Druckdaten für elektronische Drucker oder Belichter zur pixel- und zeilenweisen Aufzeichnung von Druckseiten.The invention relates to the field of electronic reproduction technology nik and relates to a method for compressing print data for electronic Printer or imagesetter for the pixel-by-line recording of printed pages.

In der Reproduktionstechnik werden Druckvorlagen für Druckseiten erzeugt, die alle zu druckenden Elemente wie Texte, Grafiken und Bilder enthalten. Für den farbigen Druck wird für jede Druckfarbe eine separate Druckvorlage erzeugt, die alle Elemente enthält, die in der jeweiligen Farbe gedruckt werden. Für den Vier­ farbdruck sind das die Druckfarben Cyan, Magenta, Gelb und Schwarz (CMYK). Die nach Druckfarben separierten Druckvorlagen werden auch Farbauszüge ge­ nannt. Die Druckvorlagen werden in der Regel gerastert (Screening) und mit ei­ nem Drucker auf Papier aufgezeichnet oder auf Filme belichtet, die dann zur Her­ stellung von Druckformen für das Drucken hoher Auflagen (Druckplatten, Druckzy­ linder) weiter verarbeitet werden. Alternativ können die Druckvorlagen in speziel­ len Recordern auch direkt auf Druckplatten belichtet werden. Zum Prüfen des In­ halts und der Farben der Druckseiten werden Druckvorlagen in Proofrecordern mit einem Aufzeichnungsprozeß belichtet, der in einer farbigen Ausgabe den Druck­ prozeß simuliert.In reproduction technology, print templates are created for printed pages that contain all elements to be printed such as texts, graphics and images. For the colored printing, a separate print template is created for each ink contains all elements that are printed in the respective color. For the four Color printing is the printing inks cyan, magenta, yellow and black (CMYK). The print templates separated by printing inks are also color separations called. The print templates are usually rasterized (screening) and with egg nem printer recorded on paper or exposed on films, which are then used Provision of printing forms for printing long runs (printing plates, printing cycles linder) are processed further. Alternatively, the print templates in special len recorders can also be exposed directly on printing plates. To check the In and the colors of the printed pages are included in proof templates in proof recorders a recording process exposed in a colored output the print process simulated.

Die Druckdaten einer zu reproduzierenden Druckseite beschreiben die Seite in Form von Grauwerten, wenn die Druckseite in Schwarzweiß gedruckt wird, bzw. in Form von Farbwerten, wenn es sich um einen farbigen Druck handelt. Wird die Druckseite in den vier Druckfarben CMYK gedruckt, so werden die optischen Dichten dieser Druckfarben in jedem Bildpunkt durch vier Farbwerte beschrieben. Bei einem Schwarzweiß-Druck genügt entsprechend ein Grauwert je Bildpunkt. Die Farbwerte einer Druckfarbe werden auch als Farbauszug bezeichnet. Wenn die Druckseite in Form von digitalen Druckdaten beschrieben wird, werden z. B. für jeden Bildpunkt vier Bytes entsprechend den vier Farbauszugswerten erzeugt. Die Farbauszugswerte haben dann eine von 256 möglichen Dichtestufen zwischen 0 und 255. Die Farbauszugsdaten einer Druckfarbe können deshalb auch als "Schwarzweiß-Seite" aufgefaßt werden, deren "Grauwerte" in jedem Bildpunkt die Dichtestufe der zugehörigen Druckfarbe angeben.The print data of a print page to be reproduced describe the page in Form of gray values if the printed page is printed in black and white, or in Form of color values if it is a colored print. Will the Print page printed in the four printing colors CMYK, so the optical The density of these inks in each pixel is described by four color values. With black and white printing, one gray value per pixel is sufficient. The color values of a printing ink are also called color separation. If the print page is described in the form of digital print data, z. B. for each pixel generates four bytes corresponding to the four color separation values. The  Color separation values then have one of 256 possible density levels between 0 and 255. The color separation data of a printing ink can therefore also as "Black and white page" can be understood, the "gray values" of each pixel Specify the density level of the associated printing ink.

Fig. 1 zeigt den nach dem Stand der Technik überwiegend verwendete Arbeitsab­ lauf bei der Erzeugung und Aufzeichnung von Druckdaten für Druckseiten, die in der Seitenbeschreibungssprache PostScript bzw. PDF beschrieben sind. Die PostScript-Daten 1 werden einem Raster-Image-Prozessor 2 (= RIP) zugeführt, der ein speziell für diese Aufgabe optimierter Rechner sein kann oder ein Pro­ gramm auf einem Standardrechner. Im Normalfall werden in einem Vorprozeß se­ parierte PostScript-Daten 1 für jeden Farbauszug einer Druckseite erzeugt und an den RIP 2 weitergegeben (separated PostScript). Alternativ kann eine farbige Druckseite auch in einem einzigen PostScript-Datenbestand erzeugt werden (composite PostScript). Im folgenden wird der Fall der separierten PostScript- Daten 1 weiter erläutert. Fig. 1 shows the state of the art mainly used workflow in the generation and recording of print data for printed pages, which are described in the page description language PostScript or PDF. The PostScript data 1 are fed to a raster image processor 2 (= RIP), which can be a computer specially optimized for this task or a program on a standard computer. Normally, separated PostScript data 1 are generated for each color separation of a printed page in a pre-process and forwarded to the RIP 2 (separated PostScript). Alternatively, a colored print page can also be generated in a single PostScript database (composite PostScript). The case of the separated PostScript data 1 is explained further below.

In einem ersten Schritt werden die PostScript-Daten 1 eines Farbauszugs durch einen Interpreter 3 analysiert und in eine Folge von einfachen grafischen Objekten zerlegt. Dazu wird die Druckvorlage in horizontale Streifen (Bänder) geteilt, die nacheinander bearbeitet werden. Die einfachen grafischen Objekte werden vom Interpreter in einem Datenformat ausgegeben, das als Display-Liste 4 (Fig. 1) be­ zeichnet wird. Das Datenformat beschreibt für jedes einfache Objekt seine geo­ metrische Form und mit welchem Grauwert es gefüllt ist. In der Display-Liste 4 erscheinen die Objekte nacheinander in der Reihenfolge, in der die zugehörigen Seitenelemente in den PostScript-Daten beschrieben sind. Dabei können Objekte, die in der Display-Liste 4 später erscheinen, Objekte, die früher in der Display- Liste 4 erschienen sind, teilweise oder ganz überdecken.In a first step, the PostScript data 1 of a color separation is analyzed by an interpreter 3 and broken down into a sequence of simple graphic objects. To do this, the artwork is divided into horizontal strips (tapes) that are processed one after the other. The simple graphical objects are output by the interpreter in a data format which is referred to as display list 4 ( FIG. 1). For every simple object, the data format describes its geometric shape and the gray value with which it is filled. In the display list 4 , the objects appear one after the other in the order in which the associated page elements are described in the PostScript data. Here, objects that appear in the display list 4 later, objects that are previously appeared in the display list 4, partially or completely overlap.

Im RIP 2 wird die Display-Liste 4 in einem weiteren Schritt einem Rastergenerator 5 zugeführt, der die Objekte der Display-Liste 4 nacheinander in mit Rasterpunkten gefüllte Flächen umsetzt und als gerasterte Druckdaten 6 in einen Druckdaten- Speicher 7 schreibt. Die Rasterpunktgröße wird dabei je nach dem Grauwert des Objekts in der Display-Liste 4 variiert. Die gerasterten Druckdaten 6 von Objekten, die später in der Display-Liste 4 erscheinen, überschreiben jeweils die entspre­ chenden Bereiche des Druckdaten-Speichers 7. Nachdem alle Objekte eines Ban­ des vom Rastergenerator 5 gerastert und in den Druckdaten-Speicher 7 geschrie­ ben wurden, wird der Inhalt des Druckdaten-Speichers 7 als Steuersignalwerte an den Drucker bzw. Belichter 8 weitergeleitet und dort aufgezeichnet.In a further step in the RIP 2 the display list 4 is fed to a raster generator 5 which converts the objects of the display list 4 one after the other into areas filled with raster points and writes them into a print data memory 7 as rasterized print data 6 . The grid point size is varied depending on the gray value of the object in the display list 4 . The rasterized print data 6 of objects that appear later in the display list 4 each overwrite the corresponding areas of the print data memory 7 . After all objects of a band have been rasterized by the raster generator 5 and written into the print data memory 7 , the content of the print data memory 7 is forwarded as control signal values to the printer or imagesetter 8 and recorded there.

Durch die Überlappung der Objekte in der Display-Liste 4 und die wiederholte Ra­ sterung von Teilflächen im Druckdaten-Speicher 7, die sich überdecken, ist die Zeit, die der RIP 2 bei der bisherigen Arbeitsweise für die Bearbeitung und Ausga­ be eines Bandes an den Drucker 8 benötigt, variabel und nicht vorhersehbar. Sie hängt davon ab, wieviele Objekte in einem Band vorkommen und zu welchem Anteil sie sich überdecken. Bei der hohen Geschwindigkeit moderner Drucker und Belichter kann somit bei dem bisherigen Arbeitsablauf zur Erzeugung von Druck­ daten aus PostScript-Daten nicht immer sichergestellt werden, daß der RIP 2 die Steuersignalwerte für den Drucker 8 kontinuierlich mit der durch die Druckerge­ schwindigkeit vorgegebenen Datenrate liefern kann.Due to the overlap of the objects in the display list 4 and the repeated rasterization of partial areas in the print data memory 7 , which overlap, the time that the RIP 2 in the previous mode of operation for processing and outputting a tape is Printer 8 needed, variable and unpredictable. It depends on how many objects appear in a volume and to what extent they overlap. At the high speed of modern printers and imagesetters, it can thus not always be ensured in the previous workflow for generating print data from PostScript data that the RIP 2 can continuously supply the control signal values for the printer 8 at the data rate specified by the printer speed.

Eine bekannte Lösung dieses Problems ist, einen Start/Stop-Betrieb des Druckers bzw. Belichters vorzusehen, wobei die Aufzeichnung der Druckdaten beim Aus­ bleiben der Steuersignalwerte solange unterbrochen wird, bis der RIP 2 wieder Steuersignalwerte liefert, und dann die Aufzeichnung ansatzlos am Ort der Unter­ brechung fortgesetzt wird. Die mechanische und optische Konstruktion eines Druckers bzw. Belichters, der Druckdaten im Start/Stop-Betrieb aufzeichnen kann, ohne daß die Start/Stop-Stellen in der fertigen Aufzeichnung zu sehen sind, ist aufwendiger und teurer als für einen Drucker, der kontinuierlich aufzeichnet. Au­ ßerdem benötigt das Stoppen und Wiederanlaufen der Aufzeichnungseinheit für jeden Start/Stop-Vorgang zusätzliche Zeit, so daß die Aufzeichnung dadurch er­ heblich länger dauern kann als bei einem kontinuierlichen Betrieb. A known solution to this problem is to provide a start / stop operation of the printer or imagesetter, the recording of the print data being interrupted when the control signal values remain off until the RIP 2 again delivers control signal values, and then the recording is carried out seamlessly at the location of the Interruption continues. The mechanical and optical design of a printer or imagesetter, which can record print data in the start / stop mode without the start / stop locations being visible in the finished record, is more complex and expensive than for a printer which records continuously . In addition, the stopping and restarting of the recording unit requires additional time for each start / stop operation, so that the recording can take considerably longer than in a continuous operation.

Andererseits erfordert ein RIP, der PostScript-Daten für Druckseiten unabhängig von der Komplexität des Seiteninhalts jeweils so schnell in Druckdaten umsetzen kann, daß er mit der Aufzeichnungsgeschwindigkeit eines kontinuierlich arbeiten­ den Druckers bzw. Belichters immer Schritt halten kann, sehr schnelle Prozesso­ ren und große Speicher und wird dadurch ebenfalls teuer.On the other hand, a RIP that requires PostScript data for printed pages independently quickly convert from the complexity of the page content into print data can work continuously at the recording speed of one the printer or imagesetter can always keep pace, very fast process ren and large memory and is also expensive.

Auch die bekannte Lösung, den Druckdaten-Speicher 7 im RIP so groß zu ma­ chen, daß er die Druckdaten einer ganzen Druckseite zwischenspeichern kann (Page Buffer), ist nicht praktikabel, da der Speicher dann sehr groß und teuer wird. Für eine in vier Druckfarben gedruckte Druckseite der Größe 12 inch × 18 inch und eine Auflösung von 600 dpi (dpi = dots per inch) ergibt sich eine Puffergröße von 297 MByte. Bei einer Aufzeichnungszeit von 8 Sekunden für die Druckseite muß der Page Buffer mit ca. 37 MBytes ausgelesen werden können.The known solution to make the print data memory 7 in the RIP so large that it can buffer the print data of an entire print page (page buffer) is not practical since the memory then becomes very large and expensive. A buffer size of 297 MByte results for a print page of size 12 inch × 18 inch and a resolution of 600 dpi (dpi = dots per inch) printed in four printing colors. With a recording time of 8 seconds for the print page, the page buffer must be able to be read out with approx. 37 Mbytes.

Fig. 2 zeigt einen weiteren Lösungsweg für die Interpretation von PostScript-Daten und die Erzeugung und Aufzeichnung von Druckdaten, der in der Patentveröffent­ lichung WO 96/31837 beschrieben ist. Die PostScript-Daten 1, die den Inhalt der Druckseite beschreiben, werden dem RIP 2 zugeführt, wo sie in einem ersten Schritt vom Interpreter 3 analysiert und in eine Display-Liste 4 umgewandelt wer­ den, wie es zuvor bereits erläutert wurde. In einem zweiten Schritt wird aus der Display-Liste 4 von einem sogenannten Delta-Listen Generator 9 eine überlage­ rungsfreie und komprimierte Matrix von Grauwerten (= Delta-Liste 10) erzeugt und z. B. auf einem Plattenspeicher 11 gespeichert. Für die Aufbereitung der Delta- Liste 10 werden die Überlagerungen der Objekte in der Display-Liste 4 geeignet eliminiert und anschließend die Grauwerte der Bildpunkte mittels einer speziellen Lauflängencodierung komprimiert. Für jeden Bildpunkt gibt es in der Delta-Liste 10 nur einen Grauwert. Zu einem späteren Zeitpunkt werden die gespeicherten Delta- Listen der Druckseite, d. h. die verschiedenen Farbauszüge, nacheinander vom Plattenspeicher 11 abgerufen, dekomprimiert, vom Rastergenerator 5 in gerasterte Druckdaten 6 umgewandelt und im Drucker 8 aufgezeichnet. Die Rasterung der Delta-Listen 10 geschieht schritthaltend mit der Druckergeschwindigkeit, indem z. B. eine spezielle Hardwareeinheit als Rastergenerator verwendet wird. Fig. 2 shows a further solution for the interpretation of PostScript data and the generation and recording of print data, which is described in the patent publication WO 96/31837. The PostScript data 1 , which describe the content of the printed page, are fed to the RIP 2 , where they are analyzed in a first step by the interpreter 3 and converted into a display list 4 , as has already been explained above. In a second step, a display-free and compressed matrix of gray values (= delta list 10 ) is generated from the display list 4 by a so-called delta list generator 9 and z. B. stored on a disk storage 11 . For the preparation of the delta list 10 , the overlaps of the objects in the display list 4 are suitably eliminated and the gray values of the pixels are then compressed using a special run length coding. There is only one gray value for each pixel in the delta list 10 . At a later point in time, the stored delta lists of the print page, ie the different color separations, are successively called up from the disk memory 11 , decompressed, converted into rasterized print data 6 by the raster generator 5 and recorded in the printer 8 . The rasterization of the delta lists 10 takes place in keeping with the pace of the printer by z. B. a special hardware unit is used as a raster generator.

Auch mit dem Verfahren nach der WO 96/31837 können in bestimmten Anwen­ dungsfällen die Druckdaten nicht schnell genug dekomprimiert und gerastert wer­ den, um mit der Druckergeschwindigkeit schrittzuhalten. Das ist beispielsweise der Fall, wenn die Rasterung aus Kostengründen nicht mit einer speziellen Hardware­ einheit ausgeführt werden soll sondern mit einem Rechnerprogramm oder wenn es sich um eine Mehrstufenrasterung handelt, d. h. eine Rasterung, die z. B. 4-Bit Aufzeichnungswerte für jeden aufzuzeichnenden Punkt erzeugt, mit denen das Druckwerk angesteuert wird. Dann ergeben sich beim Dekomprimieren und Ra­ stern Verzögerungen durch die Notwendigkeit, 4-Bit Werte in den Byte-orientierten Speicherzellen des Rechners zu packen und zu entpacken, die den Prozeß zu sehr verlangsamen.The method according to WO 96/31837 can also be used in certain applications cases, the print data is not decompressed and rasterized quickly enough to keep up with printer speed. For example, this is the Case when the screening is not with special hardware for cost reasons unit should be executed but with a computer program or if it is a multi-stage screening, d. H. a grid that z. B. 4-bit Generated recording values for each point to be recorded, with which the Printing unit is controlled. Then when decompressing and Ra arise stern delays due to the need to use 4-bit values in the byte-oriented Packing and unpacking the computer's memory cells, the process too very slow down.

Es ist daher die Aufgabe der vorliegenden Erfindung, ein Verfahren anzugeben, mit dem eine komprimiertes und überlagerungsfreies Datenformat für die Druck­ daten mit geringem Speicheraufwand erzeugt wird und mit hoher Geschwindigkeit während der Aufzeichnung auf dem Drucker dekomprimiert und gerastert werden kann.It is therefore the object of the present invention to specify a method with which a compressed and overlay-free data format for printing data is generated with little storage effort and at high speed decompressed and rasterized while recording on the printer can.

Diese Aufgabe wird durch die Verwendung eines neuen Komprimierungsverfah­ rens gelöst, das mit Vorteil bei der Aufzeichnung von Druckdaten in Druckern oder Belichtern einsetzbar ist, die eine hohe Aufzeichnungsgeschwindigkeit haben und die eine Anzahl verschiedener Graustufen je Druckpunkt bzw. Belichtungspunkt aufzeichnen können.This task is accomplished through the use of a new compression method rens solved, which is advantageous when recording print data in printers or Imagesetters can be used that have a high recording speed and which are a number of different gray levels per pressure point or exposure point can record.

Die Erfindung wird nachfolgend anhand der Fig. 1 bis 4 näher beschrieben.The invention is described below with reference to FIGS. 1 to 4.

Es zeigen: Show it:  

Fig. 1 den Arbeitsablauf bei der Erzeugung von Druckdaten aus PostScript- Daten (Stand der Technik), Fig. 1 shows the operation in the generation of print data from a PostScript data (prior art),

Fig. 2 den Arbeitsablauf bei der Erzeugung von Druckdaten aus PostScript- Daten mittels der Erzeugung einer komprimierten Delta-Liste (Stand der Technik), Fig. 2 shows the operation in the generation of print data from a PostScript data by means of generating a compressed delta list (prior art)

Fig. 3 ein Rasterverfahren mit gespeicherten Superzellen (Stand der Technik), Fig. 3 is a scanning method with stored supercell (prior art)

Fig. 4 ein Beispiel für die Komprimierung von Lauflängen nach der Erfindung. Fig. 4 shows an example of the compression of run lengths according to the invention.

Das erfindungsgemäße Verfahren wird am Beispiel einer Ausgabe von Druckdaten auf einem schnellen Farbdrucker beschrieben, der die vier Druckfarben CMYK mit einer Auflösung von 600 dpi aufzeichnet und der je Aufzeichnungspunkt und Druckfarbe 16 Dichtestufen aufzeichnen kann. Zur Ansteuerung des Druckwerks werden deshalb 4-Bit Aufzeichnungswerte benötigt, mit denen die 16 möglichen Dichtestufen je Aufzeichnungspunkt und Druckfarbe codiert sind. Im folgenden wird die Aufzeichnung eines Farbauzugs erläutert. Die anderen Farbauszüge wer­ den in gleicher Weise behandelt.The method according to the invention is described using the example of outputting print data on a fast color printer which records the four CMYK printing inks with a resolution of 600 dpi and which can record 16 density levels per recording point and printing ink. To control the printing unit, 4-bit recording values are therefore required, with which the 16 possible density levels per recording point and printing ink are coded. The recording of a color separation is explained below. The other separations are treated in the same way.

Der Arbeitsablauf bei der Erzeugung der Druckdaten erfolgt wie bereits für das Verfahren nach der WO 96/31837 (Fig. 2) beschrieben, d. h. die PostScript- bzw. PDF-Daten einer Druckseite werden durch einen Interpreter 3 in eine Display-Liste 4 umgewandelt, die Display-Liste wird in eine überlagerungsfreie und komprimierte Darstellung 10 umgesetzt und gespeichert. Zur Aufzeichnung der Druckseite wird die komprimierte Darstellung 10 dekomprimiert und vom Rastergenerator 5 in die gerasterten Druckdaten 6 umgesetzt, die in diesem Fall aus 4-Bit Aufzeichnungs­ werten bestehen. Im Unterschied zum Verfahren nach der WO 96/31837 wird bei der vorliegenden Erfindung jedoch ein anderes Komprimierungsverfahren zur Er­ zeugung der komprimierten Darstellung 10 verwendet. The workflow in the generation of the print data takes place as already described for the method according to WO 96/31837 ( FIG. 2), ie the PostScript or PDF data of a print page are converted into a display list 4 by an interpreter 3 , the display list is converted into a superimposed and compressed representation 10 and stored. To record the print page, the compressed representation 10 is decompressed and converted by the raster generator 5 into the rasterized print data 6 , which in this case consist of 4-bit recording values. In contrast to the method according to WO 96/31837, another compression method is used in the present invention for generating the compressed representation 10 .

Da 16 Dichtestufen je Aufzeichnungspunkt nicht ausreichen, um direkt ein Druck­ bild mit genügend feiner Abstufung der Grauwerte bzw. Farbwerte zu erzeugen, ist eine Mehrstufenrasterung erforderlich, die die 8-Bit Grauwerte, die aus der Inter­ pretation der PostScript-Daten hervorgehen und in der komprimierten Darstellung 10 gespeichert sind, in eine für das Auge als genügend feinstufig empfundene Darstellung umsetzt. Dazu kann ein beliebiges der bekannten Rasterverfahren verwendet werden, wie beispielsweise eine amplitudenmodulierte Rasterung oder eine frequenzmodulierte Rasterung. In bekannter Weise werden die Rasterzellen, die jeweils einen Rasterpunkt enthalten, sowohl horizontal als auch vertikal repe­ tiert und aneinander gefügt, um die gesamte Fläche der Druckseite mit Rasterzel­ len zu überdecken. Zweckmäßigerweise werden auch in bekannter Weise zur Vorbereitung der Rasterung Superzellen, die aus vielen Rasterzellen bestehen, im voraus für alle möglichen Graustufen der 8-Bit Grauwerte berechnet und abge­ speichert, so daß bei der eigentlichen Rasterung der Druckseiteninhalte nur noch die entsprechenden Bereiche aus den Superzellen in die gerasterten Druckdaten 6 kopiert zu werden brauchen.Since 16 density levels per recording point are not sufficient to directly generate a print image with a sufficiently fine gradation of the gray values or color values, a multi-level screening is necessary, which is the 8-bit gray values that result from the interpretation of the PostScript data and in which compressed representation 10 are stored, converted into a perceived as sufficiently fine-grained for the eye. Any of the known screening methods can be used for this, such as amplitude-modulated screening or frequency-modulated screening. In a known manner, the halftone cells, each containing a halftone dot, are repeated both horizontally and vertically and joined to one another in order to cover the entire surface of the printed page with halftone cells. Expediently, super cells, which consist of many raster cells, are also calculated and stored in advance for all possible gray levels of the 8-bit gray values in a known manner in preparation for the rasterization, so that only the corresponding areas from the super cells are left in the actual rasterization of the printed page contents need to be copied into the rasterized print data 6 .

Fig. 3 zeigt noch einmal dieses einfache und bekannte Rasterprinzip. Fig. 3a zeigt eine einzelne Rasterzelle 12 von in diesem Beispiel 4 × 4 Aufzeichnungspunkten 13, in denen jeweils ein 4-Bit Aufzeichnungswert gespeichert ist. Dabei sind je­ weils zwei nebeneinander liegende Aufzeichnungswerte in einem Byte des Rech­ nerspeichers enthalten. Fig. 3b zeigt Superzellen 14, die in diesem Beispiel aus jeweils 4 horizontal aneinandergefügten Rasterzellen 12 bestehen. Vier Raster­ zellen je Superzelle wurden hier wegen der einfacheren Darstellung gewählt. In der praktischen Ausführung wählt man wesentlich größere Superzellen, um den Rastervorgang möglichst zu beschleunigen. Für jeden der möglichen Grauwerte von gw = 0 bis gw = 255 gibt es eine Superzelle, in der die 4-Bit Aufzeichnungs­ werte gespeichert sind, mit denen der jeweilige Grauwert in gerasterter Form auf­ gezeichnet werden soll. Fig. 3c zeigt schließlich das Rasterprinzip unter Verwen­ dung der gespeicherten Superzellen. Die Druckseite 15, die mit den Rasterzellen 12 abgedeckt ist, enthält z. B. in der aktuell dekomprimierten und zu rasternden Zeile eine Lauflänge 16 mit einem bestimmten 8-Bit Grauwert gw. Dann wird aus der zu diesem Grauwert gespeicherten Superzelle 14 die der Lauflänge 16 ent­ sprechende Folge 17 von 4-Bit Aufzeichnungswerten entnommen, wobei die rela­ tive Position der Lauflänge 16 zur Lage der Rasterzellen 12 berücksichtigt werden muß. Diese Folge 17 von 4-Bit Aufzeichnungswerten wird dann in die entspre­ chende Position der gerasterten Druckdaten 6 kopiert. Fig. 3 shows this simple and known raster principle again. Fig. 3a shows a single matrix cell 12 of, in this example, 4 × 4 recording dots 13 in each of which a 4-bit value is stored recording. Two adjacent recording values are contained in one byte of the computer memory. FIG. 3b shows the supercell 14, which in this example, each with 4 horizontal butted grid cells 12. Four raster cells per super cell were chosen here because of the simpler representation. In the practical version, much larger super cells are chosen to accelerate the rasterization process as much as possible. For each of the possible gray values from gw = 0 to gw = 255 there is a super cell in which the 4-bit recording values are stored with which the respective gray value is to be recorded in a raster form. Fig. 3c finally shows the raster principle using the stored super cells. The printed page 15 , which is covered with the grid cells 12 contains z. B. in the currently decompressed line to be rasterized a run length 16 with a certain 8-bit gray value gw. Then, the run length is taken 16 ent speaking resulted in 17 of 4-bit values from the recording stored for this gray value supercell 14, wherein the rela tive position of the run-length 16 must be taken into account the location of the grid cells 12th This sequence 17 of 4-bit recording values is then copied into the corresponding position of the rasterized print data 6 .

Bei dem beschriebenen Arbeitsablauf zur Dekomprimierung und Rasterung von als Lauflängen gegebenen Grauwerten gibt es zeitintensive Vorgänge, die den Prozeß so stark verlangsamen, daß er nicht mehr schritthaltend mit der Drucker­ geschwindigkeit ausgeführt werden kann. Zum einen ist die Rasterung relativ kur­ zer Lauflängen ein zeitkritischer Vorgang. Wenn der Drucker z. B. eine 12 inch × 18 inch große farbige Druckseite mit der Auflösung 600 dpi in 8 Sekunden drucken kann, stehen je Aufzeichnungspunkt nur 26 Nanosekunden zur Verfügung, d. h. für eine kurze Lauflänge von beispielsweise 20 Bildpunkten nur ca. 0,5 µs. In einer so kurzen Zeit kann die Rasterung nicht mittels eines Rechnerprogramms durchge­ führt werden, so daß die schritthaltende Rasterung nicht möglich ist, wenn in den Druckdaten zu viele kurze Lauflängen enthalten sind.In the workflow described for decompression and screening of gray values given as run lengths, there are time-consuming processes which slow the process down so much that it can no longer be kept up to speed with the printer speed. On the one hand, the screening of relatively short run lengths is a time-critical process. If the printer e.g. B. can print a 12 inch × 18 inch sized print page with a resolution of 600 dpi in 8 seconds, only 26 nanoseconds are available per recording point, ie for a short run length of 20 pixels, for example, only about 0.5 µs. In such a short time, the screening cannot be carried out by means of a computer program, so that the step-by-step screening is not possible if the print data contain too many short run lengths.

Zur Lösung dieses Problems sieht das erfindungsgemäße Verfahren vor, daß kur­ ze Lauflängen schon bei der Erzeugung der komprimierten Druckdaten 10 gera­ stert werden und die entsprechenden 4-Bit Aufzeichnungswerte in die kompri­ mierten Druckdaten 10 eingefügt werden. Für die Erzeugung der komprimierten Druckdaten 10 steht mehr Zeit zur Verfügung. Die 4-Bit Aufzeichnungswerte für diese kurzen Lauflängen brauchen dann später bei der Dekomprimierung und Ra­ sterung nur in die gerasterten Druckdaten 6 kopiert zu werden, was ausreichend schnell erfolgen kann.To solve this problem, the method according to the invention provides that short run lengths are rastered already during the generation of the compressed print data 10 and the corresponding 4-bit recording values are inserted into the compressed print data 10 . More time is available for generating the compressed print data 10 . The 4-bit recording values for these short run lengths then only need to be copied later into the rasterized print data 6 during decompression and rasterization, which can be done sufficiently quickly.

Die Komprimierung der Daten in dem erfindungsgemäßen Verfahren basiert auf der Lauflängencodierung, die für die speziellen Anforderungen modifiziert wird. Im Datenstrom existieren Kommando-Bytes, die von einer Lauflänge und/oder einem oder mehreren Grauwerten bzw. 4-Bit Aufzeichnungswerten begleitet sein können. Für das Einfügen der bereits vorgerasterten 4-Bit Aufzeichnungswerte von kurzen Lauflängen wird ein Kommando LHD4_UCDATA verwendet, das folgenden Auf­ bau hat:The compression of the data in the method according to the invention is based on the run length coding, which is modified for the special requirements. in the Command stream data exist by a run length and / or a  or several gray values or 4-bit recording values can be accompanied. For inserting the pre-screened 4-bit recording values of short Run lengths, a command LHD4_UCDATA is used, the following up construction has:

LHD4_UCDATA LHD4_UCDATA

Die ersten drei Bits im ersten Byte des Kommandos sind ein Kennzeichen dafür, um welches Kommando es sich handelt. Die folgende 5-Bit-Binärzahl [n nnnn] im ersten Byte gibt an, daß 2 m = ([n nnnn] + 1) × 2 vorgerasterte 4-Bit Aufzeich­ nungswerte folgen. Das Verfahren fügt nur eine gerade Anzahl von vorgerasterten 4-Bit Aufzeichnungswerten in die komprimierten Druckdaten ein, womit das spätere Kopieren dieser Werte in die gerasterten Druckdaten 6 erleichtert und beschleunigt wird, da es Byte-Weise erfolgen kann.The first three bits in the first byte of the command are an indicator of which command it is. The following 5-bit binary number [n nnnn] in the first byte indicates that 2 m = ([n nnnn] + 1) × 2 pre-screened 4-bit record values follow. The method only inserts an even number of pre-rasterized 4-bit recording values into the compressed print data, so that later copying of these values into the rasterized print data 6 is facilitated and accelerated, since it can be done in a byte manner.

Ein anderer zeitkritischer Vorgang beim Dekomprimieren und Rastern der Druck­ daten 10, der die schritthaltende Verarbeitung bei schnellen Druckern unmöglich macht, ist das Entpacken und Packen von 4-Bit Aufzeichnungswerten in die Bytes des Rechnerspeichers. Das wird noch einmal anhand von Fig. 3c erläutert. Die Folge 17 der 4-Bit Aufzeichnungswerte, die für die Lauflänge 16 aus der Superzelle 14 entnommen werden muß, beginnt in diesem Beispiel nicht an einer Bytegrenze sondern mitten in einem Byte. Entsprechend muß die Folge 17 auch mitten in einem Byte in die gerasterten Druckdaten 6 eingefügt werden. Beide Vorgänge sind in den üblichen Rechnern besonders zeitintensiv.Another time-critical process in the decompression and rasterization of the print data 10 , which makes the step-by-step processing of fast printers impossible, is the unpacking and packing of 4-bit recording values into the bytes of the computer memory. This is explained again with reference to FIG. 3c. In this example, the sequence 17 of the 4-bit recording values that must be taken from the supercell 14 for the run length 16 does not begin at a byte boundary but in the middle of a byte. Accordingly, the sequence 17 must also be inserted into the rasterized print data 6 in the middle of a byte. Both processes are particularly time-consuming in the usual computers.

Das erfindungsgemäße Komprimierungsverfahren sieht deshalb als weiteres Merkmal vor, daß die Folgen von gleichen aufeinanderfolgenden 8-Bit Grauwerten nur als gerade Lauflängen codiert werden, die dann bezüglich der 4-Bit Aufzeichnungswerte in den Superzellen immer nur auf einer Bytegrenze beginnen und enden und deshalb schneller aus den Superzellen kopiert werden können. Dazu gibt es die Lauflängen-Kommandos LHD4_REPEATS und LHD4_REPEAT.The compression method according to the invention therefore sees another Feature that the sequences of the same successive 8-bit gray values are only coded as even run lengths, which are then related to the 4-bit  Record values in the supercells only ever start on a byte boundary and end and therefore can be copied faster from the super cells. There are the run length commands LHD4_REPEATS and LHD4_REPEAT.

LHD4_REPEATS LHD4_REPEATS

LHD4_REPEAT LHD4_REPEAT

Im Kommando LHD4_REPEATS wird mit der 6-Bit Binärzahl [nn nnnn] im ersten Byte eine Lauflänge von ([nn nnnn] + 1) × 2 Bildpunkten codiert. Im zweiten Byte des Kommandos ist der 8-Bit Grauwert angegeben. Mit dem Parameter I kann zwischen Lauflängen in einem Bild und Lauflängen in einem Text-Grafik-Bereich unterschieden werden, so daß beispielsweise verschiedene Rastersysteme und Rasterauflösungen in diesen Bereichen verwendet werden können. Wird der Para­ meter I nicht genutzt, wird das Kommando so abgewandelt, daß eine 7-Bit Binärzahl [nnn nnnn] die Lauflänge codiert.In the command LHD4_REPEATS with the 6-bit binary number [nn nnnn] in the first Byte encoded a run length of ([nn nnnn] + 1) × 2 pixels. In the second byte the 8-bit gray value of the command is given. With the parameter I can between run lengths in an image and run lengths in a text / graphics area be distinguished, so that, for example, different grid systems and Grid resolutions can be used in these areas. If the para meter I not used, the command is modified so that a 7-bit Binary number [nnn nnnn] encodes the run length.

Im Kommando LHD4_REPEAT wird mit der 3-Bit Binärzahl [nnn] im ersten Byte und der 8-Bit Binärzahl [kkkk kkkk] im zweiten Byte eine Lauflänge von ([nnn] × 256 + [kkkk kkkk] + 1) × 2 Bildpunkten codiert. Im dritten Byte des Kommandos ist der 8-Bit Grauwert angegeben. Die Beschränkung auf nur gerade Lauffängen hat den zusätzlichen Vorteil, daß mit den verfügbaren Binärstellen in den Kommandos doppelt so große Lauflängen codiert werden können, als der Binärzahl entspricht. In the command LHD4_REPEAT with the 3-bit binary number [nnn] in the first byte and the 8-bit binary number [kkkk kkkk] in the second byte has a run length of ([nnn] × 256 + [kkkk kkkk] + 1) × 2 pixels coded. The third byte of the command is the 8-bit gray value specified. The limitation to straight barrel catches has the additional advantage that with the available binary positions in the commands twice as long run lengths can be encoded as the binary number.  

Um immer gerade Lauflängen zu erhalten, ohne daß dabei der Inhalt der Druck­ seite verfälscht wird, werden ungerade Lauflängen mit einem speziellen Lauf­ längen-Kommando LHD4_REPEATU codiert.To always get straight run lengths without losing the content of the print side is falsified, odd barrel lengths with a special barrel length command LHD4_REPEATU coded.

LHD4_REPEATU LHD4_REPEATU

Wenn die Lauflänge beispielsweise die ungerade Länge r hat, wird die gerade Länge (r - 1) mit der 5-Bit Binärzahl [n nnnn] codiert, wobei (r - 1) = ([n nnnn] + 1) × 2 ist. Für den letzten Bildpunkt der Lauflänge wird der 4-Bit Aufzeichnungswert awa bestimmt, der sich aus dem Rasterverfahren ergibt. Ebenso wird der 4-Bit Auf­ zeichnungswert awb für den ersten Bildpunkt der folgenden Lauflänge bestimmt. Beide Aufzeichnungswerte werden im dritten Byte des Kommandos angegeben, so daß sie später bei der Rasterung nur als ganzes Byte in die gerasterten Druck­ daten 6 kopiert zu werden brauchen.For example, if the run length has the odd length r, the even length (r - 1) is encoded with the 5-bit binary number [n nnnn], where (r - 1) = ([n nnnn] + 1) × 2. The 4-bit recording value awa, which results from the raster process, is determined for the last pixel of the run length. The 4-bit recording value awb is also determined for the first pixel of the following run length. Both recording values are specified in the third byte of the command, so that they only need to be copied later as a whole byte into the rasterized print data 6 during rasterization.

Durch die Kombination des Lauflängen-Kommandos LHD4_REPEATU für un­ gerade Lauflängen und der Kommandos LHD4_REPEATS und LHD4_REPEAT für gerade Lauflängen wird sichergestellt, daß bei der späteren Rasterung der Lauf­ längen die 4-Bit Aufzeichnungswerte immer als ganze Bytes aus den Superzellen in die gerasterten Druckdaten 6 kopiert werden können und somit die Rasterung sehr schnell ablaufen kann.The combination of the run length command LHD4_REPEATU for uneven run lengths and the commands LHD4_REPEATS and LHD4_REPEAT for even run lengths ensures that when the run lengths are rasterized later, the 4-bit recording values are always copied as whole bytes from the super cells into the rasterized print data 6 can be and the screening can run very quickly.

Fig. 4 zeigt dazu noch einmal ein Beispiel, bei dem zwei aufeinanderfolgende ungerade Lauflängen LL1 = 53 mit dem Grauwert gw1 = 75 und LL2 = 97 mit dem Grauwert gw2 = 217 codiert werden. Von der Lauflänge LL1 wird mit dem Kom­ mando LHD4_REPEATU der gerade Anteil der Länge (= 52) codiert, d. h. die Binär­ zahl im ersten Byte des Kommandos wird [n nnnn] = 1 1001 = 25 gesetzt ((25 + 1) × 2 = 52). Im zweiten Byte wird der Grauwert gw1 = 75 = 0100 1011 angegeben. FIG. 4 shows this once again an example, be encoded in the two successive odd run length LL1 = 53 with the gray value GW 1 = 75 and LL2 = 97 with the gray value gw2 = 217. The even portion of the length (= 52) of the run length LL1 is coded with the command LHD4_REPEATU, ie the binary number in the first byte of the command is set to [n nnnn] = 1 1001 = 25 ((25 + 1) × 2 = 52). The gray value gw1 = 75 = 0100 1011 is specified in the second byte.

Der letzte Bildpunkt der Lauflänge LL1 und der erste Bildpunkt der Lauflänge LL2 werden vorab gerastert, und die hier angenommenen 4-Bit Aufzeichnungswerte 0011 und 1111 werden im dritten Byte des Kommandos angegeben. Der Rest der Lauflänge LL2, der nun eine gerade Zahl ist, wird mit Kommando LHD4_REPEATS codiert. Im ersten Byte des Kommandos wird [nn nnnn] = 10 1111 = 47 gesetzt ((47 + 1) × 2 = 96). Im zweiten Byte wird der Grauwert gw2 = 217 = 1101 1001 ange­ geben.The last pixel of run length LL1 and the first pixel of run length LL2 are rasterized in advance, and the 4-bit recording values 0011 and 1111 assumed here are specified in the third byte of the command. The rest of the run length LL2, which is now an even number, is coded with the LHD4_REPEATS command. In the first byte of the command, [nn nnnn] = 10 1111 = 47 is set ((47 + 1) × 2 = 96). The gray value gw2 = 217 = 1101 1001 is specified in the second byte.

Das erfindungsgemäße Verfahren zur Komprimierung von Druckdaten durch Lauf­ längencodierung, wobei zur Beschleunigung der späteren Rasterung bereits vorab gerasterte Abschnitte in die komprimierten Daten eingefügt werden und die Lauf­ längen so aufgeteilt werden, daß die Rasterung ausschließlich ganze Bytes verar­ beiten kann, ist nicht auf die Einhaltung von Bytegrenzen beschränkt. Es kann in einfacher Weise so abgewandelt werden, daß Wortgrenzen (= 2 Byte) oder Doppel­ wortgrenzen (= 4 Byte) eingehalten werden. Mit einem variierten Kommando LHD4_REPEATU wird die Rasterung z. B. auf Wortgrenzen beschränkt, indem Vielfache von 4 als Lauflänge codiert werden.The method according to the invention for compressing print data by running length coding, in order to accelerate the later screening in advance rasterized sections are inserted into the compressed data and the run are divided in such a way that the screening processes only whole bytes is not limited to compliance with byte boundaries. It can be in easily modified so that word boundaries (= 2 bytes) or double word limits (= 4 bytes) are observed. With a varied command LHD4_REPEATU is the grid z. B. limited to word boundaries by Multiples of 4 are encoded as run lengths.

LHD4_REPEATU LHD4_REPEATU

Wenn die Lauflänge beispielsweise die Länge r hat, wird die Lauflänge auf ein Vielfaches von 4 gekürzt, womit man die Länge (r - p) mit p = 1, p = 2 oder p = 3 erhält. Mit der 5-Bit Binärzahl [n nnnn] im ersten Byte wird diese Länge codiert, wobei (r - p) = ([n nnnn] + 1) × 4 ist. Für die restlichen p Bildpunkte der Lauflänge und die ersten 4 - p Bildpunkte der folgenden Lauflänge werden 4-Bit Aufzeich­ nungswerte awa, awb, awc, awd bestimmt, die sich aus dem Rasterverfahren ergeben. Diese Aufzeichnungswerte werden im dritten und vierten Byte des Kommandos angegeben, so daß sie später bei der Rasterung nur als ganzes Wort kopiert zu werden brauchen.For example, if the run length is r, the run length will be on Multiple of 4 shortened, which gives the length (r - p) with p = 1, p = 2 or p = 3 receives. This length is coded with the 5-bit binary number [n nnnn] in the first byte, where (r - p) = ([n nnnn] + 1) × 4. For the remaining p pixels of the barrel length and the first 4 - p pixels of the following run length become 4-bit recording Determined values awa, awb, awc, awd determined, which result from the screening process surrender. These record values are stored in the third and fourth byte of the  Commands are specified so that they will later only be used as a whole word need to be copied.

Im Fall der Beschränkung auf Wortgrenzen werden auch die mit den Kommandos LHD4_REPEATS und LHD4_REPEAT codierten Lauflängen auf Vielfache von 4 eingeschränkt. Formal ändern sich die Kommandos nicht, aber z. B. wird mit der 6- Bit Binärzahl [nn nnnn] im ersten Byte des Kommandos LHD4_REPEATS dann eine Lauflänge von ([nn nnnn] + 1) × 4 Bildpunkten codiert.In the case of a limitation to word boundaries, those with commands are also used LHD4_REPEATS and LHD4_REPEAT coded run lengths in multiples of 4 limited. Formally, the commands do not change, but e.g. B. is with the 6- Bit binary number [nn nnnn] in the first byte of the command LHD4_REPEATS then encoded a run length of ([nn nnnn] + 1) × 4 pixels.

Das erfindungsgemäße Verfahren kann auch auf den Fall erweitert werden, daß die Mehrstufenrasterung nicht mit 4-Bit Aufzeichnungswerten arbeitet sondern mit einer anderen Zahl von möglichen Ansteuerwerten für das Druckwerk, beispiels­ weise mit 6-Bit Aufzeichnungswerten. Um die Rasterung zu beschleunigen, kommt es wieder darauf an, das Entpacken und Packen von 6-Bit Aufzeichnungswerten in die Bytes des Rechnerspeichers zu vermeiden, d. h. so viele 6-Bit Werte als Paket zu behandeln, daß sich eine ganze Zahl von Bytes ergibt. Da vier 6-Bit Werte lückenlos in 3 aufeinanderfolgende Bytes gepackt werden können (4 × 6 = 3 × 8), werden die Lauflängen-Kommandos für diesen Fall ebenfalls auf Lauflängen einge­ schränkt, die ein Vielfaches von 4 sind. Das Kommando LHD4_REPEATU wird dann abgewandelt zu:The inventive method can also be extended to the case that the multi-stage screening does not work with 4-bit recording values but with another number of possible control values for the printing unit, for example wise with 6-bit recording values. To speed up the screening, comes it again depends on the unpacking and packing of 6-bit record values in avoid the bytes of computer memory, d. H. so many 6-bit values as a package to handle that there is an integer number of bytes. Because four 6-bit values can be packed in 3 consecutive bytes without gaps (4 × 6 = 3 × 8), the run length commands are also entered for run lengths in this case limits that are a multiple of 4. The command LHD4_REPEATU is then modified to:

LHD4_REPEATU LHD4_REPEATU

Mit der 5-Bit Binärzahl [n nnnn] im ersten Byte wird die auf ein Vielfaches von 4 gekürzte Länge (r - p) codiert, wobei (r - p) = ([n nnnn] + 1) × 4 ist. Für die rest­ lichen p Bildpunkte der Lauflänge und die ersten 4 - p Bildpunkte der folgenden Lauflänge werden die 6-Bit Aufzeichnungswerte awa, awb, awc, awd bestimmt, die sich aus dem Rasterverfahren ergeben. Diese Aufzeichnungswerte werden in den Bytes 2 bis 4 des Kommandos dicht gepackt angegeben, so daß diese Bytes später bei der Rasterung nur in die gerasterten Druckdaten 6 kopiert zu werden brauchen.The 5-bit binary number [n nnnn] in the first byte is used to encode the length (r - p) shortened to a multiple of 4, where (r - p) = ([n nnnn] + 1) × 4. For the remaining p pixels of the run length and the first 4 - p pixels of the following run length, the 6-bit recording values awa, awb, awc, awd are determined, which result from the screening process. These recording values are specified in bytes 2 to 4 of the command, so that these bytes only have to be copied later into the rasterized print data 6 during rasterization.

Das erfindungsgemäße Verfahren ist auch nicht auf die Verwendung einer Mehr­ stufenrasterung beschränkt. Es kann ebenfalls für den normalen Fall einer Zwei­ stufenrasterung abgewandelt werden, also einer Rasterung, bei der mit 1-Bit Auf­ zeichnungswerten das Druckwerk angesteuert wird, einen Punkt zu drucken oder nicht. In dem Fall passen 8 Aufzeichnungswerte in ein Byte, so daß die Lauflängen in den komprimierten Druckdaten (10) auf Vielfache von 8 eingeschränkt werden. Das Kommando LHD4_REPEATU wird dann abgewandelt zu:The method according to the invention is also not limited to the use of a multi-stage grid. It can also be modified for the normal case of a two-stage screening, i.e. a screening in which the printing unit is controlled with 1-bit recording values, to print a dot or not. In this case, 8 record values fit into one byte, so that the run lengths in the compressed print data ( 10 ) are restricted to multiples of 8. The command LHD4_REPEATU is then modified to:

LHD4_REPEATU LHD4_REPEATU

Mit der 5-Bit Binärzahl [n nnnn] im ersten Byte wird die auf ein Vielfaches von 8 gekürzte Länge (r - p) codiert, wobei p = 1.7 sein kann und (r - p) = ([n nnnn] + 1) × 8 ist. Für die restlichen p Bildpunkte der Lauflänge und die ersten 8 - p Bildpunkte der folgenden Lauflänge werden die 1-Bit Aufzeichnungswerte awa. awh bestimmt, die sich aus dem Rasterverfahren ergeben. Diese Aufzeichnungswerte werden im Byte 2 des Kommandos dicht gepackt angegeben, so daß dieses Byte später bei der Rasterung nur in die gerasterten Druckdaten 6 kopiert zu werden braucht.The 5-bit binary number [n nnnn] in the first byte is used to encode the length (r - p) shortened to a multiple of 8, where p = 1.7 and (r - p) = ([n nnnn] + 1) × 8 is. For the remaining p pixels of the run length and the first 8 - p pixels of the following run length, the 1-bit recording values awa. awh determined, which result from the grid method. These recording values are specified in byte 2 of the command, so that this byte only has to be copied later into the rasterized print data 6 during rasterization.

Claims (6)

1. Verfahren zur Erzeugung eines Datenformats zur Speicherung und Aufzeich­ nung einer zu reproduzierenden Druckseite, wobei
eine programmierte Seitenbeschreibung (1) des Inhalts der Druckseite durch einen Interpreter (3) verarbeitet wird und eine Display-Liste (4) von grafischen Objekten erzeugt wird,
die Objekte in einfachere überlagerungsfreie Objekte umgewandelt werden, die Bildpunkte der einfacheren überlagerungsfreien Objekte zu einem mittels Lauflängencodierung komprimierten Datenformat (10) zur Speicherung der Druckseite zusammengefaßt werden, und
das komprimierte Datenformat für die Aufzeichnung in gerasterte Druckdaten (6) umgesetzt wird, dadurch gekennzeichnet, daß die Lauflängen in dem komprimierten Datenformat (10) auf ganzzahlige Vielfache einer gegebenen Zahl s eingeschränkt werden.
1. A method for generating a data format for storing and recording a print page to be reproduced, wherein
a programmed page description ( 1 ) of the content of the printed page is processed by an interpreter ( 3 ) and a display list ( 4 ) of graphic objects is generated,
the objects are converted into simpler overlay-free objects, the pixels of the simpler overlay-free objects are combined into a data format ( 10 ) compressed by means of run length coding for storing the printed page, and
the compressed data format for recording is converted into rasterized print data ( 6 ), characterized in that the run lengths in the compressed data format ( 10 ) are restricted to integer multiples of a given number s.
2. Verfahren zur Erzeugung eines Datenformats zur Speicherung und Aufzeich­ nung einer zu reproduzierenden Druckseite, wobei
eine programmierte Seitenbeschreibung (1) des Inhalts der Druckseite durch einen Interpreter (3) verarbeitet wird und eine Display-Liste (4) von grafischen Objekten erzeugt wird,
die Objekte in einfachere überlagerungsfreie Objekte umgewandelt werden, die Bildpunkte der einfacheren überlagerungsfreien Objekte zu einem mittels Lauflängencodierung komprimierten Datenformat (10) zur Speicherung der Druckseite zusammengefaßt werden, und
das komprimierte Datenformat für die Aufzeichnung in gerasterte Druckdaten (6) umgesetzt wird, dadurch gekennzeichnet, daß
in das komprimierte Datenformat (10) gerasterte Druckdaten (6) eingefügt werden.
2. A method for generating a data format for storing and recording a print page to be reproduced, wherein
a programmed page description ( 1 ) of the content of the printed page is processed by an interpreter ( 3 ) and a display list ( 4 ) of graphic objects is generated,
the objects are converted into simpler overlay-free objects, the pixels of the simpler overlay-free objects are combined into a data format ( 10 ) compressed by means of run length coding for storing the printed page, and
the compressed data format for recording is converted into rasterized print data ( 6 ), characterized in that
rasterized print data ( 6 ) are inserted into the compressed data format ( 10 ).
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die gerasterten Druckdaten (6) für kurze Lauflängen eingefügt werden.3. The method according to claim 2, characterized in that the rasterized print data ( 6 ) are inserted for short run lengths. 4. Verfahren nach einem der Ansprüche 1 bis 2, dadurch gekennzeichnet, daß die Lauflängen auf ein Vielfaches von s gekürzt werden und für die restlichen Bildpunkte der Lauflängen gerasterte Druckdaten (6) eingefügt werden.4. The method according to any one of claims 1 to 2, characterized in that the run lengths are shortened to a multiple of s and rasterized print data ( 6 ) are inserted for the remaining pixels of the run lengths. 5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß für die Rasterung eine Mehrstufen-Rasterung verwendet wird.5. The method according to any one of claims 1 to 4, characterized in that a multi-stage screening is used for the screening. 6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß die gerasterten Druckdaten (6) durch Kopieren von ganzen Bytes aus einem Rasterspeicher (14) zusammengestellt werden.6. The method according to any one of claims 1 to 5, characterized in that the rasterized print data ( 6 ) are compiled by copying whole bytes from a raster memory ( 14 ).
DE2000112521 2000-03-15 2000-03-15 Process for compressing print data Expired - Fee Related DE10012521C2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE2000112521 DE10012521C2 (en) 2000-03-15 2000-03-15 Process for compressing print data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2000112521 DE10012521C2 (en) 2000-03-15 2000-03-15 Process for compressing print data

Publications (2)

Publication Number Publication Date
DE10012521A1 true DE10012521A1 (en) 2001-09-27
DE10012521C2 DE10012521C2 (en) 2002-12-19

Family

ID=7634754

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2000112521 Expired - Fee Related DE10012521C2 (en) 2000-03-15 2000-03-15 Process for compressing print data

Country Status (1)

Country Link
DE (1) DE10012521C2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1351196A2 (en) * 2002-03-25 2003-10-08 Canon Kabushiki Kaisha A method and apparatus for creating an image
US7110611B2 (en) 2002-02-11 2006-09-19 Eastman Kodak Company Method for the data compression of framing mask data

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5319463A (en) * 1991-03-19 1994-06-07 Nec Corporation Arrangement and method of preprocessing binary picture data prior to run-length encoding
US5483622A (en) * 1992-09-03 1996-01-09 Hewlett-Packard Company Page printer having automatic font compression
DE19513105A1 (en) * 1995-04-07 1996-10-10 Hell Ag Linotype Procedure for generating a contone map
DE19514293A1 (en) * 1995-04-24 1996-10-31 Hell Ag Linotype Procedure for assembling full-page sheets
EP0801362A2 (en) * 1996-04-03 1997-10-15 Océ-Technologies B.V. Method and apparatus for converting image representation format
DE19623327A1 (en) * 1996-06-12 1997-12-18 Hell Ag Linotype Process for processing objects on printed pages
US5717840A (en) * 1992-07-08 1998-02-10 Canon Kabushiki Kaisha Method and apparatus for printing according to a graphic language
DE69324561T2 (en) * 1993-01-25 1999-08-12 Hewlett Packard Co Delta row decompression method and apparatus

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5319463A (en) * 1991-03-19 1994-06-07 Nec Corporation Arrangement and method of preprocessing binary picture data prior to run-length encoding
US5717840A (en) * 1992-07-08 1998-02-10 Canon Kabushiki Kaisha Method and apparatus for printing according to a graphic language
US5483622A (en) * 1992-09-03 1996-01-09 Hewlett-Packard Company Page printer having automatic font compression
DE69324561T2 (en) * 1993-01-25 1999-08-12 Hewlett Packard Co Delta row decompression method and apparatus
DE19513105A1 (en) * 1995-04-07 1996-10-10 Hell Ag Linotype Procedure for generating a contone map
DE19514293A1 (en) * 1995-04-24 1996-10-31 Hell Ag Linotype Procedure for assembling full-page sheets
EP0801362A2 (en) * 1996-04-03 1997-10-15 Océ-Technologies B.V. Method and apparatus for converting image representation format
DE19623327A1 (en) * 1996-06-12 1997-12-18 Hell Ag Linotype Process for processing objects on printed pages

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7110611B2 (en) 2002-02-11 2006-09-19 Eastman Kodak Company Method for the data compression of framing mask data
EP1351196A2 (en) * 2002-03-25 2003-10-08 Canon Kabushiki Kaisha A method and apparatus for creating an image
EP1351196A3 (en) * 2002-03-25 2005-10-19 Canon Kabushiki Kaisha A method and apparatus for creating an image
US7286142B2 (en) 2002-03-25 2007-10-23 Canon Kabushiki Kaisha System and method for optimising halftoning printer performance
US7477265B2 (en) 2002-03-25 2009-01-13 Canon Kabushiki Kaisha System and method for optimising halftoning printer performance

Also Published As

Publication number Publication date
DE10012521C2 (en) 2002-12-19

Similar Documents

Publication Publication Date Title
DE69634040T2 (en) Method and apparatus for bit rate reduction and reconstruction of image data by means of dither fields
EP0764310B1 (en) Method of generating a contone map
DE69829019T2 (en) Configurable data processing pipeline
DE4106458C2 (en) Graphic data processing device for generating a tone of a border picture element from vector data
DE69938486T2 (en) Image processing method, system and apparatus, and storage medium
DE69814988T2 (en) Data the adder
DE10350863A1 (en) A laser printing device that generates a pulse width value and an alignment value based on pixels in a multi-bit image
DE2321689B2 (en) Color scanner
DE19623318C2 (en) Partial pixel coding and decoding methods
DE60216028T2 (en) Color processing architecture and algorithms for color laser printers
DE69731258T2 (en) Edge improved error diffusion
EP0759248B1 (en) Process and device for generating a grey composite proof
DE2812821C3 (en) Process for image transmission or digital image storage
DE69632644T2 (en) PICTURE GENERATION FOR SIDE PRINTERS
DE60304268T2 (en) Bitmapdekomprimierung
DE10012521C2 (en) Process for compressing print data
DE60027187T2 (en) SYSTEM AND METHOD FOR PROCESSING MULTIPLE LEVELS WITH LEVEL RESTRICTION
EP0766856B1 (en) Printing sheet layout process
EP0872119B1 (en) Image signal processing device and process for the processing of digital data signals
DE69917179T2 (en) Printing pictures
DE10110158B4 (en) Method for compressing print data
EP0978091A1 (en) Method for processing items on printed pages
DE4402723A1 (en) Half-tone image reproduction method e.g. for DTP
DE2758399C2 (en) Device and method for compressing data
DE60011904T2 (en) Multi-color printing process to reduce aliasing noise

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
OP8 Request for examination as to paragraph 44 patent law
8136 Disposal/non-payment of the fee for publication/grant
8170 Reinstatement of the former position
D2 Grant after examination
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20141001