DE69312840T2 - Farbentrennung für graphischen Farbdruck mit begrenztem Speicher - Google Patents
Farbentrennung für graphischen Farbdruck mit begrenztem SpeicherInfo
- Publication number
- DE69312840T2 DE69312840T2 DE69312840T DE69312840T DE69312840T2 DE 69312840 T2 DE69312840 T2 DE 69312840T2 DE 69312840 T DE69312840 T DE 69312840T DE 69312840 T DE69312840 T DE 69312840T DE 69312840 T2 DE69312840 T2 DE 69312840T2
- Authority
- DE
- Germany
- Prior art keywords
- black
- color
- data
- band
- block
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/10—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by matrix printers
- G06K15/102—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by matrix printers using ink jet print heads
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/46—Colour picture communication systems
- H04N1/52—Circuits or arrangements for halftone screening
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/0062—Handling the output data combining generic and host data, e.g. filling a raster
- G06K2215/0071—Post-treatment of the composed image, e.g. compression, rotation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0082—Architecture adapted for a particular function
- G06K2215/0094—Colour printing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Ink Jet (AREA)
- Record Information Processing For Printing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
Description
- Diese Anmeldung ist auf die EP-A-0540173 bezogen. Die EP-A-0540173 ist Stand der Technik kraft Artikel 54(3) EPÜ und offenbart Farbtrenntechniken zum Graphikdrucken. Diese Anmeldung umfaßt die bekannte Offenbarung und eine zusätzliche Offenbarung zur Farbtrennung bei Anwendungen, bei denen ein begrenzter Speicherraum die Untersuchung eines gesamten Graphikbildes zu einem Zeitpunkt verhindert.
- Diese Erfindung bezieht sich auf das Gebiet von Farbdrucksysternen, z. B. Tintenstrahldrucksystemen, und insbesondere auf Verfahren zum Verbessern der Auflösung und Druckqualität in Vierfarb-Tintenstrahldrucksystemen.
- Bekannte Tintenstrahlfarbdrucksysteme verwenden einen Drei- Farben-, z. B. Cyan-, Magenta- und Gelb- ("CMY"-; CMY = Cyan, Magenta, Yellow) Druckkopf oder "-stift". Alle drei Farben werden kombiniert, um ein zusammengesetztes Schwarz (auch "Prozeßschwarz" genannt) zu bilden, wenn Schwarz benötigt wird. Es wird jedoch bevorzugt, aus folgenden Gründen mit "echtem" Schwarz und nicht mit zusammengesetztem Schwarz zu drucken:
- 1. Schwarz sieht besser als zusammengesetztes Schwarz aus. Da zusammengesetztes Schwarz aus drei Farben besteht, weist es oft eine farbige Tönung an sich auf. Es könnte beispielsweise als Grün-Schwarz oder als Blau-Schwarz erscheinen. Ebenfalls variiert die Druckqualität von zusammengesetztem Schwarz mit dem Papiertyp, der Temperatur und der Feuchtigkeit.
- 2. Bei einem typischen Computersystem werden Druckdaten von dem Hostcomputer zu dem Drucker gesendet, um das Drucken von jeder der vier Farben CMYK zu steuern, wobei K Schwarz darstellt (um eine Verwechslung mit der Farbe Blau zu vermeiden). Wenn ein Bereich auf einer Seite mit zusammengesetztem Schwarz gedruckt wird, müssen die Informationen für die CMY-Tinten zu dem Drucker gesendet werden. Wenn der gleiche Bereich mit einem schwarzen Stift (echtem Schwarz) bedruckt wird, müssen nur die Daten für die K-Tinte gesendet werden. So stellt eine Verwendung des Schwarz-Stifts eine mögliche Drei-zu-Eins- Reduktion der Datenübertragung zwischen dem Hostgerät und dem Drucker dar.
- 3. Das Drucken von zusammengesetztem Schwarz erfordert das Aufbringen der dreifachen Menge an Tintenvolumen auf das Druckmedium wie es zum Drucken von echtem Schwarz nötig ist. Dies ist nicht nur im Betrieb teuerer, sondern kann ebenfalls bewirken, daß das Medium, und insbesondere unbeschichtetes Papier, eine Welligkeit entwickelt, und daß sich andere ungleichmäßige Störungen in dem Bereich entwickeln, in dem das große Tintenvolumen aufgebracht ist.
- 4. Wenn zusammengesetztes Schwarz gedruckt wird, muß der Farbstift drei Durchläufe über der gleichen Region durchführen, wobei der erste Durchlauf Cyan-Tinte, der zweite Durchlauf Magenta-Tinte und der letzte Durchlauf Gelb-Tinte aufbringt. Wenn die gleiche Region mit dem Schwarz-Stift gedruckt wird, muß der Schwarz-Stift nur einen Durchlauf über der Region ausführen, um Schwarz- Tinte aufzubringen. Dies stellt eine wesentliche Verbesserung der Druckgeschwindigkeit dar.
- Bestimmte Tintenstrahldrucker umfassen sowohl einen Farb- Stift als auch einen Schwarz-Stift, jedoch nicht zur Verwendung zum gleichen Zeitpunkt. In anderen Worten kann nur der eine oder der andere Stift in dem Drucker zu einem Zeitpunkt verwendet werden. Kommerzielle Beispiele sind der Hewlett- Packard-Desk Writer C (eingetragenes Warenzeichen) und der DeskJet 500 C (eingetragenes Warenzeichen). Da nur ein Stift zu einem Zeitpunkt verwendet werden kann, ist eine Seite entweder farbig oder schwarz, es kann jedoch keine Mischung von Farbe und Schwarz auf der gleichen Seite vorhanden sein. Der Benutzer muß die Stifte manuell austauschen, bevor eine Seite gedruckt wird, wenn der falsche Stift in dem Drucker ist. Wenn der Farbstift verwendet wird, werden Bereiche, die Schwarz sein sollen, unter Verwendung von zusammengesetztem Schwarz gedruckt. Dies stellt einen Kompromiß der Druckqualität und Druckgeschwindigkeit aufgrund der oben genannten Gründe dar.
- Vierfarbige Drucker sind die, die drei Primärfarben plus Schwarz (CMYK) haben, welche zur Verwendung innerhalb einer einzelnen Seite verfügbar sind. Bekannte Vierfarben- (CMYK-) Tintenstrahldrucker haben jedoch eine begrenzte Auflösung und müssen auf speziellem glänzenden Papier drucken. Der Hewlett-Packard PaintJet XL (eingetragenes Warenzeichen) enthält beispielsweise vier Druckköpfe, und zwar einen für CMY und einen für K. Obwohl dieser Drucker nicht zusammengesetztes Schwarz verwenden muß, beträgt seine Auflösung nur 180 Punkte pro Zoll (DPI; 1 Zoll entspricht 2,54 cm). Der Drucker Kodak DACONIX Color 4 enthält ebenfalls vier Druckköpfe für CMYK, jedoch lediglich nur bei 192 DPI. Der Farbtintenstrahldrucker Sharp JX-730 ist ein anderer Vierfarbendrucker, der 216 DPI aufweist. Sowohl der Drucker von Kodak als auch der Drucker von Sharp können Schwarz neben einer Farbe drucken, jedoch wieder bei einer viel geringereren Auflösung und nur auf speziellem Papier.
- Es wird ein Flüssigtintendrucksystem benötigt, das das Mischen von echtem Schwarz und von Farbtinten innerhalb einer gedruckten Seite erlaubt, und das ein Drucken mit hoher Auflösung auf gewöhnlichem, nicht glänzendem Papier liefert. Neue Tinten werden zum Drucken bei hoher Auflösung, z. B. bei 300 DPI (Punkten pro Zoll) auf unbeschichtetern Papier, wie z. B. einem nicht glänzenden Papier, wie z. B. Verbundpapier, das in einer Schreibmaschine verwendet wird, entwickelt. Aufgrund der Tintenchemiebegrenzungen dürfen sich jedoch die Farb- und die Schwarz-Tinte nicht auf der Seite berühren, und sie dürfen in der Tat nicht innerhalb eines minimalen Abstands zueinander auf der Seite kommen. Wenn die Tinten in den minimalen Abstand kommen, zieht die Farbtinte den Farbstoff aus der Schwarztinte, was bewirkt, daß die Schwarztinte aufgehellt wird. Dieses Aufhellen der Schwarztinte auf der Seite ergibt eine unannehmbare Druckqualität und muß vermieden werden. Demgemäß bleibt ein Bedarf zum Beibehalten einer vorbestimmten minimalen Beabstandung zwischen einer Schwarz- und Farbtinten auf einer gedruckten Seite.
- Ein Lösungsansatz, um eine minimale Beabstandung ("Delta") beizubehalten, die zwischen einer Farb- und einer Schwarztinte benötigt wird, würde darin bestehen, jeden Farbpunkt auf der Seite zu untersuchen, und dann zu sehen, ob einige der umgebenden Punkte innerhalb von Delta schwarz sind, und wenn sie es sind, dieselben in zusammengesetztes Schwarz umzuwandeln. Ein solches Verfahren ist unter Verwendung der gegenwärtigen Technologie aus den folgenden Gründen nicht praktikabel. Es existieren etwa acht Millionen Punkte auf einer 8,5-Zoll-x-11-Zoll-Seite (entsprechend 21,6 cm x 27,9 cm). Für jeden Punkt existieren 138 umgebende Punkte innerhalb der minimalen Beabstandung Delta (siehe Fig. 1), von denen jeder untersucht werden muß. Sobald ein Punkt von Schwarz in zusammengesetztes Schwarz umgewandelt worden ist, wird derselbe aus den CMY- (Farb-) Tinten hergestellt. Daher muß der Algorithmus diese neuen 138 Punkte untersuchen, die den Schwarzpunkt umgeben, um zu sehen, ob irgendwelche aus K-Tinte bestehen. Diese Prozeduren würden ohne weiteres das Überprüfen von Hunderten von Millionen oder sogar Milliarden von Punkten pro Seite erfordern. Die Verarbeitungszeit würde übermäßig sein, weshalb ein solcher Lösungsansatz nicht praktikabel ist.
- Das Verarbeitungsproblem wird weiter kompliziert, wenn das gesamte Bild nicht zur Bewertung zu einem Zeitpunkt verfügbar ist, wie z. B. wenn das Bild stückweise erzeugt wird. Ein stückweises Erzeugen des Bildes wird üblicherweise bei Computern mit einer begrenzten Speichermenge durchgeführt, um das Bild zu erzeugen. Durch Erzeugen nur eines Abschnitts des Bilds zu einem Zeitpunkt, was als Bandbetrieb bekannt ist, benötigt der Computer nur genug Speicher, um einen Abschnitt des erzeugten Bildes zu manipulieren, wobei jeder Abschnitt als ein Band bekannt ist. Nachdem der Computer ein einzelnes Band erzeugt hat, sendet er das Band zu dem Drucker, bevor er damit beginnt, das nächste Band des Bildes zu bilden. Auf diese Art und Weise kann das gesamte Bild mit einer Speichermenge erzeugt werden, die wesentlich geringer ist, als es erforderlich wäre, um das gesamte Bild auf einmal zu erzeugen, und zwar etwa 1/N der Menge des Speichers, wobei N gleich der Anzahl von verwendeten Bändern ist.
- Bei vielen Computerbetriebsumgebungen, z. B. Microsoft Windows, wird nur eine begrenzte Speichermenge verfügbar gemacht, um die Seite abzubilden, selbst wenn in dem Computer ausreichend Speicher existiert, um die gesamte Seite abzubilden. Zusätzlich schwankt die Menge an verfügbarem Speicher abhängig von der Anzahl von anderen Programmen, die gegenwärtig Speicher verwenden. Durch Erzeugen des Bildes in Bändern ist das Bandverfahren in der Lage, die Größe der Bänder dynamisch einzustellen, um sich an die Speichermenge anzupassen, die in dem Computer verfügbar ist.
- Die Komplikation für das Farbtrennverfahren entsteht an den Grenzen zwischen angrenzenden Bändern. Da nur ein einziges Band zu einem Zeitpunkt abgebildet wird, kennt das Bandverfahren nicht die Farbeigenschaften der Pixel in einem angrenzenden Band. Wenn beispielsweise in dem gegenwärtigen Band eine vertikale schwarze Linie an einer Bandgrenze aufhört, existieren keine Informationen innerhalb des gegenwärtigen Bandes, um zu bestimmen, ob eine Farbe in dem angrenzenden Band innerhalb der minimalen Beabstandung der Schwarzlinie vorhanden ist. Als Ergebnis kann nicht ohne eine bestimmte Kenntnis über zukünftige Bänder bestimmt werden, ob die Linie in echtem Schwarz oder in zusammengesetztem Schwarz gedruckt werden soll.
- Ein Ziel der vorliegenden Erfindung besteht daher darin, das Nischen von Farb- und Echtschwarz-Drucken innerhalb einer einzigen gedruckten Seite bei hoher Auflösung zu ermöglichen.
- Ein weiteres Ziel besteht darin, die Auflösung bei dem Vierfarbenflüssigtintendrucken auf normalem, nicht glänzendem Papier zu erhöhen.
- Noch ein weiteres Ziel besteht darin, die Verwendung von echter Schwarztinte im Gegensatz zu zusammengesetzter Schwarztinte bei Vierfarben- (CMYK-) Drucksystemen zu maximieren, während eine vorbestimmte minimale Beabstandung zwischen Echtschwarztinte und einer Farbtinte beibehalten wird, um die Druckqualität zu bewahren. Ein weiteres Ziel besteht darin, eine vorbestimmte minimale Beabstandung zwischen Echtschwarztinte und Farbtinte über Bandgrenzen bei Drucksystemen beizubehalten, die das Bandverfahren verwenden.
- Ein weiteres Ziel besteht darin, eine Stiftfehlausrichtung in einem Zwei-Stift-Vierfarbdrucksystem zu kompensieren.
- Ein weiteres Ziel besteht darin, die Verarbeitung von Bittabellen-Farbebenendaten (oder "Bitmap-Farbebenendaten") zu beschleunigen, um die Druckgeschwindigkeit in einem Farbdrucksystem zu steigern.
- Noch ein weiteres Ziel besteht darin, eine sehr schnelle Strategie zum Modifizieren von Bittabellenfarbebenendaten zu entwickeln und zu implementieren, um die Verwendung von Echtschwarztinte zu maximieren, während eine minimale Beabstandung zwischen Schwarztinte und Farbtinte beibehalten wird, und zwar dies alles ohne ein unangemessenes Verlangsamen des Druckverfahrens.
- Noch ein weiteres Ziel der Erfindung besteht darin, es Benutzern zu erlauben, Schwarz und Farbe auf der gleichen gedruckten Seite zu mischen. Es soll beispielsweise Benutzern erlaubt werden, einen Geschäftsbrief mit einem Farbbalkendiagramm in der Mitte einer Textseite zu drucken. Das Schwarz wird von dem Schwarzstift sein, während die Farben von dem Farbstift stammen.
- Das neue Verfahren trennt zu Anfang Daten, die Schwarz darstellen, von Daten, die Farbe darstellen. Daten, die Schwarz darstellen, werden aus den CMY-Ebenen in eine "K-Ebene" bewegt. Bei einem Vierfarbentintenstrahldrucker steuern die CMY-Ebenen ihre jeweiligen Farben in dem Farbstift, während die K-Ebene den K-Stift steuert.
- Im allgemeinen verlangt das vorliegende Verfahren für jedes Band zuerst das Identifizieren von Farbgraphikdaten in den Farb- (CMY-) Ebenen, die zusammengesetztes Schwarz darstellen (d. h. die entsprechenden Bits sind in allen drei CMY- Ebenen eingeschaltet) und das Ersetzen dieser Daten mit Daten in der K-Ebene. Dies wird auf eine Art und Weise durchgeführt, die eine vorbestimmte minimale Beabstandung Delta zwischen den K-Ebenenbits und den Farbebenenbits hält. Zu Anfang werden Daten über zusammengesetztes Schwarz von den CMY-Ebenen zu der K-Ebene bewegt, wodurch dieselben als Änderung nun "echtes" Schwarz darstellen, während sie vorher zusammengesetztes Schwarz darstellten. Dies kann jedoch nicht blind durchgeführt werden, da die neuen K-Ebenendaten in bestimmten Fällen die Begrenzung des minimalen Abstands verletzen würden. In solchen Fällen muß zusammengesetztes Schwarz verwendet werden. So erfaßt das Verfahren nun Verletzungen der minimalen Beabstandung und korrigiert dieselben. Der nächste Schritt besteht darin, die Daten neu zu überprüfen, um neue Beabstandungsverletzungen zu erfassen, die aus den Korrekturen resultieren, usw. Diese Neuüberprüfung kann rekursiv implementiert sein, obwohl dieselbe nicht notwendigerweise auf diese Art und Weise durchgeführt werden muß. Zusätzliche Details zum Ausführen dieser Verfahren mit hoher Geschwindigkeit, um den Druckerdurchsatz zu maximieren, werden offenbart.
- Im Falle von bandmäßigen Bildern ist das Verfahren kompliziert, da nicht die gesamten Bildinformationen ohne weiteres verfügbar sind. Wenn daher das gegenwärtige Band nicht das Endband auf der Seite ist, müssen somit für jedes Band die Schwarzdaten entlang der unteren Zeile des Bandes zu Anfang in einen unbestimmten Zustand, der als Fragezeichen bekannt ist, plaziert werden. Ein Fragezeichenbit zeigt Schwarz an, wobei es jedoch nicht bestimmt werden kann, ob dasselbe schließlich als echtes Schwarz oder als zusammengesetztes Schwarz gedruckt wird. Das Fragezeichen kann nicht gelöst werden, bis zumindest die oberste Zeile des nächstes Bandes untersucht worden ist. Da ferner das Fragezeichen schließlich als Farbe herauskommen kann (zusammengesetztes Schwarz ist eine Farbe) müssen alle Schwarzdaten innerhalb der minimalen Beabstandung des Fragezeichens ebenso als Fragezeichendaten neu bezeichnet werden. Dieses Verfahren des Ausbreitens von Fragezeichen ist analog zu dem des Ausbreitens von Farbe, wie es oben beschrieben wurde.
- Eine der Herausforderungen beim Durchführen der benötigten Farbtrennung besteht darin, die überwältigende Anzahl von Bits in den Bitebenen zu überwinden, die untersucht werden müssen. Diese Erfindung komprimiert die Daten zuerst in 8-Punkt-x-8-Punkt-Blöcken von Daten. Jeder dieser Blöcke ist auf einer Byte-Grenze, wodurch es dem Algorithmus ermöglicht wird, unter Verwendung von einzelnen Maschinenbefehlen 8 Punkte zu einem Zeitpunkt zu untersuchen. Ferner wird jeder 8-x-8-Block durch lediglich ein Bit in entweder einer Farbtabelle oder in einer Schwarztabelle dargestellt, oder es ist ein Bit in beiden Tabellen vorhanden, um einen Fragezeichenblock darzustellen. Byteoperationen auf die Farb- oder die Schwarz-Tabelle berücksichtigen somit 512 Punkte auf der Seite in einem Maschinenbefehl (jedes der 8 Bits in einem Byte von der Tabelle stellt 64 Punkte aus dem ursprünglichen 8-x-8-Block dar, d. h. 64 x 8 = 512).
- Ein Komprimieren der ursprünglichen CMY-Ebenen (von denen jede etwa 1 Megabyte aufweist) in die Farb- und die Schwarztabelle (welche jeweils 16 Kilobyte aufweisen) erlaubt es der Farbtrenntechnik, daß dieselbe schnell bestimmt, ob K- Tinte neben einer CMY-Tinte ist. Wenn ein Farbblock neben einem Schwarzblock ist, werden die Daten in dem Schwarzblock von der K-Ebene zurück zu den CMY-Ebenen bewegt. Dieser Prozeß ist vollständig, wenn keine Schwarzblöcke neben Farbblöcken sind, und wenn keine zurückbleibenden Fragezeichenblöcke da sind. Das Verfahren geht weiter, indem die Echtschwarzdaten und die Farbdaten untersucht werden, um Daten zu erfassen, die Schwarzpunkte darstellen, und zwar innerhalb einer vorbestimmten minmalen Beabstandung von Farbpunkten. Wenn solche Daten erfaßt sind, werden sie korrigiert, indem die problematischen Schwarzdaten als Zusammengesetztes-Schwarz-Daten zum Drucken in Farbtinte neu bezeichnet werden. Diese neuen Farbdaten können jedoch zu nahe an Schwarzdaten sein. So verlangt das Verfahren ferner eine Wiederholung des Untersuchungs- und Neubezeichnungsschritts, bis keine Schwarzpunkte innerhalb der minimalen Beabstandung von Farbpunkten erfaßt werden. Auf ähnliche Weise werden Fragezeichendaten in Farbdaten umgewandelt, da alles innerhalb einer vorbestimmten minimalen Beabstandung zu einer Farbe mit Farbe gedruckt werden muß.
- Eine ähnliche Schrittsequenz wird auf die Fragezeichendaten angewendet. Wenn Schwarzdaten innerhalb der minimalen Beabstandung von Fragezeichendaten sind, werden die Schwarzdaten als Fragezeichendaten neu bezeichnet. Wenn nach einer Untersuchung der Fragezeichendaten keine solchen Daten vorhanden sind, ist die Verarbeitung des Bandes vollständig, und das Band kann zu dem Drucker zum Drucken gesendet werden. Das Drucken der Daten umfaßt das Drucken der Echtschwarzdaten unter Verwendung von schwarzer Tinte, und das Drucken der Farbdaten, einschließlich der Bits mit zusammengesetztem Schwarz, unter Verwendung von Farbtinte, wodurch zumindest die minimale Beabstandung zwischen Schwarzpunkten und Farbpunkten auf der gedruckten Seite beibehalten wird.
- Im Falle nicht aufgelöster Fragezeichen wird das unbestimmte Band in einem Sekundärspeichergerät (z. B. einem Plattenlaufwerk) vorübergehend gespeichert, d. h. gespoolt, um auf zusätzliche Informationen zu warten. Vor dem Speichern des Bandes werden die Fragezeichenbits in Schwarzbits umgewandelt, da eine hohe Wahrscheinlichkeit vorhanden ist, daß die Fragezeichenbits sich schließlich als Schwarz herausstellen werden. Wenn jedoch der Fall auftritt, daß sich diese Annahme als falsch herausstellt, und daß beliebige der Fragezeichenbits sich als Farbbits auflösen, muß das gespoolte Band gestoppt werden, und das Band muß neu abgebildet werden. Vor dem Spoolen des Bandes zu dem Sekundärspeichergerät wird zusätzlich jede zusätzliche Verarbeitung, die normalerweise in dem Band durchgeführt wird, z. B. eine Kompression, eine Farbanpassung, eine Tintenentleerung oder eine Kantensteigerung, durchgeführt.
- Nachfolgend wird der Sekundärspeicher nach schwebenden gespoolten Bändern untersucht, welche basierend auf der Verarbeitung des gegenwärtigen Bandes aufgelöst werden können. Wenn irgendwelche schwebenden Bänder und verbleibende Fragezeichen zurückbleiben, werden keine schwebenden Bänder untersucht, da immer noch zusätzliche Informationen benötigt werden, weshalb das nächste Band angefordert wird. Wenn sich eine neue Farbe in eines der schwebenden Bänder ausgebreitet hat, d. h. es wurde unkorrekt angenommen, daß die Fragezeichen zu Schwarz aufgelöst werden, muß das schwebende Band weggeworfen werden, und das Band muß neu abgebildet werden. Wenn jedoch die Annahme korrekt ist, und die Fragezeichen als Schwarz aufgelöst werden, wird das schwebende Band zu dem Drucker zum Drucken auf die oben beschriebene Art und Weise weitergeleitet. Dieses Verfahren wird wiederholt, bis alle schwebenden Bänder untersucht worden sind.
- Detaillierter gesagt wird der Schritt des Untersuchens der Daten rasch durchgeführt, indem zuerst eine Blockgröße gleich der minimalen Beabstandung in sowohl der vertikalen als auch der horizontalen Abmessung ausgewählt wird. Nachfolgend werden die Eingangsdaten aufgeteilt, um eine Serie von Blöcken der ausgewählten Blockgröße zu definieren. Jede der Serien von Blöcken ist als Farbe, schwarz oder weiß bezeichnet. Nach dieser Handlung werden die Blockbezeichnungen untersucht, um Schwarzblöcke neben Farbblöcken zu erfassen. Wenn dies auftritt, werden die erfaßten Schwarzblöcke als Farbblöcke neu bezeichnet. Diese Schritte werden wiederholt, bis keine Schwarzblöcke neben Farbblöcken mehr erfaßt werden, wodurch zumindest die minimale Beabstandung zwischen Farbdaten und Schwarzdaten sichergestellt ist. Anschließend vervollständigt das Drucken der Sdhwarzblöcke unter Verwendung von Schwarztinte und das Drucken der Farbblöcke unter Verwendung von Farbtinten das Druckverfahren. Die verarbeiteten Daten können natürlich in einer Datei oder beispielsweise auf andere Art und Weise für eine zeitverschobene oder entfernte Druckoperation gespeichert werden.
- Die Bezeichnungen jedes Blocks als farbig, weiß oder schwarz oder Fragezeichen erscheinen in einer Farbtabelle, in einer Schwarztabelle bzw. in beiden Tabellen. Die Schwarztabelle weist eine Serie von Bits auf, wobei jedes Schwarztabellenbit einem jeweiligen der K-Ebenenblöcke entspricht, wobei dasselbe durch seinen binären Züstand anzeigt, ob der entsprechende K-Ebenenblock ein Schwarz-Block ist. Auf ähnliche Weise weist die Farbtabelle eine Serie von Bits auf, wobei jedes Farbtabellenbit einem jeweiligen der Farbebenenblöcke entspricht und anzeigt, ob der entsprechende Farbebenenblock ein Farbblock ist oder nicht.
- Für ein Fragezeichen werden die entsprechenden Bits in sowohl der Schwarz- als auch der Farb-Tabelle verwendet, da sich die zwei Tabellen sonst gegenseitig ausschließen. Diese Schritte liefern ein implizites Untersuchen der Daten mit hoher Geschwindigkeit durch Untersuchen der Farbtabellenund der Schwarztabelleneinträge.
- Für jedes Ein-Bit in der Farbtabelle, das einen Farbblock darstellt, verlangt das Verfahren das Untersuchen angrenzender Bits in der Farbtabelle wie folgt. Zuerst wird ein entsprechendes Schwarztabellenbyte getestet, um eine Anzeige eines Schwarzblocks links oder rechts des Farbtabellenbits zu erfassen, wodurch auf indirekte Art und Weise ein Schwarzblock neben dem Farbblock erfaßt wird. Das Verfahren umfaßt ferner das Testen von Schwarztabellenbytes direkt über und unter dem entsprechenden Schwarztabellenbyte, um beliebige benachbarte Ein-Bits zu erfassen, die benachbarte Schwarzblöcke anzeigen. Diagonal benachbarte Positionen in der Schwarztabelle werden genauso getestet. Das Verfahren wird auf ähnliche Art und Weise auf Fragezeichenblöcke neben Farbblöcken angewendet, wobei die resultierenden Fragezeichenblöcke in Schwarzblöcke umgewandelt werden. Auf ähnliche Art und Weise können Schwarzblöcke neben Fragezeichenblöcken ohne weiteres ermittelt werden.
- Die Erfindung umfaßt somit Verfahren zum Verarbeiten von Graphikeingangsdaten zur Ausgabe mit hoher Auflösung mit adäquater Farbtrennung. Die resultierenden Ausgangsdaten können verwendet werden, um eine CRT (CRT = Cathode Ray Tube = Kathodenstrahlröhre) oder ein anderes Farbanzeigegerät zu treiben, oder einen Flüssigtintendrucker zu steuern, wie es bei dem bevorzugten Ausführungsbeispiel dargestellt ist. Die neue Methode ist bei jeder Ausgabe- oder Bilderzeugungsanwendung nützlich, bei der eine Trennung einer "Farbe" oder Tinte (bei dem Beispiel Schwarz) von anderen Farben um zumindest eine minimale Beabstandung erwünscht ist.
- Die vorhergehenden und weitere Ziele, Merkmale und Vorteile der Erfindung werden aus der folgenden detaillierten Beschreibung eines bevorzugten Ausführungsbeispiels ohne weiteres offensichtlich, welche anhand der Zeichnungen dargelegt ist.
- Fig. 1 ist eine Darstellung eines Arrays von Tintenpunktpositionen auf einem Substrat, die eine Sechs- Punkt-Beabstandung um eine ausgewählte Punktposition darstellt.
- Fig. 2-4 stellen Beispiele gültiger Konfigurationen von Tintentropfen dar, die auf ein Substrat aufgebracht worden sind, wobei ein vorbestimmter minimaler Abstand (sechs Punkte) zwischen jedem Schwarzpunkt und jedem Farb- oder Zusammengesetztes-Schwarz-Punkt beibehalten wird.
- Fig. 5-6 stellen Beispiele von ungültigen Konfigurationen von Tintenpunkten dar, die auf ein Substrat aufgebracht worden sind, wobei bei jedem Beispiel zumindest ein Farb- oder ein Zusammengesetztes- Schwarz-Punkt weniger als die minimale Beabstandung von einem Schwarz-Punkt beabstandet ist.
- Fig. 7A stellt einen Abschnitt einer kombinierten Farb(CMY-) Ebene dar, welche geteilt ist, um drei Zeilen und acht Spalten von Blöcken zu bilden, wobei jeder Block aus acht Bytes an Daten besteht.
- Fig. 7B stellt einen Abschnitt einer Farbtabelle dar, bei der jedes Bit einem jeweiligen der Datenblöcke von Fig. 8A entspricht und anzeigt, ob der entsprechende Block irgendwelche Farbbits im EIN-Zustand hat.
- Fig. 8A stellt eine K- (Schwarz-) Ebene dar, welche aufgeteilt ist, um drei Zeilen mal acht Spalten von Blöcken auf dieselbe Art und Weise wie die Farbebene von Fig. 8A zu bilden.
- Fig. 8B stellt einen Abschnitt einer Schwarztabelle dar, in der jedes Bit einem jeweiligen der Datenblöcke von Fig. 9A entspricht und anzeigt, ob der entsprechende Block irgendwelche K-Bits im EIN-Zustand aufweist.
- Fig. 9 ist ein Flußdiagramm auf hoher Ebene der Schritte, die für jedes der Bänder, die von einem bandmäßigen Bild empfangen werden, durchgeführt werden.
- Fig. 10 ist ein Konzeptionsdiagramm, das ein Verfahren gemäß der vorliegenden Erfindung zur Verarbeitung von CMY-Farbdaten zum Drucken durch ein Vier-Farben- (CMYK-) Flüssigtintendrucksystem darstellt, um die Verwendung von Schwarztinte zu maximieren, während eine vorbestimmte Minimalbeabstandung zwischen Schwarzblöcken und Farbblöcken beibehalten wird.
- Fig. 11 ist ein Flußdiagramm eines Verfahrens zum Bestimmen, ob ein gegebener Datenblock farbig, weiß oder schwarz ist, d. h. ob ein gegebener Block durch den Farbstift oder den Schwarzstift gedruckt werden sollte.
- Fig. 12 stellt einen Abschnitt einer Farbtabelle dar, bei der ein Bit EIN ist, und identifiziert die relevanten umgebenden Bits in der entsprechenden Schwarztabelle.
- Fig. 13A ist ein Abschnitt einer Farbtabelle mit zwei Bits im EIN-Zustand.
- Fig. 13B ist die Farbtabelle von Fig. 13A, wobei die Nachbarbits der gleichen Zeile EIN-geschaltet worden sind (eine "Maske").
- Fig. 13C ist ein Abschnitt einer Schwarztabelle, die den Fig. 13A und 13B entspricht.
- Fig. 13D zeigt die resultierende Maske nach der logischen UND-verknüpfung der Schwarztabelle von Fig. 13C mit der Maske von Fig. 13B.
- Fig. 14A zeigt einen Abschnitt einer Farbtabelle, bei der das am meisten links angeordnete Bit eines Bytes EIN ist.
- Fig. 14B ist ein Abschnitt einer Schwarztabelle, die der Farbtabelle von Fig. 14A entspricht und durch drei Einsen drei Bits neben dem EIN-Bit von Fig. 14A anzeigt.
- Fig. 14C ist ein Abschnitt einer Farbtabelle, bei der das Bit ganz rechts eines ausgewählten Bytes EIN ist.
- Fig. 14D ist ein Abschnitt einer Schwarztabelle, die der Farbtabelle von Fig. 14C entspricht und durch Einsen die Bits neben dem EIN-Bit von Fig. 14C anzeigt.
- Fig. 15 zeigen ein Flußdiagramm eines Verfahrens zum Un bis 17 tersuchen der Farbtabelle und der Schwarztabelle, um Schwarzblöcke zu erfassen, welche Farbblöcken benachbart sind.
- Fig. 18 ist ein Flußdiagramm eines Verfahrens zum Bewegen von ausgewählten Daten von der Schwarzebene in die Farbebenen, um Verletzungen der minimalen Beabstandung zu korrigieren.
- Fig. 19A bis 19D zeigen ein Flußdiagramm eines Verfahrens zum Untersuchen der Schwarz- und der Farbtabellen, um Schwarzblöcke zu erfassen, welche Fragezeichenblöcken benachbart sind.
- Fig. 20 zeigt ein Flußdiagramm eines Verfahrens zum Untersuchen von jedem der gespoolten Bänder, um die Handlung zu bestimmen, die für jedes erforderlich ist.
- Fig. 21 zeigt ein Flußdiagramm eines Verfahrens zum Bestimmen der Handlung, die für das gegenwärtige Band erforderlich ist.
- Fig. 22 zeigt ein Flußdiagramm eines Verfahrens zum Entfernen der Fragezeichenblöcke aus der Farbtabelle.
- Fig. 23 bis 25 stellen einen Betrieb der Erfindung dar, wie sie auf ein spezifisches Beispiel eines Graphikbildes angewendet wird.
- Fig. 26 zeigt ein bandrnäßiges Bild mit den Bandgrenzen, die als horizontale Linien über der Seite gezeigt sind.
- Die Farben Cyan, Magenta und Gelb werden als CMY bezeichnet. Schwarz wird als K bezeichnet (K statt B, um keine Verwechslung dieser Farbe mit Blau zu ermöglichen). Bei einem Beispiel eines Druckers, der in Verbindung mit der vorliegenden Erfindung geeignet ist, werden zwei Stifte bereitgestellt, wobei einer die Farbtinten CMY enthält, während der andere eine Schwarztinte enthält. Diese werden der Farbstift bzw. der Schwarzstift bezeichnet. Schwarz, das auf der Seite unter Verwendung des Farbstifts (d. h. als Kombination von CMY) gedruckt wird, wird zusammengesetztes Bchwarz oder Prozeßschwarz genannt. Nachfolgend wird Schwarz, das auf die Seite unter Verwendung des Schwarzstiftes gedruckt wird, einfach Schwarz genannt.
- Ein Punkt (ebenfalls ein Pixel genannt) ist der kleinste Einheitsbereich der Seite, in den ein Stift Tinte plazieren kann. Ein kommerzielles Ausführungsbeispiel der Erfindung liefert beispielsweise ein Drucken bei einer Auflösung von 300 Punkten pro Zoll (DPI) sowohl vertikal als auch horizontal.
- Die Eingangsdaten in ein Drucksystem oder die Druckdaten zeigen an, wo Tinte auf der gedruckten Seite plaziert werden soll, und zwar in der Form von Bittabellenebenen oder "Bitmap-Ebenen". Eine Ebene ist gedanklich ein zweidimensionales Array von Bits, das einer speziellen zu druckenden Seite entspricht. Jede Ebene enthält die Daten für eine Farbe. Es können drei Farbebenen vorhanden sein, wie z. B. für CMY, wie es oben erwähnt wurde. Jede erwünschte Farbe kann durch Kombinationen dieser Farben erreicht werden. Andere Systeme können RGB- (rot-grün-blau) Farbebenen verwenden, wie es bei Videoanzeigesystemen üblich ist. Jedes Bit in einer Ebene stellt eine Punktposition auf der Seite dar. Wenn das Bit Ein ist (Wert 1) wird die Tinte für diese Farbebene für diesen Punkt gedruckt. Wenn das Bit Aus (Wert 0) ist, wird für diese Farbebene für diesen Punkt nichts gedruckt. Da alle drei Farbebenen in dieser Beschreibung häufig gemeinsam betrachtet werden, wird darauf hingewiesen, daß die Bezeichnung "ein Bit in den Farbebenen" die entsprechenden Bits (d. h. die mit der gleichen Zeilen/Spalten-Position) in allen drei Ebenen meint. Auf ähnliche Weise sei darauf hingewiesen, daß "ein Block von Daten in den Farbebenen" die entsprechenden Blöcke von Daten in allen drei Farbebenen meint. Bei bestimmten Systemen können Eingabedaten vier Ebenen aufweisen, und zwar eine für jede der Farben CMY und eine für Schwarz (K). Alternativ kann die K-Ebene aus den CMY-Farbebenen abgeleitet werden, wie es nachfolgend erklärt wird.
- Ein Bild kann aus getrennten Segmenten oder Bändern des Bildes bestehen. Das Bild wird typischerweise in Bänder gebrochen, wenn Speicherbegrenzungen innerhalb des Computers oder des Druckers vorhanden sind, welche es nicht erlauben, daß das gesamte Bild zu einem Zeitpunkt im Speicher liegt.
- Die CMY-Tinten und die K-Tinte schließen sich gegenseitig aus, d. h. ein Punkt kann entweder eine bestimmte Kombination von CMY-Tinten oder eine K-Tinte oder keine Tinte haben, es kann jedoch niemals eine Kombination von CMY-Tinten und einer K-Tinte vorhanden sein. Demgemäß kann ein Punkt eine und nur eine der folgenden Möglichkeiten zum Drucken auf demselben aufweisen:
- 1. Nichts. Der Punkt ist weiß oder leer.
- 2. Eine Kombination von Tinte aus dem Farbstift, d. h. CM oder Y, jedoch nicht alle drei. Dies ist ein Farbpunkt.
- 3. Eine Kombination aller drei Tinten von dem Farbstift, d. h. CM und Y. Dies ist ein Punkt mit zusammengesetztem Schwarz.
- 4. Tinte von dem Schwarzstift. Dies ist ein Schwarzpunkt.
- Es existiert eine weitere Begrenzung, wo die CMY- und die K-Tinten auf der Seite plaziert werden können. Zum einen ist es nicht möglich, daß die CMY- und K-Tinten auf dem gleichen Punkt plaziert werden können, zum anderen können dieselben nicht innerhalb eines vorbestimmten minimalen Abstands voneinander vorhanden sein. Diese Anforderung nach minimalem Abstand variiert mit der Druckumgebung (z. B. mit der Papierqualität, mit der Temperatur, mit der Feuchtigkeit, usw.). Ein nützlicher minimaler Abstand beträgt zwei oder drei Punkte. Das Problem, wie nah die CMY-Tinten zu der K-Tinte plaziert werden können, ist durch die Tatsache kompliziert, daß, wenn zwei Stifte in einem tatsächlichen Drucker positioniert sind, dieselben fehl-ausgerichtet sein können. Diese Fehlausrichtung kann sich zu einer Strecke, die zu zwei oder drei Punkten äquivalent ist, erstrecken. Folglich beträgt bei dem bevorzugten Ausführungsbeispiel die minimale Trennung zwischen den CMY-Tinten und der K- (Schwarz-) Tinte sechs Punkte (oder Pixel). Im allgemeinen wird die minimale Beabstandung als Delta bezeichnet. Die tatsächliche Anzahl von Punkten hängt von der Anwendung ab.
- Der Abstand sechs Punkte ist ein linearer Abstand, z. B. 1/50 eines Zoll (bei 300 DPI), welcher ebenfalls für Diagonalmessungen verwendet wird. Fig. 1 stellt ein Array von Punktpositionen auf einem im allgemeinen planaren Substrat, wie z. B. einem Blatt Papier, dar. Jede Punktposition ist durch einen kleinen nicht ausgefüllten Kreis dargestellt, und zwar mit Ausnahme eine Punktposition, bei der der Kreis mit Schwarz ausgefüllt ist. Ein Kreis um die ausgefüllte Schwarzpunktposition stellt einen Radius von sechs Punkten dar. Wenn das Punktarray, das dargestellt ist, 300 DPI aufweisen würde, würde der Radius des Kreises etwa 1/50 eines Zoll betragen.
- Wenn die ausgefüllte Schwarzpunktposition einen Punkt mit Schwarztinte darstellt, dann zeigt der Kreis an, welche der umgebenden Punkte nicht farbig sein können, oder kein zusammengesetztes Schwarz haben können. Somit darf jede Punktposition, die auf oder innerhalb des Kreises ist, nicht durch den Farbstift gedruckt werden. Wenn dagegen der Punkt in der Mitte des Kreises eine Farbe oder ein zusammengesetztes Schwarz darstellt, dann sollte kein Punkt, der auf oder innerhalb des Kreises ist, mit dem Schwarzstift gedruckt werden.
- Eine gültige Konfiguration von Punkten auf einer Seite ist eine, die keine CMY-Tinte innerhalb von Delta um einen Punkt aus K-Tinte aufweist. Die Fig. 2 bis 4 geben Beispiele von gültigen Konfigurationen von Tintentropfen auf einer Seite. In diesen Figuren stellen ausgefüllte Schwarzkreise einen schwarzen Punkt (K-Tinte) dar, während schraffierte oder schattierte Kreise Farbpunkte oder Punkte mit zusammengesetztem Schwarz (CMY-Tinte) darstellen, und nicht ausgefüllte Kreise weiße Punkte (keine Tinte) darstellen. Die Fig. 5 bis 7 stellen ungültige Konfigurationen dar. In jeder dieser Figuren liegt zumindest ein Punkt mit CMY-Tinte innerhalb von Delta (hier sechs Punkte) bezüglich eines Schwarzpunkts. Wo die Eingangsdaten in ein Drucksystem Tintentropfen darstellen, die ungültig sind, d. h. die eine der obigen Beschränkungen verletzen, müssen die Daten vor dem Drucken modifiziert werden, um die Druckqualität beizubehalten.
- Da die Bitebenendaten die Tinten darstellen, die auf der Seite gedruckt werden sollen, können die Beschränkungen, die oben beschrieben wurden und die das überlappen und die minimale Beabstandung zwischen Farb- und Schwarztinten betreffen, zweckmäßigerweise implementiert werden, indem die Beschränkungen auf entsprechende Daten in den Bitebenen angewendet werden. Es kann beispielsweise ein Bit vorhanden sein, das für den gleichen Punkt in der C- und der M-Ebene eingeschaltet ist. Es kann niemals ein Bit vorhanden sein, das in der K-Ebene und in einer der CM- oder Y-Ebene für den entsprechenden Punkt eingeschaltet ist (oder zum Druckzeitpunkt eingeschaltet gelassen wird), da dies die Beschränkung verletzen würde, daß die CMY-Tinten und die K-Tinte sich gegenseitig ausschließen müssen. Wenn dasselbe Bit in allen drei Ebenen CMY eingeschaltet ist, stellt dies einen Punkt mit zusammengesetztem Schwarz dar. Wenn kein Bit in einer Ebene für einen Punkt Ein ist, ist dies ein leerer Punkt (ein weißer Raum). Um nun schließlich die Beschränkung des minimalen Abstands zu implementieren, wenn ein Bit in der K-Ebene eingeschaltet ist, darf kein Bit in der CM- oder der Y-Ebene innerhalb von sechs Punkten der entsprechenden Bitposition eingeschaltet sein.
- Das Verfahren wird vorzugsweise softwaremäßig implementiert, obwohl eine spezielle Hardware oder eine Kombination der beiden verwendet werden könnte. Ein geeigneter Code kann ausgeführt werden, um die Druckdaten an einer beliebigen zweckmäßigen Position zu verarbeiten. Dies kann beispielsweise in einem "Druckertreiber"-Programm in einem Computer oder in der Software des Druckers selbst implementiert sein. Bei dem bevorzugten Ausführungsbeispiel sind drei Hauptdatenstrukturen definiert: die K-Ebene, die Farbtabelle und die Schwarztabelle. Dies wird nachfolgend detailliert erörtert.
- Die K-Ebene stellt, wie es vorher angemerkt wurde, dar, wo der Schwarzpunkt auf der Seite zu verwenden ist. Jedes Bit in der K-Ebene stellt einen Punkt auf der gedruckten Seite dar. Die K-Ebene weist somit die gleichen Abmessungen wie die Farbebenen auf. Wenn ein Bit in der K-Ebene Ein ist, kann keiner der entsprechenden Bits in den CMY-Ebenen Ein sein, und es kann keiner der CMY-Ebenen-Bits innerhalb von Delta um das K-Ebenen-Bit herum Ein sein. Die K-Ebene wird durch ein Bezugszeichen 60 in dem Diagramm von Fig. 10 dargestellt. Wo die Bandverarbeitung verwendet wird, weisen sowohl die K-Ebene als auch die CMY-Ebenen Abmessungen auf, die gleich der Bandgröße sind.
- Die Farbtabelle ist eine komprimierte Darstellung der CMY- Ebenen. Es ist wichtig, die Beziehung zwischen der Farbtabelle und den CMY-Ebenen zu verstehen. Jedes Bit in der Farbtabelle stellt einen vorbestimmten Teilsatz der CMY-Ebenen dar. Insbesondere stellt jedes Tabellenbit ein angrenzendes rechteckiges Array von Bits in den CMY-Ebenen dar, das ein Block genannt wird. Um das Konzept darzustellen, wenn die Farbebenen-Abmessungen von 50 mal 100 Bits haben, könnten sie beispielsweise in vier gleiche angrenzende rechteckige Arrays (Blöcke) von 25 mal 50 Bits pro Block aufgeteilt werden. In anderen Worten würde jeder Block ein Quadrant der Farbebenen sein. Wenn jeder derartige Block durch ein Bit in einer Farbtabelle dargestellt ist, würde die Farbtabelle 2 mal 2 Bits haben. Es ist zu sagen, daß die Farbdaten bei dieser Darstellung um einen Faktor 1250 (d. h. 25 mal 50 Bits in ein Bit) komprimiert sind. (Es existiert ein zusätzlicher Faktor von drei, und zwar deshalb, da die drei Farbebenen (CMY) in eine komprimiert sind, was eine gesamte "Kompression" von 3750:1 ergibt.)
- Für ein sehr schnelles Verarbeiten ist es jedoch vorteilhaft, die Farbebenendaten auf eine Art und Weise, die auf der Hardwarebytegröße basiert, zu "komprimieren", d. h. in anderen Worten, um eine Blockgröße für eine spezielle Anwendung zu definieren, um Maschinenbefehlszyklen zu minimieren, wie es für Fachleute in der Computerwissenschaft vertraut ist. Da viele Prozessoren ein 8-Bit-Byte verwenden, stellt jedes Bit in der Farbtabelle bei einem bevorzugten Ausführungsbeispiel ein 8-Bit-mal-8-Bit-Array in den CMY-Ebenen dar. Die Größe eines Blocks beträgt bei dem bevorzugten Ausführungsbeispiel also 8 Bits mal 8 Bits. Die einzelnen Farbebenen sind durch Bezugszeichen 54, 56 und 58 in Fig. 10 dargestellt. Die Farbtabelle ist in der gleichen Figur mit 62 bezeichnet.
- Zusätzlich ist die Blockgröße ausgewählt, um zumindest gleich der minimalen Beabstandung zu sein, die zwischen Farbpunkten und Schwarzpunkten erforderlich ist. Es sei in Erinnerung gerufen, daß jedes Datenbit in der Farb- und in der K-Ebene einer Punktposition auf der gedruckten Seite entspricht. Somit ist eine 8-Bit-mal-8-Bit-Blockgröße adäquat, da sie sowohl in der vertikalen als auch der horizontalen Abmessung die minimale Tintenbeabstandungsanforderung von sechs Punkten, welche oben beschrieben wurde, überschreitet. Somit stellt ein weißer Block zwischen einem Farb- und einem Schwarzblock zumindest die minimale Beabstandung sicher. Wenn beispielsweise die Farbtabelle ein Nullbit aufweist, was anzeigt, daß kein Farbbit für einen speziellen Block vorhanden ist, dann würde es erlaubt sein, eine Schwarztinte auf einer Seite dieses Blocks zu haben, und eine Farbtinte oder mehrere Farbtinten auf der anderen Seite dieses Blocks zu haben, da zumindest 8 weiße Bits dazwischen sein würden (in dem dazwischenliegenden Block). Dies überschreitet die minimale Beabstandungsanf orderung von 6 Punkten, wobei der Bedarf überflüssig wird, explizit jedes der dazwischenliegenden Bits zu überprüfen.
- Fig. 8A stellt das Konzept einer "kombinierten" Farbebene dar. Eine derartige kombinierte Farbebene von Daten kann nicht tatsächlich gebildet werden, sie ist jedoch hier zum Erklären nützlich, wie Daten gemäß der Erfindung verarbeitet werden. Die kombinierte Ebene stellt die logische ODER-Funktion aller drei (CMY-) Farbebenen dar, außer, daß dieselbe Bits ausschließt (d. h. als Null oder Aus anzeigt), welche in allen drei Farbebenen sind. In dieser Hinsicht ist es nicht genau die Logikfunktion: C ODER M ODER Y. Es ist dagegen die Logikfunktion C ODER M ODER Y UND NICHT (C UND M UND Y). Wenn somit ein spezielles Bit in irgendeiner der drei Farbebenen, jedoch nicht in allen drei Farbebenen ist, dann wird das entsprechende Bit in der kombinierten Farbebene sein. Diese kombinierte Ebene zeigt daher eine Farbe an, jedoch nicht ein zusammengesetztes Schwarz. Die Daten sind geteilt, um ein regelmäßiges Array von Blöcken zu definieren. In der Figur existieren drei Zeilen (mit 1 bis 3 numeriert) mal acht Spalten (mit 1 bis 8 numeriert) in dem Array. Jeder Block besteht aus acht Bits von Daten.
- Fig. 8B zeigt drei Bytes einer Farbtabelle, die der kombinierten Farbebene von Fig. 8A entspricht. Jedes Byte in Fig. 8B entspricht einer Zeile in Fig. 8A. Jedes Bit entspricht einem Block von Daten. In Fig. 8A sei bemerkt, daß beispielsweise der 8-mal-8-Block für Zeile 1, Spalte 1 der Farbebene eingeschaltete Bits (Wert 1) aufweist, weshalb das Bit, das diesen Block in der Farbtabelle darstellt, ebenfalls eingeschaltet ist. Blöcke in der Farbebene, die keine eingeschalteten Bits haben (Wert 0), sind in der Farbtabelle mit einer Null dargestellt, wie es oben bemerkt wurde. Selbst wenn nur ein Bit in einem Block eingeschaltet ist, wie es in Zeile 3, Spalte 2 erscheint, ist das entsprechende Bit in der Farbtabelle eingeschaltet. Die Farbtabelle von Fig. 8B zeigt daher an, welche Blöcke in den CMV-Farbebenen eine Farbe, jedoch nicht zusammengesetztes Schwarz, aufweisen.
- Die Schwarz-Tabelle ist eine komprimierte Darstellung er K-Ebenen-Daten. Die gleiche 8-Bit-mal-8-Bit-Blockgröße wird wie bei der Farbtabelle verwendet. Demgemäß haben die Schwarztabelle und die Farbtabelle die gleiche Größe, wobei jede Bitposition in jeder Tabelle der gleichen Blockposition in der K-Ebene bzw. in den Farbebenen entspricht. Fig. 9 zeigt die Beziehung zwischen der K-Ebene (Fig. 9A) und der entsprechenden Schwarz-Tabelle (Fig. 9B). Die Beziehung ist im wesentlichen die gleiche wie die, die bezüglich Fig. 8 beschrieben wurde, wobei es in Erinnerung zu halten ist, daß alle drei Farbebenen (nicht einzeln gezeigt) die Farbtabelle beeinflussen, während die Schwarztabelle lediglich die einzige K-Ebene wiedergibt.
- Obwohl sich Farbe und Schwarz gegenseitig ausschließen, ist es möglich, daß entsprechende Bits sowohl in der Farbtabelle als auch in der Schwarztabelle Ein sind. Es wird auf diese Art und Weise angezeigt, daß sich ein Block in dem Fragezeichenzustand befindet, und daß bei ihm als solchem nicht abschließend bestimmt werden kann, ob der Block farbig oder schwarz ist. Dies ist jedoch nur eine vorübergehende Situation, welche vor dem Drucken gelöst wird.
- Bei einem bevorzugten Ausführungsbeispiel ist es vorteilhaft, sowohl die Farb- als auch die Schwarztabelle mit einem Zusatzbyte (entlang dem oberen, dem linken, dem rechten und dem unteren Rand des Arrays) zu umgeben. Diese Zusatzbytes sind nicht wesentlich, sie vereinfachen jedoch den Umgang mit speziellen Fällen zum Durchführen von Beabstandungsüberprüfungen (nachfolgend detailliert erläutert) entlang den Tabellenrändern. Wo im wesentlichen ein Zusatzbyte entlang einem Rand einer Tabelle vorgesehen ist, können alle tatsächlichen Daten, wie nachfolgend erläutert, verarbeitet werden, ohne daß entlang den Rändern der tatsächlichen Daten "Daten ausgehen". Eine Verwendung dieser Rand- oder Begrenzungsbytes wird für Fachleute in der Computerwissenschaft im Lichte dieser Beschreibung und der beigefügten Zeichnungen offensichtlich sein.
- Fig. 9 liefert einen überblick über die gesamte Sequenz, die ausgeführt wird, wenn jedes Band des Bildes empfangen wird. Dieses Verfahren beginnt mit einem Schritt 201, in dem das gegenwärtige Band der CMY-Bilddaten in einen Speicher geladen wird. Das Band wird in einem Schritt 209 zuerst überprüft, um zu sehen, ob es das erste Mal oder als Ergebnis einer sogenannten "neuen Farbe", die sich in das gegenwärtige Band ausgebreitet hat (siehe Schritt 214), geladen wird. Diese Situation wird dadurch angezeigt, ob die Tabellen bereits das gegenwärtige Band wiedergeben, d. h. sind die Tabellen "fertig". Wenn die Tabellen für das gegenwärtige Band bereits aufgebaut sind, wird das zusammengesetzte Schwarz in den CMV-Daten direkt in die K-Ebene gemäß den Schwarztabellen in einem Schritt 211 bewegt, wobei die resultierenden Daten zu dem Drucker zum Drucken in einem Schritt 213 gesendet werden.
- Wenn die Tabellen nicht "fertig" sind, werden die Farb- und die Schwarztabelle aktualisiert, um in einem Schritt 203 das gegenwärtige Band zu umfassen. Aus diesen neuen Bildinformationen wird in einem Schritt 205 die K-Ebene aufgebaut. Anschließend wird in einem Schritt 207 das gegenwärtige Band geprüft, um zu sehen, ob es das letzte Band auf der Seite ist. Wenn das nicht der Fall ist, werden die Schwarzblöcke in der unteren Zeile des gegenwärtigen Bandes in einem Schritt 212 durch Einschalten des entsprechenden Farbbits in der Farbtabelle in Fragezeichen umgewandelt. In einem Schritt 214 werden die Tabellen dann untersucht, um Nachbarschaftsverletzungen zu erfassen, und wenn solche erfaßt werden, um dieselben durch Bewegen von Schwarzblöcken neben Farbblöcken zurück in die CMY-Ebenen zu korrigieren.
- Nachfolgend werden analog zu dem Schritt 214 in einem Schritt 216 die Tabellen untersucht, um Schwarzblöcke neben Fragezeichenblöcken zu erfassen, und wenn solche erfaßt sind, in Fragezeichenblöcke einzustellen. Sobald die Tabellen aktualisiert sind, um das neue Band wiederzugeben, überprüft das Verfahren bezüglich gespoolter Bänder, und wenn solche erfaßt werden, wird mit dem ältesten Band begonnen, wobei die Handlung bestimmt wird, die für jedes gespoolte Band benötigt wird, was in einem Schritt 218 stattfindet. Es ist während des Schritts 218, daß das Band neu abgebildet wird, wenn das Band mit unkorrekten Bilddaten gespoolt wurde. Nachfolgend bestimmt das Verfahren in einem Schritt 220, welche Handlung für das gegenwärtige Band erforderlich ist. Während des Schritts 220 wird das Band gespoolt, wenn existierende Fragezeichen vorhanden sind. Der abschließende Schritt für das gegenwärtige Band ist der Schritt 222, welcher darin besteht, die Fragezeichen für die Tabellen zu entfernen. Wenn das gegenwärtige Band das abschließende Band auf der Seite ist (Schritt 224), ist das Verfahren vollendet (Schritt 226), während andererseits die vorher erwähnten Schritte wiederholt werden. Jeder der Schritte, die in Fig. 9 gezeigt sind, werden nachfolgend detailliert erläutert.
- Fig. 10 liefert einen überblick der obigen Datenstrukturen und ihrer Beziehungen zu den Hauptschritten bei dem neuen Farbtrennverfahren. Die Hauptschritte lauten im allgemeinen folgendermaßen. Zuerst wird in einem Schritt 52 die Farbund die Schwarztabelle gebaut, die in einem komprimierten Format CMY- und K- (Schwarz) Regionen auf der gedruckten Seite bis zu und einschließlich des gegenwärtigen Bandes darstellen. Ebenfalls wird eine anfängliche K-Ebene von Daten aufgebaut. Anschließend werden in einem Schritt 66 sowohl die Farb- als auch die Schwarztabelle untersucht, um Farbblöcke neben Schwarzblöcken zu erfassen. Wenn eine solche Nachbarschaft erfaßt ist, wird ein einem Farbblock benachbarter Schwarzblock durch Bewegen der entsprechenden K-Ebenen-Daten in die Farbebenen zum Drucken als zusammengesetztes Schwarz in einen Schwarzblock verändert (ebenfalls Teil des Schritts 66), wodurch die Anforderungen nach minimaler Tintenbeabstandung durchgesetzt werden. Anschließend sind keine Schwarzblöcke neben Farbblöcken vorhanden, weshalb die Verarbeitung vollendet ist, und die Farbtrennung fertig ist (Schritt 68).
- Zu Anfang werden die CMY-Ebenen 54, 58, 56 mit dem Bildband, das zu drucken ist, durch das Fenstersystem oder eine Anwendung geladen. Wenn Schwarz gedruckt werden soll, wird das gleiche Bit in den CM- und Y-Ebenen Ein sein. In einem Schritt 52 werden die CMY-Ebenen gelesen, und die Schwarzund die Farbtabelle werden, wie nachfolgend ausgeführt, erzeugt. Ebenfalls wird die anfängliche K-Ebene 60 erzeugt. Diese anfängliche K-Ebene ist ein erster Versuch beim Durchführen einer Farbtrennung, dieselbe kann jedoch später modifiziert werden. Obwohl die CMY-Ebenen jedesmal überschrieben werden, wenn ein neues Band empfangen wird, bleiben die Farb- und die Schwarztabelle, wobei sie lediglich mit den neuen Informationen aktualisiert werden. Die Tabellen sind dimensioniert, um ein vollständiges Bild oder eine Seite darzustellen, selbst wenn nur ein Band zu einem Zeitpunkt verarbeitet wird. Zu Anfang wird jeder Block auf korrekte Art und Weise bezeichnet sein, daß derselbe entweder schwarz, farbig oder weiß ist. In dieser Stufe wird weder ein Versuch unternommen (Schritt 52), benachbarte Blöcke zu betrachten, d. h. ein Farbblock neben einem Schwarzblock, noch ein Versuch, die Unsicherheit an der Bandgrenze zu berücksichtigen. Nachfolgend werden diese Prozeduren detaillierter beschrieben.
- Beim Aktualisieren der Farbtabelle, der Schwarztabelle und der K-Ebene werden die CMY-Ebenen in 8-Bit-mal-8-Bit-Blöcken untersucht. Zu Anfang wird jeder Block bezeichnet, als ob er einen (und nur einen) der folgenden drei Zustände aufweist:
- 1. Farbe. Ein "Farbblock" hat eine bestimmte Kombination von CM- oder Y-Tinten, jedoch nicht alle drei, auf zumindest einem Pixel in den CMY-Ebenen. Wenn ein Punkt in dem Block farbig ist, ist der gesamte Block farbig. Ein Farbblock ist durch eine 1 und oder durch ein Ein-Bit in der Farbtabelle gezeigt.
- 2. Schwarz. In einem "Schwarzblock" sind die gleichen (entsprechenden) Pixel in allen drei Farbebenen für zumindest eine Punktposition Ein. Ein Schwarzblock ist durch eine 1 oder durch ein Ein-Bit in der Schwarztabelle angezeigt.
- 3. Weiß. Es existieren keine Ein-Pixel in einem Weiß-Block. Ein "Weißblock" ist durch Nullen oder Aus-Bits in der entsprechenden Position in sowohl der Farb- als auch der Schwarztabelle angezeigt.
- Fig. 11 ist ein Flußdiagramm eines Verfahrens zum Herstellen dieser Zustandsbestimmungen, um die Farb- und die Schwarztabelle zu bauen. Für das erste Band werden die Farb- und die Schwarztabelle insgesamt zu Null gesetzt. Das Verfahren, das durch das Flußdiagramm von Fig. 11 dargestellt ist, wird einmal für jeden 8-mal-8-Block von Daten durchgeführt. Jedes Byte in dem Block wird untersucht, bis bestimmt werden kann, welcher der drei Zustände, Farbe, Schwarz oder Weiß, für den Block maßgeblich ist. In dieser Beschreibung wird der gerade untersuchte Block der "gegenwärtige Block" genannt.
- Bezugnehmend auf Fig. 11 zeigt eine Variable, die Zeile genannt wird, an, welches Byte (in dem gegenwärtigen Block) gerade untersucht wird. Das angezeigte Byte wird als das "gegenwärtige Byte" bezeichnet. Die Prozedur beginnt in einem Schritt 70, durch Setzen von Zeile gleich 1, wobei das erste Byte des gegenwärtigen Blocks dargestellt ist. Ein Schritt 72 testet das Ende des Blocks, vorausgesetzt, daß ein Block nur acht Zeilen hat. Da Zeile nicht gleich 9 ist, geht das Verfahren zu einem Schritt 74. Der Schritt 74 überprüft, ob das C-, das M- oder das Y-Byte ungleich Null ist. Wenn das gegenwärtige Byte in jeder CMY-Ebene Null ist, dann stellt das gegenwärtige Byte einen weißen Raum dar. In diesem Fall wird über einen Schritt 96 zu dem nächsten Byte in dem Block durch Inkrernentieren von Zeile in dem Schritt 92 weitergegangen.
- Wenn alternativ das gegenwärtige Byte in irgendeiner der C-, der M- oder Y-Ebene nicht gleich Null ist, dann ist das gegenwärtige Byte entweder ein Farbbyte oder ein Schwarzbyte. Der Schritt 76 bestimmt, welches Byte das gegenwärtige Byte ist. Wenn das C-Ebenen-Byte gleich dem M- und dem Y-Ebenen- Byte ist, dann ist dieses Byte zusammengesetztes Schwarz.
- Daten, die dem gegenwärtigen Zusammengesetztes-Schwarz-Block entsprechen, sind gegenwärtig in der C-, der M- und der Y-Ebene dargestellt. Ein Schritt 78 kopiert die Daten von der C-Ebene (eine beliebige Farbebene) zu der K-Ebene. Da nun Daten in der K-Ebene sind, wird das entsprechende Bit in der Schwarz-Tabelle eingeschaltet (ebenfalls in dem Schritt 78). In einem Schritt 80 werden die entsprechenden Bytes in den CMY-Ebenen zu Null gesetzt (gelöscht), da die Daten nun in der K-Ebene dargestellt sind. Somit wurden für das gegenwärtige Byte die Daten von den CMY-Ebenen zu der K-Ebene bewegt. Das Verfahren springt nun zu einem Schritt 82, um das nächste Byte in dem gegenwärtigen Block zu untersuchen. Die vorangegangenen Schritte 92, 72, 74, 76, 78 und 80 werden solange wiederholt, wie Bytes mit zusammengesetztem Schwarz gefunden werden.
- Wenn (oder sobald) der Schritt 76 bestimmt, daß das gegenwärtige Byte ein Farbbyte ist, d. h. daß Bits in CM oder Y Ein sind, die nicht die gleichen in allen dreien sind, dann muß der gesamte gegenwärtige Block per Definition als ein Farbblock bezeichnet werden. Demgemäß wird in einem Schritt 84 das Bit in der Farbtabelle, das diesem Block entspricht, eingeschaltet. Anschließend wird in einem Schritt 86 überprüft, ob vorher innerhalb des gegenwärtigen Blocks Schwarz erfaßt wurde oder nicht (z. B. durch eine Flag). (Eine "Schwarz-erfaßt"-Flag würde nach jedem Block gelöscht werden,.) Es sei angemerkt, daß, wenn Schwarz in einem der vorherigen Bytes gefunden wurde, zwei Dinge bereits passiert sind. Zuerst wurden die CMY-Daten, die Schwarz in einem früheren Byte darstellten, in die K-Ebene bewegt und von den CMV-Ebenen gelöscht. Zweitens wurde das Bit in der Schwarztabelle, das den gegenwärtigen Block darstellt, bereits eingeschaltet.
- Die frühere Bewegung von Schwarzdaten von den Farbebenen in die K-Ebene ist mit dem Vorzug in Einklang, der der Verwendung von Schwarz (und nicht von zusammengesetztem Schwarz) gegeben wird, immer wenn es möglich ist. Nun wurde jedoch bestimmt, daß innerhalb desselben Blocks eine Farbe ist. Da Schwarz nicht innerhalb desselben Blocks als Farbe erlaubt ist, muß zusammengesetztes Schwarz für das gesamte Schwarz innerhalb dieses Blocks verwendet werden. Der Farbstift (CMV) muß verwendet werden, um diese Daten zu drucken.
- Daher besteht der nächste Schritt 88 darin, Daten, die in den vorherigen Bytes als Schwarz bestimmt worden sind, von der K-Ebene zurück in die CMY-Ebenen zu kopieren. Ebenfalls schaltet der Schritt 88 das Bit in der Schwarztabelle aus, das diesen Block darstellt. Sobald eine Farbe gefunden worden ist, ist das Verfahren für den gegenwärtigen Block vollendet (Schritt 94). Wenn ein Block keine Daten in den CMY- Ebenen hat, wird die Prozedur schleifenmäßig in den Schritten 72, 74, 96, 92 fortgesetzt und nichts finden.
- Nachdem die in Fig. 11 dargestellte Prozedur auf jeden Block in dem gegenwärtigen Band der CMY-Ebenen angewendet worden ist, ist jeder Block als farbig, schwarz oder weiß bezeichnet. Wenn ein Block farbig ist, ist das entsprechende Bit nur in der Farbtabelle Ein. Für Schwarz ist das entsprechende Bit nur in der Schwarztabelle Ein. Für Weiß sind die entsprechenden Bits sowohl in der Schwarz- als auch in der Farbtabelle Aus. Da nun der Zustand jedes Datenblocks korrekt bestimmt und in einer Tabelle eingegeben ist, können diese Tabellen auf vorteilhafte Weise für eine weitere Verarbeitung der Daten mit hoher Geschwindigkeit verwendet werden.
- Nachfolgend müssen bei einer überprüfung bezüglich des letzten Bandes in dem Schritt 207, wenn das gegenwärtige Band nicht das letzte Band der Seite ist, alle Schwarzblöcke in der unteren Reihe des Bandes in einen unbestimmten Zustand (Fragezeichen genannt) gesetzt werden, da es (noch) nicht bestimmt werden kann, ob diese Blöcke zu Farbblöcken in der obersten Zeile des nächsten Bandes benachbart sind. Jeder Schwarzblock in der unteren Zeile wird in den Fragezeichenzustand in einem Schritt 212 durch Einschalten des entsprechenden Farbbits in der Farbtabelle eingestellt. Dies wird durch eine einfache logische ODER-Verknüpfung jedes Bits entlang der unteren Zeile der Schwarztabelle mit dem entsprechenden Bit in der Farbtabelle getan. Das Implementieren einer Funktion, um diese Funktion zu erreichen, sollte für Fachleute ohne weiteres offensichtlich sein.
- Der nächste Schritt 214 besteht gemäß der Erfindung darin, jeden Farbblock zu untersuchen, und zu bestimmen, ob beliebige Schwarzblöcke an denselben angrenzen. Wenn kein Schwarzblock an einen Farbblock angrenzt, dann rufen die Daten nicht nach einem Drucken von Schwarztinte innerhalb eines Blocks (d. h. innerhalb acht Punkten oder Pixeln) aus Farbtinte. Dieses Kriterium erfüllt die 6-Punkt-Minimalbeabstandung über, die erforderlich ist, um die Tinten auf der gedruckten Seite nicht ungünstig zu beeinflussen.
- Ein benachbarter Schwarzblock kann in jeder der acht umgebenden Positionen bezüglich des Farbblocks auftreten. Und zwar an jeder Seite (in der gleichen Zeile) über oder unter (in der gleichen Spalte) oder diagonal benachbart (d. h. um eine Zeile und eine Spalte in einer der vier Diagonalrichtungen versetzt). Die Blöcke von Daten werden durch Untersuchen der entsprechenden Tabellen implizit untersucht, wobei jeder Block durch ein einziges Bit dargestellt ist.
- Bezugnehmend nun auf Fig. 12A, welche eine Farbtabelle darstellt, ist ein Bit eingeschaltet. Fig. 12B identifiziert die entsprechenden Bits, die durch Einsen dargestellt sind, die in der Schwarztabelle überprüft werden müssen. Wenn eines der entsprechenden Bits in der Schwarztabelle Ein ist oder eine 1 ist, bezeichnet dies, daß ein Schwarzblock neben einem Farbblock ist. Somit können die Farb- und die Schwarztabelle verwendet werden, um schnell zu bestimmen, ob Farbblöcke zu Schwarzblöcken benachbart sind.
- Es würde jedoch außerordentlich zeitaufwendig sein, jedes Bit in der Farbtabelle zu untersuchen, um zu bestimmen, welche Bits eingeschaltet sind, und dann zu identifizieren, nach welchen umgebenden Bits in der Schwarztabelle gesucht werden soll, und dann jedes dieser umgebenden Bits explizit zu untersuchen. Ein schnelleres Verfahren zum Bestimmen, ob ein Schwarzblock neben einem Farbblock ist, verlangt das Untersuchen von Bytes anstatt von Bits in der Farb- und der Schwarztabelle, wie es nachfolgend beschrieben ist.
- Es sei angemerkt, daß in Fig. 12 für ein gegebenes 1-Bit in der Farbtabelle drei Bits über und drei Bits unter demselben in der Schwarztabelle überprüft werden müssen. Zusätzlich müssen die zwei Bits unmittelbar links und rechts des entsprechenden Farbbits in der Schwarztabelle untersucht werden. Dies kann unter Verwendung von "Masken" schnell und wirksam durchgeführt werden, wie es nachfolgend beschrieben wird. Der erste Schritt besteht für ein gegebenes 1-Bit in der Farbtabelle (ein "Farbbit") darin, seine Nachbarbits links und rechts des Farbbits einzuschalten. Dies wird als "Verschmieren" des Farbbits bezeichnet. Das resultierende Byte wird als Nachbarbyte bezeichnet.
- Der nächste Schritt besteht darin, das Nachbarbyte mit jedem Byte in der Schwarztabelle, das in derselben Spalte in der obigen Zeile, in derselben Zeile, und in der Zeile unter dem gegenwärtigen Byte in der Farbtabelle positioniert ist, mittels der logischen UND-Verknüpfung zu verknüpfen. Das Resultat jeder UND-Verknüpfungsoperation wird eine Kaske genannt. Für jede derartige UND-Operation zeigt dieses Ergebnis an, wenn die resultierende Maske einen Wert nicht gleich Null aufweist, daß eine 1 oder ein Ein-Bit in der Schwarztabelle (ein "Schwarzbit") neben der Position positioniert ist, die dem Farbbit entspricht. Jedes solche Schwarzbit stellt einen Schwarzblock neben dem Farbblock dar, der durch das Farbbit dargestellt ist.
- Diese Technik ist in Fig. 13 dargestellt. Fig. 13A zeigt einen Ausschnitt aus einer Farbtabelle mit einem Byte (in der zweiten Zeile) mit zwei Bits im Ein-Zustand. Fig. 13B zeigt die gleiche Farbtabelle mit dem linken und dem rechten Nachbarbit Ein-geschaltet (das Nachbarbyte). Fig. 13C zeigt die entsprechenden Bytes in einer beispielhaften Schwarztabelle. Schließlich zeigt Fig. 13D die resultierende Maske nach einer logischen UND-Verknüpfung jedes Bytes in der Schwarztabelle von Fig. 13C mit dem Nachbarbyte von Fig. 13B.
- Der Schritt des Erzeugens eines Nachbarbytes (siehe Fig. 13B) kann wie folgt sehr schnell implementiert werden. Für jedes Byte in der Farbtabelle existieren 256 mögliche Kombinationen von Bits, und es existieren 256 entsprechende Muster von Bits (oder Nachbarbytes), nachdem die Nachbarbits eingeschaltet worden sind. Diese Nachbarbytes können vorberechnet und in einem Array (Nachbararry genannt) mit 256 Einträgen gespeichert sein. Jedesmal, wenn der Prozeß eines oder mehrere Bits im Ein-Zustand in einem Farbtabellenbyte erfaßt, kann dieses Farbtabellenbyte als Index in dem Nachbarbytearray verwendet werden, um das entsprechende Nachbarbyte zu suchen. Diese Suchprozedur wird durch einen Schritt 98 in Fig. 15 dargestellt, bei der das Nachbarbytearray als Nachbararray bezeichnet wird.
- Bezugnehmend nun auf Fig. 15 (eine Prozedur, die Schwarz- Finden genannt wird) besteht der erste Schritt 97 darin, zu bestimmen, welche Bits in der Farbtabelle tatsächlich Schwarzblöcke und nicht Fragezeichenblöcke darstellen. Die echten Farbblöcke sind die Blöcke, welche ein entsprechendes Bit Ein-haben, welches in der Schwarztabelle Aus ist. Durch UND-Verknüpfung des Farbtabellenbytes mit dem Komplement des entsprechenden Schwarztabellenbytes 97 können daher die echten Farbblöcke bestimmt werden (Farbbyte genannt).
- Der nächste Schritt 98 besteht darin, das Nachbarbyte für das gegenwärtige Farbtabellenbyte abzurufen. Eine Variable (Nachbar genannt) wird mit dem entsprechenden Nachbarbyte von der Direktzugriffstabelle (Nachbararray) geladen, das durch das echte Farbbyte (Farbbyte) spezifiziert ist. Diese Variable (Nachbar) wird verwendet, um schnell zu bestimmen, ob irgendwelche Blocks neben den Farbblöcken vorhanden sind, die durch das gegenwärtige Byte in der Farbtabelle dargestellt sind. Insbesondere wird in einem Schritt 100 Nachbar mit dem Schwarztabellenbyte in der gleichen Zeilen/Spalten- Position (Schwarztabelle [Zeile][Spalte]) mittels der logischen UND-Verknüpfung verknüpft, um zu sehen, ob Farbblöcke neben Schwarzblöcken vorhanden sind. Das resultierende Byte wird Maske genannt.
- Der nächste Schritt 102 besteht darin, zu bestimmen, ob die Maske, die aus der vorangegangenen UND-Operation resultierte, gleich Null ist. Wenn dies nicht so ist (Falsch), dann existieren Farbblöcke neben Schwarzblöcken. Jedes Ein-Bit (1) in der resultierenden Maske zeigt ein Ein-Bit in dem Schwarztabellenbyte neben dem entsprechenden Bit in der Farbtabelle. Dies wird in einem Schritt 120 korrigiert, indem eine Funktion, die Schwarz-Festmachen genannt wird, aufgerufen wird, wobei dieselbe nachfolgend detailliert beschrieben wird. Kurz gesagt ist Schwarz-Festmachen eine Prozedur, die für ein gegebenes Maskenmuster und ein Zeilen/Spalten-Paar in den Farb/Schwarz-Tabellen den entsprechenden Block von K-Ebenendaten zurück in die CMY-Ebenen bewegt. Fur jeden bewegten Block wird das entsprechende Schwarztabellenbit ausgeschaltet, und das entsprechende Farbtabellenbit wird eingeschaltet.
- Die obige Technik spricht nicht den Fall an, bei dem die "Nachbar"-Bits, die zu untersuchen sind, in der Schwarztabelle in einem anderen Byte als dem linken oder rechten sind. In anderen Worten, wenn das interessierende Farbtabellenbit (eine "1") an einem Ende des Bytes ist, sind drei der "Nachbarbits" in der Schwarztabelle in einem Nachbarbyte (neben dem entsprechenden Byte) und müssen explizit untersucht werden. Wenn somit das Bit ganz links eines Farbtabellenbytes Ein ist, dann muß das Bit ganz rechts der Farbtabellenbytes links, oben links und unten links des entsprechenden Bytes in der Schwarztabelle überprüft werden. Wenn auf ähnliche Weise das Bit ganz rechts eines Farbtabellenbytes Ein ist, dann muß das Bit ganz links der Schwarztabellenbytes der rechten Seite des, oberhalb rechts des und unterhalb rechts des entsprechenden Bytes in der Schwarztabelle explizit überprüft werden. Fig. 14 veranschaulicht diese Beziehung.
- Bezugnehmend auf Fig. 14 zeigt Fig. 14A eine Farbtabelle, bei der das Bit ganz links eines Byte Ein ist. Fig. 14B zeigt den entsprechenden Abschnitt einer Schwarztabelle, bei der die mit einer "1" angezeigten und 200, 202 und 204 numerierten Bits überprüft werden müssen, um zu sehen, ob die entsprechenden Blöcke Schwarz enthalten. Fig. 14C zeigt eine weitere Farbtabelle, bei der das Bit ganz rechts eines Bytes Ein ist. Fig. 14D zeigt den entsprechenden Abschnitt einer Schwarztabelle, bei der die Bits, die mit einer "1" gezeigt und 206, 208 und 210 numeriert sind, überprüft werden müssen, um zu sehen, ob die entsprechenden Blöcke Schwarz enthalten. Demgemäß muß eine Prozedur zum überprüfen von benachbarten Bits in der Lage sein, in diesen speziellen Fällen Bytegrenzen zu kreuzen.
- Im allgemeinen, wenn jedes Bit in einem Farbtabellenbyte Ein ist, ist es notwendig, jedes Auftreten eines Schwarztabellenbits zu erfassen, das Ein ist, und zwar neben der Bitposition in der Schwarztabelle, die dem Farbtabellenbit im Ein-Zustand entspricht.
- Wieder bezugnehmend auf Fig. 15 existiert kein konflikterzeugendes Bit in der Schwarztabelle innerhalb des gegenwärtigen Bytes, wenn der Schritt 102 Wahr ergibt. Es bleibt jedoch noch die Überprüfung, um die oben erwähnten speziellen Fälle zu prüfen. Zuerst wird in einem Schritt 104 bestimmt, ob das Bit ganz links in dem gegenwärtigen Farbtabellenbyte Ein ist. Dies wird zweckmäßigerweise (und schnell) durch logisches UND-Verknüpfen des gegenwärtigen Bytes (Farbtabelle [Zeile][Spalte]) mit der Zahl 128 und durch Überprüfen nach einer Null (Schritt 104) durchgeführt. Wenn das Bit ganz links nicht Ein ist (Schritt 104 = Wahr), dann können die Überprüfungen aller drei Bytes in der Schwarztabelle links (über, gleiche Zeile und unter) übergangen werden, weshalb die Steuerung zu 124 läuft (Fig. 16). Wenn das Ergebnis des Schritts 104 Falsch ist, dann ist das Bit ganz links des gegenwärtigen (Farbtabellen-) Bytes Ein. Es bleibt daher, benachbarte Schwarztabellenbytes auf der linken Seite wie folgt zu untersuchen.
- In einem Schritt 106 betragen die Indizes für die Schwarztabelle [Zeile-1] und [Spalte-1]. Diese Position entspricht dem Bit 200 in Fig. 14B. Dieses Byte in der Schwarztabelle wird mit der Zahl 1 mittels einer logischen UND-Verknüpfung verknüpft, wonach das Ergebnis in einem Schritt 106 nach einer Null überprüft wird. Die "Maske" ist in anderen Worten eine binäre Maske, welche ein Byte ist, bei dem nur das Bit ganz rechts eingeschaltet ist. Wenn das Ergebnis des Schritts 106 Falsch ist, ist das Bit ganz rechts dieses Schwarztabellenbytes Ein, und zwar das, das (über und links von) an das Bit ganz links des Farbtabellenbytes angrenzt. Demgemäß wird in einem Schritt 108 Schwarz-Festmachen (oder "Schwarz-Fixen") aufgerufen, um den entsprechenden Schwarzblock zu den CMY-Ebenen zu bewegen. Wenn das Ergebnis Wahr ist, ist das Bit ganz rechts dieses Schwarztabellenbytes Aus (Null), woraufhin direkt zu einem Schritt 110 gegangen wird, ohne "Schwarz-Festmachen" aufzurufen.
- Nachfolgend wird in einem Schritt 110 das Schwarztabellenbyte bei [Zeile], [Spalte-1] untersucht. Diese Position entspricht dem Bit 202 in Fig. 14B. Wenn das Bit ganz rechts dieses Bytes Ein ist, d. h. Ergebnis des Schritts 110 = Falsch, ist das Bit ganz rechts dieses Schwarztabellenbytes Ein, und zwar neben (links von) dem Bit ganz links des Farbtabellenbytes. Demgemäß wird in einem Schritt 112 Schwarz- Festmachen aufgerufen, um den entsprechenden Schwarzblock zu den CMY-Ebenen zu bewegen. Wenn das Resultat Wahr ist, ist das Bit ganz rechts dieses Schwarztabellenbytes Aus (Null), und es wird ohne Aufruf von Schwarz-Festmachen zu dem Schritt 114 gegangen.
- Schließlich wird in einem Schritt 114 das Schwarztabellenbyte bei [Zeile+1], [Spalte-1] untersucht. Diese Position entspricht dem Bit 204 in Fig. 14B. Wenn das Bit ganz rechts dieses Bytes Ein ist, d. h. das Ergebnis von dem Schritt 114 = Falsch, ist das Bit ganz rechts dieses Schwarztabellenbytes Ein, und zwar neben (unter und links von) dem Bit ganz links des Farbtabellenbytes. Demgemäß wird in einem Schritt 116 Schwarz-Festmachen aufgerufen, um den entsprechenden Schwarzblock zu den CMY-Ebenen zu bewegen. Wenn das Ergebnis Wahr ist, ist das Bit ganz rechts dieses Schwarztabellenbytes Aus (Null), und es wird direkt ohne Aufruf von Schwarz-Festmachen zu dem Schritt 124 (Fig. 16) gegangen.
- An diesem Punkt wurde für das gegenwärtige Farbtabellenbyte das gleiche Byte in der Farbtabelle überprüft, und, wenn es nötig war, wurden auch die drei Bytes auf der linken Seite überprüft. Es ist somit noch eine überprüfung der Bytes oberhalb, unterhalb und auf der rechten Seite dieses Farbtabellenbytes durchzuführen.
- Bezugnehmend nun auf Fig. 16 sei auf das Etikett 124 verwiesen. Der erste Schritt 126 besteht darin, das Bit ganz rechts des gegenwärtigen Farbtabellenbytes zu untersuchen. Dies wird durchgeführt, indem das Byte mit der binären Zahl 1 mittels einer logischen UND-Verknüpfung verknüpft wird, und indem das resultierende Byte nach einer Null getestet wird (Schritt 126). Wenn das Bit ganz rechts Ein ist, d. h. Ergebnis = Falsch, muß jedes der drei angrenzenden Bytes rechts bezüglich der Schwarztabelle überprüft werden, um zu sehen, ob das Bit ganz links eingeschaltet ist. Dieses Verfahren entspricht dem Überprüfen der Bits 206, 208 und 210 in Fig. 14D. Wenn das Bit ganz rechts der Farbtabelle nicht Ein ist, d. h. Ergebnis = Wahr, können diese Überprüfungen übergangen werden, woraufhin zu der Etikette 144 (Fig. 17) gegangen wird.
- Jedes dieser Bytes wird wiederum in einem Schritt 128 (oberhalb und rechts), in einem Schritt 132 (gleiche Zeile - rechts) und in einem Schritt 136 (unterhalb und rechts) überprüft. Das Verfahren ist zu dem ähnlich, das zum Überprüfen von Bytes auf der linken Seite, welches oben beschrieben wurde, verwendet wird, weshalb Details weggelassen werden. Es sei jedoch angemerkt, daß in Fig. 16 die benachbarten Bytes mit der Anzahl 128 mittels einer logischen UND-Verknüpfung verknüpft werden, um das Bit ganz links in dem Schwarztabellenbyte zu erfassen, während die Maske, die in Fig. 15 verwendet wurde, die Zahl 1 war, um das Bit ganz rechts zu erfassen. Nach dem Überprüfen jedes Schwarztabellenbytes wird die Prozedur Schwarz-Festmachen aufgerufen, wie es oben beschrieben wurde, um Daten wie benötigt zu bewegen.
- Zuletzt müssen die Bytes oberhalb und unterhalb überprüft werden. Genauer gesagt bleibt es, die Schwarztabellenbytes oberhalb und unterhalb der Schwarztabellenposition, die dem gegenwärtigen Farbtabellenbyte entspricht, zu überprüfen. Bezugnehmend nun auf Fig. 17 wird an der Etikette 144 begonnen. In dem ersten Schritt 146 wird Maske auf den Wert von Nachbar gesetzt, der mit dem Byte von der Schwarztabelle oberhalb des Farbtabellenbytes logisch UND-mäßig verknüpft ist. Somit ist der Schwarztabellenindex auf [Zeile-1][Spalte] eingestellt. Es sei in Erinnerung gerufen, daß der Wert Nachbar beispielsweise dem Byte entspricht, das in Fig. 13B gezeigt ist. Es ist das gegenwärtige Farbtabellenbyte, das eingeschaltete Nachbarbits hat. Wenn die entsprechenden Schwarztabellenbytes wie in Fig. 13 gezeigt beschaffen sind, sind die Ergebnisse nach dem UND-Verknüpfen jedes Schwarztabellenbytes mit dem Nachbar-Byte so, wie es in Fig. 13D gezeigt ist.
- Der nächste Schritt 148 überprüft, um zu sehen, ob der resultierende Wert (Maske) gleich Null ist. Wenn derselbe nicht gleich Null ist (Falsch), existieren Schwarzblöcke neben Farbblöcken, und Schwarz-Festmachen wird mit den geeigneten Werten in einem Schritt 150 aufgerufen. Der nächste Schritt besteht darin, das Schwarztabellenbyte unter dem Farbtabellenbyte zu untersuchen. Wenn das Resultat des Schritts 148 Wahr ist, wird ohne Aufruf von Schwarz-Festmachen in dem Schritt 150 zu dem nächsten Test übergegangen.
- Der nächste Schritt 152 besteht darin, Maske auf den Wert von Nachbar einzustellen, der mit dem Byte von der Schwarztabelle unterhalb des Farbtabellenbytes mittels einer logischen UND-verknüpfung verknüpft wird. Somit wird der Schwarztabellenindex auf [Zeile+1][Spalte] eingestellt. Der Schritt 134 überprüft, um zu sehen, ob der resultierende Wert gleich Null ist. Wenn Maske nicht gleich Null ist (Falsch), existieren Schwarzblöcke neben Farbblöcken, und in einem Schritt 156 wird Schwarz-Festmachen aufgerufen, um die Verletzung zu korrigieren. Wenn Maske gleich Null ist (Wahr) wird das Verfahren vollendet und hält bei 158 an.
- An diesem Punkt hat das Verfahren für das gegenwärtige Farbbyte allein alle möglichen umgebenden Bits in der Schwarztabelle überprüft. Für jeden Schwarzblock neben einem Farbblock wurde dieser Schwarzblock von der K-Ebene zurück zu den CMY-Ebenen bewegt, wobei die Farb- und die Schwarztabelle demgemäß aktualisiert wurden. Die vorhergehenden Prozeduren, die in den Fig. 15 bis 17 dargestellt sind, werden für jedes Byte in der Farbtabelle wiederholt, das zumindest ein Bit im Ein-Zustand aufweist.
- Ein bevorzugtes Verfahren zum Bewegen von Daten von der Schwarz-K-Ebene zurück in die CMY-Farbebenen wird willkürlich Schwarz-Festmachen genannt, wie es oben angemerkt wurde. Dieses Verfahren ist in dem Flußdiagramm von Fig. 18 dargestellt. Die Funktion Schwarz-Festmachen erhält drei Daten, d. h. Maske, Zeile und Spalte. Zeile und Spalte sind die Adressen oder der Index des gegenwärtigen Bytes. Schwarz-Festmachen wird aufgerufen, wenn dieses Byte in der Schwarz- und der Farbtabelle Schwarz neben Farbe darstellt. Die Datenmaske, selbst ein Byte, zeigt (durch eine 1) an, welches Bit in dem gegenwärtigen Byte den zu bewegenden Schwarzblock darstellt. Mehr Bits als ein Bit können in der Maske Ein sein.
- Bezugnehmend auf Fig. 18 wird in dem ersten Schritt 159 die Zeile überprüft, um zu sehen, ob dieselbe kleiner als die obere Zeile des gegenwärtigen Bands ist. Wenn dies so ist, dann wird das entsprechende Band derart markiert, daß es eine neue Farbe 161 hat. Die Neue-Farbe-Flag zeigt an, daß Schwarzdaten in einem vorherigen Band zu Farbdaten bewegt wurden. Die Neue-Farbe-Flag zeigt an, daß das schwebende Band ungültige Daten enthält und neu abgebildet werden muß, bevor es zu dem Drucker zum Drucken ausgegeben wird. Die Beschreibung, wie die Neue-Farbe-Flag verwendet wird, ist nachfolgend detailliert beschrieben. Als Ergebnis der ungültigen Daten ist es unnötig, die Schwarzdaten zu den Farbdaten zu bewegen. Stattdessen werden lediglich die Schwarztabeile, wie es in einem Schritt 170 gezeigt ist, und die Farbtabelle, wie es in einem Schritt 172 gezeigt ist, aktualisiert, was beides nachfolgend erklärt ist.
- Wenn stattdessen die Zeile größer oder gleich der oberen Zeile des gegenwärtigen Bands ist, wird ein Wert, der Bit genannt wird, in einem Schritt 160 auf 128, d. h. auf das Bit ganz links eines Bytes, initialisiert. Das Bit wird nach rechts verschoben, wobei dasselbe bei jeder Verschiebung verwendet wird, um zu sehen, ob das gleiche Bit in der Maske Ein ist. Wenn dies so ist, dann muß der entsprechende Block von der K-Ebene zu den CMY-Ebenen bewegt werden. Ein Schritt 162 überprüft, daß der Wert von Bit noch größer als Null ist. Wenn dies so ist, wird Bit mit der Maske in einem Schritt 164 mittels einer logischen UND-Verknüpfung verknüpft. Wenn das Ergebnis nicht gleich Null ist (Falsch), dann werden in einem Schritt 166 die K-Ebenendaten, die durch dieses Bit in der Schwarztabelle dargestellt sind, zu den CMY-Ebenen bewegt. Anschließend wird in einem Schritt 168 der Bitwert um Eins nach rechts verschoben, wonach das Testen für den Rest des Bytes fortgesetzt wird.
- Nachdem jedes der acht Bits in der Maske getestet worden sind, müssen die Schwarz- und die Farbtabelle aktualisiert werden. In einem Schritt 170 wird die Schwarztabelle ersetzt, und zwar durch das Ergebnis, das aus der logischen UND-Verknüpfung derselben mit dem binären Komplement der Maske entsteht. In Computerschreibweise lautet dies folgendermaßen:
- Schwarz-Tabelle[Zeile][Spalte]=
- Schwarz-Tabelle[Zeile][Spalte] UND NICKT Maske
- Dieser Schritt schaltet die Maskenbits in der Schwarztabelle aus. Anschließend wird in einem Schritt 172 das Farbtabellenbyte mittels der logischen ODER-Verknüpfung mit der Maske verknüpft, wodurch die Maskenbits in der Farbtabelle eingeschaltet werden.
- Es ist wichtig, anzumerken, daß für das gegenwärtige Byte in der Farbtabelle nun zwei neue Einträge existieren. Die entsprechenden neuen Farbblöcke können existierenden Schwarzblöcken benachbart sein, welche die Anforderungen nach minimaler Beabstandung verletzen würden. Daher muß in einem Schritt 174 Schwarz-Finden (wieder) für die gegenwärtige Zeile/Spalte aufgerufen werden. Schwarz-Finden bezieht sich auf die Prozeduren zum Finden und Korrigieren von Nachbarschaftsverletzungen, welche oben bezugnehmend auf die Flußdiagramme der Fig. 15 bis 17 detailliert dargelegt wurden. Die Verfahren, die Schwarz-Finden und Schwarz-Festmachen genannt werden, können angeordnet sein, um rekursiv zu arbeiten, obwohl dies nicht wesentlich ist. Die spezifische Implementation ist eine Sache der Entwurfsauswahl, solange die Verarbeitung fortgeführt wird, bis alle Verletzungen der minimalen Beabstandung erfaßt und korrigiert werden. In bestimmten Fällen, wie es nachfolgend gezeigt wird, können sich sich verändernde Daten über eine gesamte Seite "ausbreiten".
- Der Schritt des Erfassens von Beabstandungsverletzungen zwischen Schwarzblöcken und Fragezeichenblöcken und des Ausbreitens von Fragezeichen ist analog zu dem Schritt des Erfassens von Beabstandungsverletzungen zwischen Schwarzblöcken und Farbblöcken und des Ausbreitens von Farbe. Bezugnehmend nun auf die Fig. 19A bis 19D wurde die Schwarz- Finden-Routine modifiziert, um Beabstandungsverletzungen zwischen Schwarzblöcken und Fragezeichenblöcken zu erfassen. Im Gegensatz zu Schwarz-Finden beginnt das Verfahren zum Ausbreiten von Fragezeichen in einem Schritt 300 durch Identifizieren der Fragezeichen, die in dem Byte vorhanden sind, das durch die Zeilen- und Spalten-Adresse spezifiziert ist. Die Fragezeichenblöcke werden durch die Blöcke ohne weiteres identifiziert, welche die entsprechenden Bits in sowohl der Schwarztabelle als auch der Farbtabelle haben. Der Rest des Verfahrens ist zu dem des Verfahrens Schwarz-Finden identisch, jedoch mit Ausnahme davon, daß, wo Schwarz-Finden Schwarz-Festmachen aufrief, das Verfahren, das in den Fig. 19A bis 19D gezeigt ist, lediglich das entsprechende Bit in der Farbtabelle durch eine logische ODER-Verknüpfung des Bits mit einer "1" einschaltet, d. h. das Bit zu einem Fragezeichen setzt. Somit könnte die Routine Schwarz-Finden modifiziert werden, um beide Fälle zu handhaben, und zwar durch das Hinzufügen eines zusätzlichen Parameters, welcher anzeigen würde, ob eine Farbe oder Fragezeichen ausgebreitet werden soll.
- Wie es vorher gezeigt wurde, kann eine Beabstandungsverletzung innerhalb des gegenwärtigen Bandes nicht notwendigerweise aufgrund der Möglichkeit von Farbdaten in dem nächsten Band innerhalb des vorbestimmten Abstands von Schwarzdaten in dem gegenwärtigen Band aufgelöst werden. Wenn das gegenwärtige Band nicht aufgelöst werden kann, d. h. wenn Fragezeichen innerhalb des gegenwärtigen Bandes vorhanden sind, werden alle restlichen Fragezeichenblöcke in Schwarzblöcke umgewandelt, und das gegenwärtige Band wird zu dem Sekundärspeichergerät gespoolt. Es wird angenommen, daß Fragezeichen zu Schwarz aufgelöst werden, und zwar aufgrund des überwiegenden Auftretens von Schwarz auf der gedruckten Seite und ebenfalls aufgrund der Erwünschtheit des Druckens in echtem Schwarz.
- Bevor das gegenwärtige Band bezüglich der Existenz von Fragezeichen untersucht wird, werden alle anderen gespoolten Bänder auf einer Zuerst-Gekommen-Zuerst-Bedient-Basis untersucht. Das Verfahren zum Untersuchen aller gespoolten Bänder ist in Fig. 20 gezeigt. Der erste Schritt besteht darin, das zu untersuchende Band zu dem ältesten gespoolten Band 228 einzustellen. Dieses Band wird dann bezüglich der Existenz von Fragezeichen 230 durch Untersuchen der Regionen der Schwarz- und der Farbtabelle, die das zu untersuchende Band darstellen, untersucht. Wenn das Band Fragezeichen aufweist, müssen sie von folgenden Bändern ausgebreitet werden (nachdem das gegenwärtige Band gespoolt wurde), weshalb alle folgenden Bänder Fragezeichen haben. Es ist dann unnötig, irgendwelche anderen Bänder 232 zu untersuchen. Durch zuerst Überprüfen nach Fragezeichen wird niemals ein Band neu abgebildet, das in sich Fragezeichen hat. Dies stellt sicher, daß, wenn ein Band neu abgebildet wird, die Schwarz- und die Farbtabelle vollständig sein werden, und keine Fragezeichen haben werden.
- Wenn das untersuchte Band keine Fragezeichen hat, wird in einem Schritt 234 überprüft, um zu sehen, ob irgendeine neue Farbe vorhanden ist. Was durch eine neue Farbe gemeint ist, ist, daß Fragezeichen, die derart angenommen werden, daß sie zu Schwarz aufgelöst werden, tatsächlich in Farbe aufgelöst wurden. Daher sind die gespoolten Daten fehlerhaft und müssen weggeworfen werden. Das gespoolte Band muß in einem Schritt 236 neu abgebildet werden. Wenn das Band neu abgebildet wird, tritt das Verfahren im wesentlichen neu in das Flußdiagramm ein, das in Fig. 9 bei einem Schritt 201 gezeigt ist. Da die Tabellen voll sind und genau das angeforderte Band wiedergeben, sind die Tabellen "fertig", und das Verfahren kann zu dem Schritt 211 fortschreiten. Günstigerweise sind die Farb- und die Schwarztabelle korrekt, weshalb die korrekte K-Ebene und die CMY-Ebenen neu zusammengestellt werden können. Nachdem die Ebenen neu zusammengestellt sind, können sie direkt zu dem Drucker in einem Schritt 213 zum Drucken gesendet werden.
- Wenn keine neue Farbe vorhanden ist, wurde das gespoolte Band korrekt gespoolt, und das gespoolte Band wird zu dem Drucker zum Drucken in einem Schritt 240 gesendet. Wenn das Band das letzte gespoolte Band 242 ist, ist das Verfahren in einem Schritt 244 vollendet. Andernfalls wird das zu untersuchende Band zu dem nächsten gespoolten Band in 246 eingestellt, woraufhin die Sequenz wiederholt wird. Auf diese Art und Weise werden alle gespoolten Bänder untersucht, nachdem jedes neue Band empfangen worden ist, um zu bestimmen, ob sich irgendwelche aufgelöst haben, und wenn das so ist, um das Band geeignet anzuordnen.
- Bezugnehmend nun auf Fig. 21 wird das gegenwärtige Band in einem Schritt 220 untersucht, nachdem die gespoolten Bänder untersucht worden sind. Das Verarbeiten des gegenwärtigen Bands ist relativ einfach. Der erste Schritt in 248 besteht darin, zu bestimmen, ob irgendwelche Fragezeichen innerhalb des gegenwärtigen Bandes vorhanden sind. Wenn Fragezeichen vorhanden sind, muß das Band in einem Schritt 250 gespoolt werden, um auffolgende Bänder zu warten. Wenn das Band auf eine Platte gespoolt wird, wird das Band in einem Schritt 252 als verarbeitet markiert, was verwendet wird, um zu bestimmen, ob das Band "fertig" ist, und zwar in einem Schritt 209 von Fig. 9, wobei die Verarbeitung des gegenwärtigen Bands vollendet ist. Wenn jedoch keine Fragezeichen in dem gegenwärtigen Band sind, wird das Band direkt zu dem Drucker in einem Schritt 256 gesendet, und das Verfahren ist vollendet. In dem Fall, in dem keine Fragezeichen in dem gegenwärtigen Band sind, wird sichergestellt, daß keine Fragezeichen in einem gespoolten Band vorhanden sind, da sie sich unter Umständen von dem gegenwärtigen Band hoch ausbreiten könnten. Da somit keine Fragezeichen in einem gespoolten Band verblieben sind, und da die gespoolten Bänder vor dem gegenwärtigen Band untersucht werden, wird es ebenfalls sichergestellt, daß die gespoolten Bänder bereits gedruckt worden sind. Daher wird sichergestellt, daß das gegenwärtige Band in der korrekten Reihenfolge gedruckt wird.
- Der abschließende Verfahrensschritt für jedes Band, das empfangen worden ist, besteht in dem Entfernen der Fragezeichen aus den Tabellen in dem Schritt 222. Ein rasches Verfahren zum Entfernen der Fragezeichen ist in Fig. 22 gezeigt. Das Verfahren beginnt in einem Schritt 262 durch Einstellen der Zeile gleich der oberen Zeile des gespoolten Bandes. Anschließend wird in einem Schritt 264 die Spalte durch Einstellen derselben gleich 1 initialisiert. Wenn die Spalte kleiner als die Breite der Schwarztabelle ist, wird das gegenwärtige Fragebyte aus den Tabellen extrahiert, indem das Farbtabellenbyte und das entsprechende Schwarztabellenbyte in einem Schritt 274 einer logischen UND-Verknüpfung unterzogen werden. Wenn keine Fragezeichen in dem gegenwärtigen Fragebyte vorhanden sind (Schritt 276), wird die Spalte in einem Schritt 280 inkrementiert, und die Sequenz wird wiederholt. Wenn jedoch Fragezeichen in dem gegenwärtigen Fragebyte vorhanden sind, werden die Fragezeichen durch eine logische UND-Verknüpfung des gegenwärtigen Bytes in der Farbtabelle mit dem Komplement des Fragebytes in einem Schritt 278 eliminiert. Das Verfahren setzt sich fort, während die Spalte kleiner als die Breite der Schwarztabelle ist (Schritt 266), und während die Zeile kleiner oder gleich der unteren Zeile des gegenwärtigen Bands ist (Schritt 268).
- Fig. 23 bis 25 stellen ein Beispiel eines Betriebs der Erfindung dar. Fig. 23C stellt ein Graphikbild dar. In diesem Bild soll die vertikale Linie mit Schwarz gedruckt werden. Am unteren Ende der vertikalen Linie ist ein Kreis, der eine Farbtinte anzeigt. Die schwarze Linie stößt somit an die Farbtinte an. In den CMY-Farbebenendaten würde die schwarze Linie als zusammengesetztes Schwarz dargestellt sein, während der Kreis als die erwünschte Farbe dargestellt ist.
- Zu Anfang werden die gesamten Daten für zusammengesetztes Schwarz aus den Farbebenen und in eine K-Ebene zum Drucken als echtes Schwarz bewegt. Fig. 23A zeigt den Inhalt der Schwarztabelle, während Fig. 23B den Inhalt einer Farbtabelle nach Beendigung dieser anfänglichen Verarbeitung zeigt. Nur ein einziges Bit bleibt in der Farbtabelle Ein (Zeile 12), was die Farbtinte (den Kreis) in dem Bild von Fig. 23C anzeigt. Eine Serie von Einsen in der Schwarztabelle stellt nun die vertikale Schwarzlinie in dem Bild dar. Das Bauen der anfänglichen Tabelle, das dem Schritt 52 in Fig. 10 entspricht, ist nun vollendet.
- Der nächste Schritt besteht darin, diese Tabellen zu untersuchen, um Schwarz neben Farbe zu erfassen, und um notwendige Korrekturen durchzuführen. Wenn das einzige Farbbit untersucht ist, wird das Verfahren ein angrenzendes Schwarzbit, nämlich das Schwarzbit direkt über der Schwarztabellenposition, die dem Farbbit entspricht, erfassen. Insbesondere ist ein Schritt 146 (Fig. 17) Maske = 0011 1000 (Nachbar) UND 0001 0000 (Schwarztabelle [Zeile-1][Spalte]). Das Ergebnis beträgt 0001 0000, weshalb das Ergebnis des Schritts 148 (Maske = Null?) Falsch ist. Demgemäß wird in dem Schritt 150 Schwarz-Festmachen aufgerufen, um die Verletzung der minimalen Beabstandung zu korrigieren. Schwarz-Festmachen erhält die Maske, um das problemebereitende Tabellenbit und die Tabellenzeilen- und Spalten-Position zu identifizieren. In diesem Beispiel empfängt Schwarz-Festmachen die Parameter: 0001 0000 (Maske), 11 (Zeile elf), 1 (Spalte 1 - nur eine Spalte in dem Beispiel). Schwarz-Festmachen bewegt den entsprechenden Block von Daten von der K-Ebene zurück in die Farbebenen und aktualisiert die Schwarz- und die Farbtabelle demgemäß (siehe Fig. 18). Als Konsequenz wird das Bit direkt über dem Farbbit in Fig. 23B eingeschaltet. Ferner wird das entsprechende Bit in der Schwarztabelle ausgeschaltet.
- Anschließend wird Schwarz-Finden aufgerufen, d. h. die Prozedur der Fig. 15 bis 17, um die Schwarztabellenbits, die das neue Farbtabellenbit (in Zeile 11) umgeben, zu überprüfen, um Schwarz neben Farbe noch einmal zu erfassen. Das Schwarztabellenbit in Zeile 11 ist nun Aus, und deshalb kein Problem mehr. Das Schwarztabellenbit in der Zeile 10 ist jedoch derart erfaßt, daß es an das Farbtabellenbit in Zeile 11 angrenzt. Daher wird wie vorher der entsprechende Block von Daten von der K-Ebene zurück in die Farbebenen bewegt. Die Tabellen werden aktualisiert, d. h. das Farbtabellenbit in der Zeile 10 wird eingeschaltet, und das Schwarztabellenbit in der Zeile 10 wird ausgeschaltet.
- Noch einmal wird das gegenwärtige Farbtabellenbit, nun Zeile 10, untersucht, um benachbarte Schwarzbits in der Schwarztabelle zu erfassen. Das Schwarzbit in Zeile 9 wird erfaßt, und wie vorher wird der entsprechende Block von Daten von der K-Ebene zurück in die Farbebenen bewegt. Es ist zu sehen, daß die vorangegangenen Schritte wiederholt werden, wobei jeder Zyklus einen Block von Daten von der K-Ebene zurück in die Farbebenen bewegt. Nach fünf Zyklen sind die Daten so, wie es in Fig. 24A (Schwarztabelle) und Fig. 24B (Farbtabelle) dargestellt ist. Die in den Tabellen von Fig. 24 gezeigten Daten sind durch das Bild von Fig. 24C dargestellt. Bezugnehmend auf Fig. 24C stellt der dickere (untere) Abschnitt der vertikalen Linie zusammengesetztes Schwarz dar, während der feinere (obere) Abschnitt der Linie echtes Schwarz darstellt. Dies stellt graphisch dar, wie sich das zusammengesetzte Schwarz von der Farbregion nach oben "ausbreitet".
- Es sei angemerkt, daß an diesem Punkt des Verfahrens immer noch eine Verletzung der Anforderung nach minimaler Beabstandung existiert, und zwar dort, wo das zusammengesetzte Schwarz das Schwarz berührt, da das zusammengesetzte Schwarz aus Farbtinte besteht. Bezugnehmend auf die Tabellen von Fig. 24 ist zu sehen, daß das Farbbit in der Zeile 7 neben (unter) einem Schwarzbit in der gleichen Position in der Zeile 6 ist. Demgemäß wird das vorangegangene Verfahren fortgesetzt, bis alle Schwarzdaten zurück in Daten für zusammengesetztes Schwarz umgewandelt worden sind. Das Endergebnis erscheint in den Tabellen von Fig. 25A (Schwarztabelle) und 25B (Farbtabelle). Die in den Tabellen von Fig. 25 gezeigten Daten sind durch das Bild von Fig. 25 dargestellt. In dieser Abbildung wird keine Schwarztinte neben der Farbtinte gedruckt. Es ist bei diesem Beispiel zu beobachten, daß die Korrektur einer anfänglichen Nachbarschaftsverletzung in einer neuen Verletzung resultierte, wobei die Korrektur derselben in noch einer weiteren neuen Verletzung resultierte, usw., derart, daß sich die Korrektur über das gesamte Bild "ausbreitete".
- Bezugnehmend nun auf Fig. 26 ist eine bandmäßige zu druckende Seite allgemein bei 180 mit Bandgrenzen 182, 184, 186, 188 gezeigt, die horizontal über die Seite gezogen sind. Die Seite besteht aus fünf separaten Bändern, d. h. den Bändern 1 bis 5, wobei jedes nicht notwendigerweise dieselbe Menge der Seite wie das andere umfassen muß. Die tatsächliche Anzahl von Bändern, die verwendet werden, um die Seite zu ergeben, kann ebenso variieren. Die Balken 194 in den Bändern 3 und 4 sind farbig. Die vertikalen und horizontalen Linien, die die Grenze um die Balken umfassen, sind schwarz.
- Die CMYK-Ebenen für das Band 1 werden in den Speicher gebracht. Der erste Schritt besteht darin, Blöcke als schwarz oder farbig zu markieren. Es existieren lediglich Schwarzda- ten in dem Band 1, und es existieren keine Schwarzdaten innerhalb einer vorbestimmten Beabstandung von der Bandgrenze, wie es durch die gestrichelte Linie 190 dargestellt ist. Die resultierende Schwarztabelle hat keine Blöcke in der unteren Zeile der Schwarztabelle, die dem Band 1 entspricht. Daher wird dieses Band direkt zu dem Drucker gesendet. Band 2 wird auf dieselbe Art und Weise wie Band 1 behandelt, und dasselbe wird ebenfalls zu dem Drucker gesendet.
- Band 3 enthält jedoch sowohl Schwarz- als auch Farbdaten. Nachdem die Schwarz- und die Farbblöcke in dem Band 3 markiert sind, existieren Schwarzblöcke in der unteren Zeile des Bands in der Schwarztabelle. Es sei angemerkt, daß die Grenze um das Balkendiagramm schwarz ist und sich über die Bandgrenze 186 (siehe 192) erstreckt. Fragezeichen werden in den Schwarzblöcken unten an dem Band plaziert.
- Nachdem die Farbe und die Fragezeichen ausgebreitet worden sind, werden Fragezeichen für alle Schwarzblöcke vorhanden sein, die die Grenze um das Balkendiagramm umfassen. Da dieses Band in sich Fragezeichen hat, wird dieses Band (seine CMVK-Daten) auf eine Platte gespoolt. Die Fragezeichenblöcke werden als Schwarzblöcke gespoolt, d. h. die Daten bleiben in der K-Ebene. Wieder vermutet der Algorithmus, daß echtes Schwarz die korrekte zu verwendende Tinte ist. Alle Fragezeichen werden dann von der Schwarz- und der Farbtabelle entfernt. Diese Fragezeichenblöcke sind nun neue Schwarzblöcke.
- Band 4 wird in den Speicher gebracht. Der schwarze Kreis 196, der sich über die Bänder 4 und 5 bei 188 erstreckt, bewirkt Fragezeichen in zwei Blöcken, und zwar ähnlich zu der Grenze in dem Band 3. Nachdem die Farbe und die Fragezeichen ausgebreitet worden sind, wird sich die Farbe zurück in das Band 3 ausgebreitet haben (die Farbe von den Balken breitet sich zu der Grenze in dem Band 4 aus und setzt sich hoch bis zu der Grenze in dem Band 3 fort). Die auf die Platte gespoolten Daten für das Band 3 sind unkorrekt, da es angenommen wurde, daß die Grenze mit echtem Schwarz gedruckt werden wird, und nicht mit zusammengesetztem Schwarz.
- Dieses Verfahren ruft nun Band 3 ab und empfängt die CMYK- Ebenen erneut. Das Verfahren verfolgt, welche Bänder auf die Platte gespoolt worden sind. Wenn die CMYK-Daten für das Band 3 dieses zweite Mal empfangen werden, sind die Farbund die Schwarztabelle für dieses Band vollständig, und das Verfahren weiß, welche Tinten für die Grenze um das Farbdiagramm verwendet werden sollen. Die Farbtabelle wird diese Blöcke für die Grenze bereits als Farbe markiert zeigen und wird die K-Daten in die CMY-Ebenen bewegen, damit dieselben als zusammengesetztes Schwarz gedruckt werden.
- Band 4 wird nun wieder verarbeitet, und es wird zu der Platte gespoolt, da der schwarze Kreis 196 sich über die Bandgrenze 188 erstreckt. Die Fragezeichen in dem Band 4 werden entfernt, und Band 5 wird in den Speicher gebracht. Nach dem Markieren der Schwarz- und der Farb-Blöcke in dem Band 5 existieren keine Schwarzblöcke in der unteren Zeile des Bands. In der Tat ist das letzte Band der Seite ein Spezialfall, es können keine Fragezeichen in diesem Band sein, da Schwarz in der letzten Zeile des letzten Bandes keine Farbe berühren wird. Die Farbe wird nun ausgebreitet (es existieren keine Fragezeichen, die ausgebreitet werden können). Nachdem die Farbausbreitung vollendet ist, werden keine Fragezeichen in dem Band 4 sein, da sich keine von dem Band 5 ausgebreitet haben. Die für das Band 4 auf die Platte gespoolten Daten werden direkt zu dem Drucker gesendet. Band 5 weist keine Fragezeichen auf, weshalb dasselbe ebenfalls direkt zu dem Drucker gesendet wird.
- Nach der Darstellung und Beschreibung der Prinzipien der Erfindung bei einem bevorzugten Ausführungsbeispiel derselben sollte es für Fachleute offensichtlich sein, daß die Erfindung in Anordnung und Detail modifiziert werden kann, ohne von den Prinzipien abzuweichen. Es werden alle Modifikationen, die innerhalb des Bereichs der beigefügten Ansprüche liegen, beansprucht.
Claims (10)
1. Verfahren zum Steuern des Verlaufens zwischen
Farbpunkten und Echtschwarzpunkten in einem gedruckten Bild,
das in einem Flüssigtinten-Farbgraphikdrucksystem
erzeugt wird, wobei das Verfahren folgende Schritte
aufweist:
Auswählen einer Anforderung nach minimaler Beabstandung
(Fig. 1) zwischen Farbpunkten und Echtschwarzpunkten,
die ausreichend ist, um ein Verlaufen zwischen
denselben in einem gedruckten Bild zu steuern (Fig. 2);
Teilen einer Seite von Graphikeingangsdaten, die das
Bild darstellen, um eine Serie von Bändern (Fig. 26) zu
bilden, wobei jedes Band von Eingangsdaten eine
vorbestimmte Anzahl von Zeilen von Bits in Farbebenen
aufweist (Fig. 7A);
Laden eines ersten Bands der Serie (52) in einen
lokalen Speicherraum als ein gegenwärtiges Band;
Aufbauen einer anfänglichen K-Ebene (52) für das
gegenwärtige Band, um Daten für ein folgendes Drucken mit
Echtschwarztinte zu speichern, durch Bewegen aller
Daten für zusammengesetztes Schwarz von den Farbebenen
(54, 56, 58) in die K-Ebene (60);
Untersuchen des gegenwärtigen Bands (66), um
Verletzungen der Anforderung nach minimaler Beabstandung zu
erfassen; und
Korrigieren von erfaßten Verletzungen durch Bewegen
ausgewählter Daten (66) von der K-Ebene (52) zurück in
die Farbebenen für ein schließliches Drucken mit
Farbtinten
2. Ein Verfahren gemäß Anspruch 1, bei dem das Untersuchen
des gegenwärtigen Bands von Daten folgende Schritte
aufweist:
Auswählen einer Blockgröße, die zumindest der
ausgewählten minimalen Beabstandung zwischen einer Farb- und
der Schwarztinte entspricht, in sowohl der vertikalen
als auch der horizontalen Dimension (Fig. 1);
logisches Partitionieren des gegenwärtigen Bands, um
eine Serie von Blöcken der ausgewählten Blockgröße zu
definieren (Fig. 7A);
Bezeichnen jedes der Blöcke in der Serie als entweder
einen Farbblock, oder einen Schwarzblock oder einen
Weißblock (Fig. 11); und
Untersuchen der Blockbezeichnungen (66), um indirekt
Beabstandungsverletzungen zu erfassen.
3. Ein Verfahren gemäß Anspruch 1, bei dem das Untersuchen
des gegenwärtigen Bands folgende Schritte aufweist:
Bereitstellen einer Farbtabelle (Fig. 7B) und einer
Schwarztabelle (Fig. 8B) zum Verarbeiten der
Eingangsdaten in komprimierter Form;
Aktualisieren der Farb- und der Schwarztabelle (52), um
Daten zu umfassen, die das gegenwärtige Band
darstellen; und
Untersuchen der Farb- und der Schwarztabelle (66), um
Verletzungen der Anforderung nach minimaler
Beabstandung indirekt zu erfassen.
4. Ein Verfahren gemäß Anspruch 3, bei dem das
Bereitstellen
der Farb- und der Schwarztabelle folgende Schritte
aufweist:
Aufbauen einer Farbtabelle (52, Fig. 7B) in dem lokalen
Speicherraum mit einer Serie von Bits, wobei jedes
Farbtabellenbit einem jeweiligen der Farbebenenblöcke
entspricht, um durch seinen Zustand anzuzeigen, ob der
entsprechende Farbebenenblock ein Farbblock ist oder
nicht; und
Aufbauen einer Schwarztabelle (52, Fig. 8B) mit einer
Serie von Bits, wobei jedes Schwarztabellenbit einem
entsprechenden der K-Ebenenblöcke entspricht, um durch
seinen Zustand anzuzeigen, ob der entsprechende
K-Ebenenblock ein Schwarzblock ist oder nicht;
Dimensionieren sowohl der Farbtabelle als auch der
Schwarztabelle auf adäquate Art und Weise, um ein Bit
von Daten zu speichern, das jedem Block der gesamten
Seite der Graphikeingangsdaten entspricht (Fig. 26),
derart, daß Blockbezeichnungen der gesamten Seite in
den Tabellen gehalten werden können; und
Speichern der Blockbezeichnungen in den entsprechenden
Bitpositionen in der Farb- und der Schwarztabelle; und
wobei der Korrekturschritt folgende Schritte aufweist:
Aktualisieren der Farb- und der Schwarztabelle, um die
ausgewählten Daten, die zurück in die Farbebenen bewegt
wurden, als Farbblöcke neu zu bezeichnen; und
Ausbreiten der Farbbezeichnungen durch die Tabellen.
5. Ein Verfahren gemäß Anspruch 1, 2, 3 oder 4, das ferner
folgenden Schritt aufweist:
wenn Echtschwarzdaten neben dem unteren Teil des
gegenwärtigen Bandes nach dem Korrekturschritt (220, 248)
bleiben, Spoolen des gegenwärtigen Bands (250) zu einer
Speicherung für eine folgende Verarbeitung, um
aufzulösen, ob die Echtschwarzdaten vor dem Drucken in
zusammengesetztes Schwarz verändert werden können.
6. Ein Verfahren gemäß Anspruch 4, das ferner folgende
Schritte aufweist:
vor dem Untersuchen der Farb- und der Schwarztabelle
und dem Korrigieren von Verletzungen der Anforderung
(214) nach minimaler Beabstandung, wenn das
gegenwärtige Band nicht das letzte Band der Serie (207) ist,
Umwandeln von Schwarzblöcken in der unteren Zeile des
Bandes in Fragezeichenblöcke (212); und nach den
Schritten des Untersuchens und Korrigierens:
Untersuchen aller Blockbezeichnungen in den Tabellen,
um Schwarzblöcke neben Fragezeichenblöcken (216) zu
erfassen;
Neu-Bezeichnen von erfaßten Schwarzblöcken neben einem
Fragezeichen als Fragezeichenblöcke (216), wodurch
Fragezeichendaten durch Schwarzdaten in den Tabellen
ausgebreitet werden; dann
Verarbeiten vorher gespoolter Bänder von Daten (218)
um ein Drucken solcher der vorher gespoolten Bänder zu
erlauben, welche durch Verarbeiten des gegenwärtigen
Bandes aufgelöst worden sind, wodurch Bänder in der
empfangenen Reihenfolge gedruckt werden; und dann
Verarbeiten (220) des gegenwärtigen Bands.
7. Ein Verfahren gemäß Anspruch 6, bei dem das Verarbeiten
von vorher gespoolten Bändern von Daten das Untersuchen
des entsprechenden Abschnitts der Farb- und der
Schwarztabelle umfaßt, und
für jedes vorher gespoolte Band (246), wenn keine
Fragezeichen existieren (230), und wenn keine neue Farbe
in das gespoolte Band (234) ausgebreitet wurde, Drucken
des gespoolten Bandes (240).
für jedes vorher gespoolte Band, wenn eine neue Farbe
in das vorher gespoolte Band ausgebreitet wurde,
Neuabbilden (236) des vorher gespoolten Bandes; und
für jedes vorher gespoolte Band, wenn Fragezeichen
existieren (230), Unverändertlassen des vorher gespoolten
Bandes (232) für eine folgende Verarbeitung (218), da
dasselbe noch nicht aufgelöst werden kann.
8. Ein Verfahren gemäß Anspruch 7, bei dem das Neuabbilden
ein erneutes Laden des vorher gespoolten Bandes als das
gegenwärtige Band umfaßt.
9. Ein Verfahren gemäß Anspruch 6, bei dem das Verarbeiten
(220) des gegenwärtigen Bandes folgende Schritte
aufweist:
wenn kein Fragezeichen in den Tabellen, die dem
gegenwärtigen Band (248) entsprechen, angezeigt ist,
Weiterleiten des gegenwärtigen Bands von Daten zu dem
Drucker;
wenn ein Fragezeichen in den Tabellen für das
gegenwärtige Band angezeigt ist, Spoolen des gegenwärtigen
Bands (250) zur Speicherung für eine folgende
Verarbeitung als ein gespooltes Band, und Markieren des
gegenwärtigen Bandes als verarbeitet, derart, daß es vor dem
Drucken nicht wieder verarbeitet werden muß, selbst
wenn dasselbe neu abgebildet wird (209 - 213).
10. Ein Verfahren gemäß Anspruch 6, 7 oder 9, das ferner
folgende Schritte aufweist:
Löschen aller Fragezeichen (222) aus den Tabellen;
wenn die Seite nicht vollständig gedruckt ist (224),
Laden eines nächsten Bandes der Serie (201) als ein
gegenwärtiges Band; und
Wiederholen der vorherigen Schritte, um die restlichen
Bänder von Daten in der Serie sequentiell zu
verarbeiten, um das Drucken des Bildes zu vollenden, während
die Anforderung nach minimaler Beabstandung beibehalten
wird.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/954,787 US5475800A (en) | 1991-10-29 | 1992-09-30 | Color separation in color graphics printing with limited memory |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE69312840D1 DE69312840D1 (de) | 1997-09-11 |
| DE69312840T2 true DE69312840T2 (de) | 1997-11-27 |
Family
ID=25495930
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE69312840T Expired - Fee Related DE69312840T2 (de) | 1992-09-30 | 1993-09-22 | Farbentrennung für graphischen Farbdruck mit begrenztem Speicher |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5475800A (de) |
| EP (1) | EP0590852B1 (de) |
| JP (1) | JP3319834B2 (de) |
| DE (1) | DE69312840T2 (de) |
Families Citing this family (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6064761A (en) * | 1993-03-08 | 2000-05-16 | Canon Information Systems Research Australia Pty Limited | Near black under color removal |
| US6116720A (en) * | 1993-10-28 | 2000-09-12 | Canon Kabushiki Kaisha | Ink jet recording method and apparatus for preventing color boundary blur |
| JP3029174B2 (ja) * | 1993-10-28 | 2000-04-04 | キヤノン株式会社 | インクジェット記録装置 |
| JPH07135575A (ja) * | 1993-11-12 | 1995-05-23 | Canon Inc | カラー画像情報出力装置 |
| US5553199A (en) * | 1994-05-03 | 1996-09-03 | Eastman Kodak Company | Method and apparatus for calibrating a four color printer |
| JP3175498B2 (ja) * | 1994-10-14 | 2001-06-11 | セイコーエプソン株式会社 | インクジェット式カラー印刷のための黒色領域識別方式 |
| US5975678A (en) * | 1994-10-27 | 1999-11-02 | Canon Kabushiki Kaisha | Ink jet recording apparatus and method using plural types of ink |
| DE69528959T2 (de) * | 1995-03-01 | 2003-08-21 | Hewlett-Packard Co. (N.D.Ges.D.Staates Delaware), Palo Alto | Tintenstrahldruckverfahren unter Verwendung von Farbenverstärkung in schwarzen Gebieten |
| US6259536B1 (en) * | 1995-12-27 | 2001-07-10 | Xerox Corporation | Color printing yielding a background dependent black image (i.e. intelligent black) |
| US5809215A (en) * | 1996-04-18 | 1998-09-15 | Lexmark International, Inc. | Method of printing to inhibit intercolor bleeding |
| US5739917A (en) * | 1996-07-12 | 1998-04-14 | Seiko Epson Corporation | Error-diffusion-type half-toning employing adaptive thresholding for enhanced smoothness |
| US5838885A (en) * | 1996-09-09 | 1998-11-17 | Seiko Epson Corporation | Salt-and-pepper-noise reduction |
| US5778160A (en) * | 1996-09-24 | 1998-07-07 | Xerox Corporation | Liquid ink printing system having region-dependent image processing |
| US5867179A (en) * | 1996-12-31 | 1999-02-02 | Electronics For Imaging, Inc. | Interleaved-to-planar data conversion |
| US6118548A (en) * | 1998-02-05 | 2000-09-12 | Canon Kabushiki Kaisha | Replacing true black with process black |
| JP4158310B2 (ja) * | 2000-03-31 | 2008-10-01 | ブラザー工業株式会社 | インク噴射装置の駆動方法およびその装置 |
| US20030081244A1 (en) * | 2001-10-30 | 2003-05-01 | Clouthier Scott C. | Method and apparatus for processing data in an imaging device |
| US7289243B2 (en) * | 2002-08-07 | 2007-10-30 | Lexmark International, Inc. | Apparatus and method for data compression optimized by print head architecture |
| US7246880B2 (en) * | 2004-10-29 | 2007-07-24 | Hewlett-Packard Development Company, L.P. | Method for black pixel designation in document image data |
| JP2008089804A (ja) * | 2006-09-29 | 2008-04-17 | Fujinon Corp | 撮像装置 |
| US8665482B2 (en) * | 2007-03-01 | 2014-03-04 | Konica Minolta Laboratory U.S.A., Inc. | Raster image processor using a self-tuning banding mode |
| DE102018201669A1 (de) | 2017-03-21 | 2018-09-27 | Heidelberger Druckmaschinen Ag | Verfahren zum Erhalt des Schwarzaufbaus von Objekten |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4682216A (en) * | 1983-03-08 | 1987-07-21 | Canon Kabushiki Kaisha | Color image picture forming process and apparatus which improves the quality of the black portions of the picture |
| US4958236A (en) * | 1987-06-11 | 1990-09-18 | Canon Kabushiki Kaisha | Image processing method and apparatus therefor |
| US4896275A (en) * | 1987-07-10 | 1990-01-23 | Bull Hn Information Systems Inc. | Full page graphics image display data reduction |
| JP2713935B2 (ja) * | 1987-12-29 | 1998-02-16 | キヤノン株式会社 | 画像処理方法 |
| JPH01228376A (ja) * | 1988-03-09 | 1989-09-12 | Minolta Camera Co Ltd | 階調表現方法 |
| US5012257A (en) * | 1990-03-16 | 1991-04-30 | Hewlett-Packard Company | Ink jet color graphics printing |
| US5283671A (en) * | 1991-02-20 | 1994-02-01 | Stewart John R | Method and apparatus for converting RGB digital data to optimized CMYK digital data |
| US5168552A (en) * | 1991-10-29 | 1992-12-01 | Hewlett-Packard Company | Color separation in ink jet color graphics printing |
| US5428377A (en) * | 1992-08-11 | 1995-06-27 | Xerox Corporation | Color spatial filtering for thermal ink jet printers |
| US5331438A (en) * | 1992-11-30 | 1994-07-19 | Xerox Corporation | Method and apparatus for improving full color images using process black and printer black |
-
1992
- 1992-09-30 US US07/954,787 patent/US5475800A/en not_active Expired - Lifetime
-
1993
- 1993-09-22 EP EP93307475A patent/EP0590852B1/de not_active Expired - Lifetime
- 1993-09-22 DE DE69312840T patent/DE69312840T2/de not_active Expired - Fee Related
- 1993-09-30 JP JP26791993A patent/JP3319834B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| EP0590852A2 (de) | 1994-04-06 |
| US5475800A (en) | 1995-12-12 |
| DE69312840D1 (de) | 1997-09-11 |
| JPH06217119A (ja) | 1994-08-05 |
| EP0590852A3 (en) | 1994-05-18 |
| EP0590852B1 (de) | 1997-08-06 |
| JP3319834B2 (ja) | 2002-09-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69312840T2 (de) | Farbentrennung für graphischen Farbdruck mit begrenztem Speicher | |
| DE69225377T2 (de) | Farbentrennung für grafischen Tintenstrahl-Druck | |
| DE69418932T2 (de) | Verfahren zur automatischen Bestimmung von Farbtrennflächen zur Korrektur von Fehlüberdeckungen beim Mehrplatten-Farbdruck | |
| DE69015235T2 (de) | Vorrichtung und Methode zur Umwandlung eines punktorganisierten einfarbigen Bildes in ein Grauwertbild mittels Operationen in einer Suchtabelle. | |
| DE68925871T2 (de) | Verfahren und System zur Qualitätsverbesserung von durch Tintenspritzdrucker erzeugten Farb- und Schwarzweiss-Bildern | |
| DE69326645T2 (de) | Bildverarbeitungsverfahren zur Verringerung der Deckung von Markierungsmaterial in Druckprozessen | |
| DE69211809T2 (de) | Bilddatenverarbeitungsverfahren und -gerät | |
| DE3783542T2 (de) | Verfahren zur erzeugung eines graustufenbildes. | |
| DE69225574T2 (de) | Farbbildverarbeitung | |
| DE69420225T2 (de) | Verringerung der Anzahl gedruckter Punkte in einer Pixelanordnung | |
| EP0764310B1 (de) | Verfahren zur generierung einer contone-map | |
| DE60035401T2 (de) | Gradientenbasierte Verbesserung von Farbtrennflächen mit Hilfe von gemusterten Bereichen | |
| DE69309192T2 (de) | Farbgrenzenverbesserung von einem elektrostatischen Farbdrucker | |
| DE602004013253T2 (de) | Verfahren zur Maskierung von ausgefallenen Druckelementen in einem Drucker | |
| DE69330062T2 (de) | Verfahren und Vorrichtung zur Verarbeitung von Farbbildern | |
| DE69416132T2 (de) | Seitenzusammensetzungssystem | |
| DE4139484A1 (de) | Verfahren und einrichtung zur drucksteuerung | |
| EP1002421B1 (de) | Vorrichtung und verfahren zum bereitstellen von vorlagen für die mehrfarbenreproduktion | |
| DE69025705T2 (de) | Seitenpuffer für einen elektronischen grautonfarbdrucker | |
| DE69225048T2 (de) | Druckerseitenzusammensetzung mit Farben und Text | |
| DE69628809T2 (de) | Verfahren und System für den digitalen Farbdruck | |
| DE69225655T2 (de) | Zweifarbendrucker | |
| WO1996027976A1 (de) | Verfahren und einrichtung zur erzeugung eines grau-composite-proofs | |
| EP1267566A2 (de) | Verfahren zur Erzeugung von Überfüllrahmen in einer Druckseite | |
| DE69834227T2 (de) | Erkennung und Korrektion von Farblücken |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition | ||
| 8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD CO. (N.D.GES.D.STAATES DELAWARE), |
|
| 8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
| 8339 | Ceased/non-payment of the annual fee |