-
Die
Erfindung bezieht sich auf das Gebiet der elektronischen Reproduktionstechnik
und betrifft ein Verfahren zur Konvertierung eines Linework Datenformats
in das Format einer Seitenbeschreibungssprache, wie z.B. PostScript
oder PDF (Portable Document Format).
-
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 Vierfarbdruck sind das
die Druckfarben Cyan, Magenta, Gelb und Schwarz (C, M, Y, K). Die nach
Druckfarben separierten Druckvorlagen werden auch Farbauszüge genannt.
Die Druckvorlagen werden in der Regel gerastert und in hoher Auflösung auf Filme
belichtet, die dann zur Herstellung der Druckformen (Druckplatten,
Druckzylinder) weiter verarbeitet werden. Alternativ können die
Druckvorlagen in speziellen Recordern auch direkt auf Druckplatten belichtet
werden oder als digitale Daten direkt zu einer digitalen Druckmaschine übertragen
werden.
-
Im
Fall der elektronischen Herstellung der Druckvorlagen liegen die
Seitenelemente in Form von digitalen Daten vor. Für ein Bild
werden die Daten z.B. erzeugt, indem das Bild in einem Scanner punkt-
und zeilenweise abgetastet wird, jeder Bildpunkt in Farbkomponenten
zerlegt wird und die Farbwerte dieser Komponenten digitalisiert
werden. Die Daten für
Texte und Grafiken werden im allgemeinen von Textverarbeitungs-
und Zeichenprogrammen direkt in einem Rechner erzeugt. Je nach dem
später verwendeten
Ausgabeprozess, z.B. Ausgabe auf einem Farbdrucker oder Drucken
auf einer konventionellen oder digitalen Druckmaschine, werden die
Daten für
die Seitenelemente in den Farbkomponenten Rot, Grün und Blau
(RGB) oder in den Druckfarben des Vierfarbdrucks Cyan, Magenta,
Gelb und Schwarz (CMYK) erzeugt und gespeichert.
-
Im
weiteren Arbeitsablauf werden die digitalisierten Texte, Grafiken
und Bilder in einer Bearbeitungsstation unter Sichtkontrolle auf
einem Farbmonitor oder automatisch nach gespeicherten Layoutvorgaben
elektronisch montiert, d.h. die Seitenelemente werden z.B. in einem
Speicherbereich der Bearbeitungsstation entsprechend dem Layout
zu einer Druckseite zusammengestellt. Die fertige Druckseite wird
dabei in ein für
die Ausgabe geeignetes Datenformat umgewandelt und gespeichert.
Die Druckseitendaten für
jede der Druckfarben (RGB bzw. CMYK) werden als Farbauszugdaten
bezeichnet. Mit den Farbauszugdaten werden Druckplatten für eine konventionelle
Druckmaschine hergestellt oder sie werden direkt zu einem schnellen
Farbdrucker oder zu einer digitalen Druckmaschine übertragen
und dort ausgedruckt. Anstelle einzelner Druckseiten können Druckvorlagen
auch den Inhalt eines größeren Druckbogens
enthalten, der aus einer Anordnung von mehreren Druckseiten besteht.
-
Der
nach dem Stand der Technik überwiegend
verwendete Arbeitsablauf bei der Ausgabe von Druckvorlagen für Druckseiten
bzw. Druckbögen,
die in einer Seitenbeschreibungssprache, wie PostScript oder PDF,
erzeugt worden sind, ist in 1 gezeigt. Der
Arbeitsablauf wird für
die Seitenbeschreibungssprache PDF erläutert, die eine Weiterentwicklung von
PostScript ist. Die PDF-Daten 1 werden einem Raster Image
Prozessor (RIP) 2 zugeführt,
der ein speziell für
diese Aufgabe optimierter Rechner sein kann oder ein Programm auf
einem Standardrechner. Im Normalfall werden in der Bearbeitungsstation PDF-Daten 1 erzeugt,
die alle Farbauszüge
zusammen enthalten (composite PDF). Alternativ können auch nach Farbauszügen separierte
PDF-Daten 1 einer Druckseite erzeugt und an den RIP 2 weitergegeben
werden (separated PDF). Im folgenden wird der Fall der composite
PDF-Daten 1 weiter erläutert.
-
In
einem ersten Schritt werden die PDF Daten 1 in einem Interpreter 3 analysiert
und in eine Folge von einfachen grafischen Objekten zerlegt, eine sogenannte
Displayliste 4. In der Displayliste wird für jedes
Objekt seine geometrische Form beschrieben und mit welchen Farbwerten
es gefüllt
ist. Im RIP 2 wird die Displayliste 4 in einem
weiteren Schritt einem Rastergenerator 5 zugeführt, der
die Objekte der Displayliste 4 nacheinander in mit Rasterpunkten gefüllte Flächen umsetzt und
als hochaufgelöste Bitmap-Daten 6 in
einen Bitmap-Speicher 7 schreibt. Die Rasterpunktgröße wird
dabei je nach den Farbauszugswerten der Bildpunkte im Objekt variiert. Beim
Rasterprozess kann zugleich die Trennung in die Farbauszüge erfolgen,
d.h. für
jeden Farbauszug werden getrennte Bitmap-Daten 6 abgespeichert,
die angeben, an welchen Stellen auf der Druckseite die entsprechende
Druckfarbe gedruckt werden soll und welche Rasterpunktgrößen dort
gedruckt werden sollen. Nachdem alle Objekte vom Rastergenerator 5 gerastert
und in den Bitmap-Speicher 7 geschrieben wurden, wird der
Inhalt des Bitmap-Speichers 7 für einen bestimmten Farbauszug
zum Beispiel an einen Recorder 8 weitergeleitet und dort
auf eine Druckplatte belichtet.
-
Der
beschriebene Arbeitsablauf setzt voraus, dass alle auszugebenden
Druckseiten als PDF-Daten 1 erzeugt worden sind. In der
Praxis der Reproduktionstechnik ist das jedoch nicht immer der Fall.
Manchmal werden Druckseiten auf älteren
Bearbeitungsstationen erstellt, die noch keine PDF-Daten erzeugen
können.
Oder früher
erstellte Druckseiten bzw. Teile von Druckseiten, die nicht als
PDF-Daten gespeichert sind, sollen wiederverwendet werden, z.B.
bereits fertig gestaltete Anzeigenseiten. Ein in der Reproduktionstechnik
häufig
verwendetes Datenformat zur Speicherung fertiger Druckseiten, das besonders
vor der Einführung
des auf den Seitenbeschreibungssprachen PostScript bzw. PDF beruhenden
Arbeitsablaufes verbreitet war, ist das Datenformat TIFF/IT. Die
Abkürzung
steht für "Tag image file format
for image technology".
Das Format wurde von der International Organization for Standardization
als Standard ISO 12639:1998 standardisiert. Im Gegensatz zu PDF
ist TIFF/IT keine Seitenbeschreibungssprache, sondern ein Bildpunktorientiertes
Datenformat. Im Datenformat TIFF/IT vorliegende Druckseitendaten
müssen
vor der Integration in den beschriebenen PDF Arbeitsablauf in PDF-Daten
umgewandelt werden.
-
TIFF/IT
Daten bestehen aus bis zu drei Komponenten:
- a)
Colour continuous tone picture image (CT) data: Ein meist seitengroßes Hintergrundbild,
das alle Farbbilder auf der Druckseite zusammenfasst. Die Auflösung entspricht
einer in der Reproduktionstechnik üblichen Auflösung für gescannte Bilder,
beispielsweise 120 Bildpunkte/cm.
- b) Colour linework (LW) image data: Lauflängenformat für bis zu
255 verschiedene indexierte Farben, d.h. Farben die mit einer Farbnummer
(Index) unterschieden werden. Die LW Daten werden üblicherweise
für hochaufgelöste Grafiken und
Texte genutzt. Die Auflösung
ist deutlich höher
als für
die CT Daten, beispielsweise 1000 Bildpunkte/cm.
- c) High resolution continuous tone (HC) image data: Ein Lauflängenformat
für beliebig
viele verschiedene Farben in der gleichen Auflösung wie für die LW Daten. HC Daten werden
meist für hochaufgelöste Konturen
an Bildern genutzt, z.B. wenn zwei Bilder direkt aneinandergrenzen
und die Grenzlinie eine höhere
Auflösung
haben soll als die Bildauflösung.
HC Daten haben oft nur einen geringen Flächenanteil an der Druckseite.
-
Eine
komplette TIFF/IT "Final
Page" Datei besteht
im allgemeinen aus einer CT, einer LW und einer HC Komponente. Nicht
benötigte
Komponenten können
aber weggelassen werden. Die Positionierungsdaten für die unterschiedlichen
Komponenten befinden sich in der "Final Page" Datei, einer Klammer für die drei
Komponenten. Die meisten TIFF/IT Dateien haben einen CT Anteil,
viele haben einen LW Anteil und wenige eine HC Komponente.
-
Die
Konvertierung der CT Komponente des TIFF/IT Formats in PDF-kompatible
Daten ist relativ einfach, da Farbbilddaten in Form einer zweidimensionalen
Anordnung von Bildpunkten in PDF als eine der Möglichkeiten zur Beschreibung
von Inhalten einer Druckseite vorgesehen sind. Die Konvertierung der
LW Komponente und der HC Komponente in PDF-kompatible Daten ist
schwieriger, da die Beschreibung von Druckseiteninhalten mit Lauflängen von
Farben in PDF nicht vorgesehen ist. Die LW Lauflängen und HC Lauflängen müssen deshalb
in Beschreibungselemente konvertiert werden, die im PDF Format verfügbar sind,
wobei die Umsetzung ohne Qualitätsverlust
erfolgen und mit möglichst
geringem Speicherbedarf auskommen sollte. Die Konvertierung der
LW Komponente und der HC Komponente von TIFF/IT-Daten in äquivalente
PDF-Daten ist Gegenstand der vorliegenden Patentanmeldung.
-
2a zeigt den Aufbau einer
Lauflänge
in der Linework Komponente, die im einfachsten Fall aus zwei Bytes
besteht. Das erste Byte enthält
eine Farbnummer FNR und das zweite Byte die Länge LG der in einer Zeile aufeinanderfolgenden
Bildpunkte dieser Farbe als 8-Bit Binärzahl. Wenn eine Folge von
gleichfarbigen Bildpunkten größer als
255 ist, wird sie in eine oder mehrere Teillauflängen von 255 Bildpunkten und
eine Restlauflänge
aufgeteilt. Zusätzlich
zu den Lauflängen
enthält
die Linework Komponente eine Farbtabelle, in der für jede Farbnummer die
zu druckenden CMYK-Farbwerte als vier Bytes eingetragen sind. Mit
der Farbnummer als Index in die Farbtabelle kann jeder Lauflänge die
zugehörige Farbe
zugeordnet werden. Neben der 2-Byte Form gibt es auch eine 4-Byte
Form der Lauflängen,
in der die Länge
LG als 16-Bit Binärzahl
codiert ist.
-
2b zeigt den Aufbau einer
Lauflänge
in der HC Komponente, die aus sechs Bytes besteht. Die ersten beiden
Bytes enthalten eine Länge
LG als 16-Bit Binärzahl,
die folgenden vier Bytes geben direkt die Farbauszugswerte CMYK
an. Dadurch ist die Zahl der unterschiedlichen Farben, die codiert
werden können,
nicht eingeschränkt.
-
In
der Patentschrift
US 5,752,057 ist
ein Verfahren zur Konvertierung einer hochaufgelösten Linework Komponente in
eine PostScript Beschreibung angegeben.
3 veranschaulicht das Verfahren am Beispiel
eines Buchstabens aus einem hochaufgelösten Textbestandteil der Druckseite.
Jede einzelne Lauflänge
aus der Linework Komponente wird in den PostScript-Daten als horizontaler
Strich
9 beschrieben, wobei für jeden Strich
9 die
Koordinaten des Anfangspunkts und seine Länge angegeben werden muss.
Die Dicke der Striche
9 ist für alle Striche gleich der Höhe einer
Zeile in der Linework Komponente. In der
3 sind die Striche
9 zur einfacheren
Darstellung in sehr grober Auflösung
gezeichnet. In der Realität
ergeben sich für
die Auflösung
1000 Bildpunkte/cm zum Beispiel 300 Striche
9 auf die Höhe eines
Buchstabens in der Schriftgröße
12 Punkt.
Dieses bekannte Verfahren hat deshalb den Nachteil, dass die PostScript
Beschreibung wegen der vielen Striche
9, in die ein Grafik-
oder Textelement aufgeteilt wird, einen relativ großen Speicherplatz
erfordert und dass die Konvertierung und die spätere Interpretation der PostScript
Beschreibung entsprechend langsam sind. Ein weiterer gravierender
Nachteil ist, dass die Striche
9 alle einzelne logisch
voneinander getrennte Objekte sind, d.h. man kann aus der PostScript
Beschreibung nicht mehr erken nen, welche Striche
9 zu einem
ursprünglichen Objekt
wie beispielsweise einem Buchstaben gehören. Das macht eine interaktive
Nachbearbeitung der konvertierten Linework Elemente, z.B. das Verschieben,
das Vergrößern oder
das Umfärben
eines ursprünglichen
Objekts, praktisch unmöglich.
-
Die
Aufgabe der vorliegenden Erfindung ist daher, die vorgenannten Nachteile
zu vermeiden und ein Verfahren anzugeben, mit dem hochaufgelöste Lauflängencodierte
Druckseitendaten, wie z.B. eine Linework (LW) Komponente oder eine
High Resolution Continuous Tone (HC) Komponente des TIFF/IT Datenformats,
in PDF-Daten konvertiert werden können, wobei die konvertierte
Datenmenge gering ist, die Konvertierung und die Interpretation
der konvertierten PDF-Daten schnell ausgeführt werden, und eine einfache
Nachbearbeitung der konvertierten Grafik- und Textobjekte möglich ist.
-
Diese
Aufgabe wird durch die Merkmale des Anspruchs 1 gelöst. Vorteilhafte
Weiterbildungen sind in den Unteransprüchen angegeben.
-
Die
Erfindung wird nachfolgend anhand der 1 bis 9 näher beschrieben. Es zeigen:
-
1 den Arbeitsablauf zur
Ausgabe einer Druckvorlage,
-
2a den Aufbau einer Lauflänge der
LW Komponente,
-
2b den Aufbau einer Lauflänge der
HC Komponente,
-
3 die Konvertierung in PDF-Daten
nach dem Stand der Technik,
-
4 ein Beispiel für eine Linework
Komponente,
-
5 die umschreibenden Rechtecke
der Objekte,
-
6 die Zusammenfassung von
Objekten,
-
7 die Bitmap des Imagemask-Operators,
-
8 den Polygonzug eines Objekts,
und
-
9 den approximierten Polygonzug
eines Objekts.
-
Das
erfindungsgemäße Verfahren
und seine Verarbeitungsschritte werden im folgenden für eine Linework
Komponente des TIFF/IT Datenformats erläutert. Das Verfahren kann jedoch
in gleicher Weise auf eine HC Komponente oder ein beliebiges anderes
Lauflängen-codiertes
Datenformat angewendet werden. 4 zeigt
dazu ein Beispiel für
eine einfache Linework Komponente, deren Bildpunkte 10 in
12 Zeilen und 20 Spalten angeordnet sind. Die Linework Komponente
enthält
drei grafische Objekte 11, 12 und 13,
die unterschiedliche Farben haben. Den Objekten sind hier entsprechend
der Objektbezeichnung die Farbnummern 11, 12 und 13 zugeordnet. Die
zu den Farbnummern gehörenden
Farbauszugswerte CMYK sind in der Farbtabelle unter diesen Farbnummern
abgespeichert. Der Hintergrund hat die Farbnummer 0. Die Lauflängen in
den Zeilen 1 bis 12 sind in einer Liste aufgeführt. Die Lauflängenkennzeichnung
[13|5] bezeichnet beispielsweise eine Lauflänge mit der Farbnummer FNR
= 13 und der Länge
LG = 5.
-
In
einem ersten Schritt des erfindungsgemäßen Verfahrens werden die Lauflängen der
Linework Komponente Zeile für
Zeile durchgegangen und die nicht zum Hintergrund gehörenden Lauflängen werden
jeweils einem Objekt zugeordnet. Lauflängen, die eine entsprechende überlappende
Lauflänge
in der vorangegangenen Zeile haben, werden demselben Objekt zugeordnet,
zu dem diese darüber
liegende Lauflänge
gehört.
Wenn eine neue Lauflänge ohne
Entsprechung in der Vorzeile auftritt oder eine Lauflänge mit
einer anderen Farbe als die darüber liegende
Lauflänge,
wird sie einem neuen Objekt zugeordnet. Gleichzeitig werden für jedes
Objekt die Breite und die Höhe
eines umschreibenden Rechtecks laufend aktualisiert und gespeichert.
Im Beispiel von 4 wird
in der Zeile 1 als erste vom Hintergrund verschiedene Lauflänge die
Lauflänge
[11|3] angetroffen. Sie wird einem neuen Objekt 11 zugeordnet,
und die Abmessungen des umschreibenden Rechtecks werden zunächst auf
3 × 1
(Breite × Höhe) gesetzt.
In der Zeile 2 wird die Lauflänge
[11|4] angetroffen, die die gleiche Farbe hat und eine Überlappung
zu der Lauflänge
in der Vorzeile hat. Deshalb wird sie dem gleichen Objekt 11 zugeordnet,
und das umschreibende Rechteck wird auf die Abmessungen 4 × 2 aktualisiert.
In der Zeile 3 befinden sich zwei Lauflängen, [12|2] und [11|4]. Die
erste Lauflänge
hat eine neue Farbe und wird deshalb einem neuen Objekt 12 zugeordnet,
dessen umschreibendes Rechteck die Abmessungen 2 × 1 erhält. Die
zweite Lauflänge
wird aufgrund der Farbe und der Überlappung zur
Lauflänge
in der Vorzeile als Fortsetzung des Objekts 11 erkannt,
und das umschreibende Rechteck wird auf die Abmessungen 5 × 3 aktualisiert.
Wenn in einer Zeile zu einem Objekt keine überlappende Lauflänge mehr
angetroffen wird, wie z.B. für
das Objekt 11 in der Zeile 6, ist das Objekt abgeschlossen und
die zuletzt aktualisierten Abmessungen des umschreibenden Rechtecks
gelten, für
das Objekt 11 also die Abmessungen 7 × 5. Nach der Ausführung des
ersten Arbeitsschritts für
alle in der Linework Komponente enthaltenen Lauflängen sind
alle Objekte und ihre umschreibenden Rechtecke bestimmt. Die 5 zeigt die gefundenen umschreibenden Rechtecke
als gestrichelte Umrisse.
-
Nach
einer bevorzugten Variante der Erfindung wird während des ersten Arbeitschritts
zusätzlich
festgestellt, ob ein Objekt ein Rechteck ist, d.h. ob innerhalb
des umschreibenden Rechtecks nur Bildpunkte einer Farbe sind und
auch keine Hintergrund-Bildpunkte enthalten sind. Dazu werden beispielsweise
die Bildpunkte mit der Objektfarbe gezählt und diese Zahl P von Zeile
zu Zeile aktualisiert, bis das Objekt abgeschlossen ist. Wenn die
ermittelte Zahl P gleich der Gesamtzahl der Bildpunkte im umschreibenden
Rechteck ist, d.h. P = Breite × Höhe gilt,
ist das Objekt rechteckig. Die rechteckigen Objekte werden dann
in den Rechteckoperator "rectfill" des PDF-Formats
konvertiert. Damit sind sie besonders kompakt und zeitsparend für die spätere Weiterverarbeitung
beschrieben. Der Rechteckoperator beschreibt ein Rechteck nur mit
vier Werten, den Koordinaten x0 und y0 einer Ecke und der Breite
und Höhe.
Zusätzlich
muss die Farbe angegeben werden, mit der das Rechteck gefüllt werden
soll.
-
In
einem optionalen aber bevorzugten zweiten Schritt wird geprüft, ob Objekte
gleicher Farbe zu einem größeren Objekt
zusammengefasst werden können.
Ein Kriterium dafür
ist, ob der horizontale bzw. vertikale Abstand der zugehörigen umschreibenden
Rechtecke ein vorgegebenes maximales Maß nicht überschreitet. Wenn das der
Fall ist, d.h. wenn die Objekte genügend eng benachbart sind, werden
sie in einem größeren umschreibenden Rechteck
zusammengefasst. Das ist besonders vorteilhaft für Texte, bei denen im ersten
Arbeitsschritt jeder einzelne Buchstabe als separates Objekt isoliert
worden ist. 6 zeigt
dazu ein Beispiel. Die umschreibenden Rechtecke der Buchstaben werden zu
einem umfassenden Rechteck für
das ganze Wort zusammengefasst. Je nach dem vorgegebenen maximalen
Abstandsmaß können auch
mehrere Worte, ganze Textzeilen oder ganze Textblöcke zusammengefasst
werden. Der Vorteil ist zum einen, dass auf diese Weise häufig logisch
zusammenhängende
Teilobjekte, z.B. die Buchstaben eines Wortes, später als ein
Objekt in das PDF-Format konvertiert werden. Zum anderen wird die
Zahl der zu konvertierenden Objekte stark reduziert, und die Beschreibung
der zusammengefassten Objekte in den PDF-Daten wird entsprechend
kompakt. Durch die kompakte Objektbeschreibung wird die Weiterverarbeitung,
z.B. das Interpretieren der PDF-Daten oder interaktive Korrekturen,
erheblich beschleunigt. Objekte, die vorher als Rechtecke identifiziert
worden sind, werden vorzugsweise nicht in die Zusammenfassung mit
anderen Objekten einbezogen, da die Beschreibung dieser Objekte
mit dem Rechteckoperator die kompakteste und für die Weiterverarbeitung günstigste
Form der Beschreibung ist. Es ist jedoch zweckmäßig, die separate Konvertierung
von Rechtecken erst ab einer Mindestgröße durchzuführen und sehr kleine rechteckige
Objekte doch mit anderen benachbarten Objekten zusammenzufassen,
da die Datenmenge der konvertierten PDF-Daten dadurch optimiert
werden kann.
-
Die
Kompaktheit der Beschreibung der Objekte in den PDF-Daten kann auch
als alternatives oder zusätzliches
Kriterium für
die Zusammenfassung herangezogen werden. Da die Datenmenge im PDF-Format
für jedes
zu konvertierende Objekt bekannt ist oder aufgrund der Objektgröße vorher
ermittelt werden kann, wird festgestellt, ob ein zusammengefasstes
Objekt eine kleinere Datenmenge der PDF-Daten ergibt als die PDF-Beschreibungen
der Einzelobjekte. Wenn das der Fall ist, wird die Zusammenfassung
durchgeführt.
Wenn sich andererseits ergibt, dass das zusammengefasste Objekt
eine wesentlich größere Datenmenge
in den PDF- Daten
erzeugt als die Einzelobjekte, wird die Zusammenfassung nicht durchgeführt. Die
Schwellwerte für
diese Entscheidung werden zweckmäßigerweise
durch Experimentieren mit unterschiedlichen Variationen der Kriterien
für die
Zusammenfassung ermittelt. Beispielsweise kann die Weiterverarbeitung
der PDF-Daten sogar trotz einer größeren Datenmenge des zusammengefassten
Objekts schneller sein als mit den Einzelobjekten, einfach weil
sonst aufgrund der größeren Zahl
der Einzelobjekte viel mehr Objekte interpretiert werden müssen, was
für jedes
Objekt mit einem gewissen "Overhead" verbunden ist, d.h. mit
zusätzlicher
Rechenzeit, in der keine Bildpunkte verarbeitet werden. Alternativ
können
die Entscheidungsschwellen auch für den Benutzer einstellbar gemacht
werden, indem in der Bedienoberfläche eines Programms, das die
Konvertierung durchführt, entsprechende
Einstellmöglichkeiten
vorgesehen werden.
-
Neben
der Zusammenfassung von Objekten ist nach einer weiteren Ausführungsform
der Erfindung auch vorgesehen, ein sehr großes Objekt in mehrere kleine
Objekte aufzuteilen. Wenn ein großes Objekt beispielsweise ein
Rahmen ist, der die Breite und Höhe
der ganzen Druckseite hat, so würde
dieses Objekt nach der Konvertierung in die PDF-Daten eine große Datenmenge
erzeugen. In dem Fall wird es in kleinere Objekte geteilt, deren
umschreibende Rechtecke zusammen viel weniger Bildpunkte umfassen
als das umschreibende Rechteck des großen Objekts. Als Kriterium
für die
Festlegung der Teilungsgrenzen wird zweckmäßigerweise die Kompaktheit
der konvertierten PDF-Daten für
die Teilobjekte herangezogen, d.h. die Teilung wird so vorgenommen,
dass nach der Konvertierung eine möglichst geringe Datenmenge
entsteht. Auch hier müssen
die geeigneten Entscheidungsschwellen experimentell ermittelt werden.
-
Im
dritten Schritt des erfindungsgemäßen Verfahrens werden die nicht
rechteckigen Objekte in PDF-Daten konvertiert, indem sie mit dem
Operator "Imagemask" beschrieben werden,
der in der PostScript- und in der PDF-Seitenbeschreibungssprache zur
Verfügung
steht. Mit dem Imagemask-Operator ist eine Bitmap verbunden, deren
Bildpunkte die Werte 0 oder 1 haben. 7 zeigt
als Beispiel die Bitmap 14 für einen Buchstaben, wobei zur
Vereinfachung der Darstellung eine sehr grobe Bildpunktauflösung gewählt wurde.
Die tatsächliche
Bildpunktauflösung im
Vergleich zu den Abmessungen des Buchstabens ist wesentlich höher. Die
Bildpunkte mit dem Wert 0 sind weiß dargestellt und die Bildpunkte
mit dem Wert 1 schwarz. Bei der späteren Interpretation der PDF-Daten
positioniert der Imagemask-Operator die Bitmap 14 an einer
durch mitgegebene Koordinaten definierten Stelle auf der Druckseite
und füllt
dann die Bildpunkte, die in der Bitmap 14 den Wert 1 haben, mit
einer vorher festgelegte Farbe. Die Bildpunkte, die in der Bitmap 14 den
Wert 0 haben, werden nicht verändert.
Die Bitmap 14 des Imagemask-Operators wirkt also wie eine Schablone,
in der die Bildpunkte mit dem Wert 1 Löcher sind, durch die die Farbe
auf die Druckseite gemalt wird. Die Bitmap 14 eines Objekts,
das in den Schritten 1 und 2 des Verfahrens ermittelt wurde, hat
die Abmessungen des dort gefundenen umschreibenden Rechtecks. Ihr
Inhalt, d.h. die Anordnung der Bildpunkte mit dem Wert 0 und mit dem
Wert 1, ergibt sich in einfacher Weise daraus, welche Bildpunkte
in dem umschreibenden Rechteck durch die Lauflängen mit der Objektfarbe belegt
sind (Bildpunkte mit dem Wert 1) und welche durch Lauflängen mit
anderen Farben einschließlich
der Hintergrundfarbe belegt sind (Bildpunkte mit dem Wert 0). Große Bitmaps
können
in den PDF-Daten kompakt abgespeichert werden, indem sie mit einem
in der PDF-Seitenbeschreibungssprache verfügbaren Datenkompressionsverfahren
komprimiert werden, z.B. mit dem Operator "CCITTFaxEncode". Dieser Operator komprimiert die Bitmaps 14 nach
dem Verfahren, das international für die digitale Faxübertragung standardisiert
ist.
-
In
einer alternativen Ausführungsform
der Erfindung werden die im ersten Schritt gefundenen Objekte in
einen geschlossenen Polygonzug konvertiert, der dann mit einer vorher
festgelegte Farbe gefüllt
wird. In der PDF-Seitenbeschreibungssprache stehen zur Beschreibung
eines geschlossenen Polygonzugs die Operatoren "moveto", "lineto" und "closepath" zur Verfügung. 8 zeigt den Polygonzug 15 am
Beispiel eines Buchstabens. Der Polygonzug 15 wird gebildet,
indem an den Rändern
der Lauflängen,
die in der Linework Komponente das Objekt bilden, Eckpunkte 16 gesetzt
werden, die mit horizontalen, vertikalen und diagonalen Linien verbunden
werden. Immer wenn beim Umlauf um den Rand des Objektes der Linienzug
seine Richtung wechselt, wird ein neuer Eckpunkt 16 gesetzt.
Werden später
die in PDF-Daten konvertierten Polygonzüge 15 interpretiert
und mit der gleichen Auflösung
gerastert, in der auch die Linework Komponente vorliegt, so stimmt die
Form der rekonstruierten Objekte exakt mit der Form der Objekte
in den Linework Daten überein.
Die Konvertierung eines Objekts in einen geschlossenen Polygonzug 15 hat
jedoch den Vorteil, dass das Objekt auflösungsunabhängig beschrieben ist und später geometrische
Operationen wie Größenänderung oder
Drehung sehr viel einfacher und schneller durchgeführt werden
können.
Außerdem
ist die Beschreibung der Polygonzüge 15 in den PDF-Daten noch
kompakter als die Beschreibung mit den Imagemask-Operatoren. Entsprechend
kürzer
sind auch die Verarbeitungszeiten beim Interpretieren und Rastern
oder bei einer interaktiven Bearbeitung der Objekte. Zur weiteren
Vereinfachung können
die Polygonzüge 15 noch
geglättet
werden, indem mehrere aufeinanderfolgende Eckpunkte 16 durch
interpolierte Geraden- oder Kurvenstücke angenähert werden. 9 zeigt ein Beispiel dafür. Zum Interpolieren
der Eckpunkte 16 können
die bekannten Verfahren für solche
geometrischen Operationen herangezogen werden.
-
Die
erläuterten
alternativen Ausführungsformen
der Erfindung können
bei der Konvertierung von Linework Daten in PDF-Daten auch gemischt
werden. Beispielsweise ist es zweckmäßig, kleine Objekte mit sehr
komplexer Struktur, z.B. chinesische Schriftzeichen, mit Hilfe des
Imagemask-Operators und der zugehörigen Bitmap 14 in
die PDF-Beschreibung zu konvertieren. Eine Polygon-Beschreibung würde die
Codierung sehr vieler Eckpunkte 16 und entsprechend viele
Lineto-Operatoren erfordern, um eine sehr kleine Fläche auf
der Druckseite zu beschreiben. Für
große
und einfacher strukturierte Objekte ist jedoch die Konvertierung
in einen geschlossenen Polygonzug 15 vorteilhafter, da
mit nur wenigen Lineto-Operatoren eine relativ große Fläche auf der
Druckseite beschrieben werden kann.
-
- 1
- PDF-Daten
- 2
- Raster
Image Prozessor (RIP)
- 3
- Interpreter
- 4
- Displayliste
- 5
- Rastergenerator
- 6
- Bitmap-Daten
- 7
- Bitmap-Speicher
- 8
- Recorder
- 9
- Strich
- 10
- Bildpunkt
- 11
- Objekt
- 12
- Objekt
- 13
- Objekt
- 14
- Bitmap
- 15
- Polygonzug
- 16
- Eckpunkt