DE69737717T2 - Bildprozessor - Google Patents

Bildprozessor Download PDF

Info

Publication number
DE69737717T2
DE69737717T2 DE69737717T DE69737717T DE69737717T2 DE 69737717 T2 DE69737717 T2 DE 69737717T2 DE 69737717 T DE69737717 T DE 69737717T DE 69737717 T DE69737717 T DE 69737717T DE 69737717 T2 DE69737717 T2 DE 69737717T2
Authority
DE
Germany
Prior art keywords
data
image
coordinate
intermediate codes
data format
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 - Lifetime
Application number
DE69737717T
Other languages
English (en)
Other versions
DE69737717D1 (de
Inventor
Kazumi Kawasaki-shi KOBAYASHI
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Finetech Nisca Inc
Original Assignee
Canon Finetech Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Finetech Inc filed Critical Canon Finetech Inc
Application granted granted Critical
Publication of DE69737717D1 publication Critical patent/DE69737717D1/de
Publication of DE69737717T2 publication Critical patent/DE69737717T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J5/00Devices or arrangements for controlling character selection
    • B41J5/30Character or syllable selection controlled by recorded information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1245Job translation or job parsing, e.g. page banding by conversion to intermediate or common format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0005Accepting output data; Preparing data for the controlling system
    • G06K2215/0014Transforming the printer input data into internal codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0062Handling the output data combining generic and host data, e.g. filling a raster
    • G06K2215/0065Page or partial page composition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Record Information Processing For Printing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung bezieht sich auf einen Bildprozessor, der zur Verwendung in einer Vorrichtung wie einem Plotter, einem Drucker oder dergleichen geeignet ist, der Vektordaten in entsprechende Rasterdaten für die jeweiligen Bereiche eines Bildes umwandelt, und insbesondere auf einen Bildprozessor, der die Vektordaten in Zwischencodes umwandelt.
  • Stand der Technik
  • Bisher sind Rasterplotter bekannt, die einen Druckvorgang mit einem Voll-Bitmap-System zum Umwandeln einer Seite (oder mehrerer Seiten) ganzer Eingangsbilddaten in Rasterdaten durchführen, um die umgewandelten Daten in einen Speicher zu übertragen.
  • Dieses Voll-Bitmap-System benötigt eine große Speicherkapazität, weil es eine Seite (oder mehrere Seiten) von Rasterdaten in den Speicher abbilden muss. Im Einzelnen benötigt ein Rasterplotter mit 128 Druckköpfen mit Düsen für 360 dpi (Anzahl der Punkte pro Inch [25,4 mm]), der zum Plotten eines Formats von A0 (841 mm Breite × 1.189 mm Länge) geeignet ist, 186 (Kilobyte) × 1.189 (mm)/25,4 (mm) ÷ 128/360 = ca. 24 Megabyte Speicherkapazität, um darin eine Seite Eingangsbilddaten in Rasterdaten abzubilden. Die „186 (Kilobyte)" sind die nötige Speicherkapazität, um darin einen Bandabschnitt der Eingangsbilddaten in Rasterdaten abzubilden.
  • Bei solchen Rasterplottern mit Voll-Bitmap-System hat die Notwendigkeit einer großen Speicherkapazität zu einer Erhöhung der Kosten für den Plotter geführt.
  • Andererseits sind auch Rasterplotter mit einer bandweisen Verarbeitung bekannt. Eine solche Vorrichtung ist in US-A-4.254.467 beschrieben. Die bandweise Verarbeitung wird hauptsächlich für Plotter verwendet, die einen beweglichen Wagen aufweisen, auf dem Schreibköpfe angeordnet sind, wobei die Eingangsbilddaten pro Bereich einer vorbestimmten Einheit (zum Beispiel pro Band) in Zwischencodes umgewandelt werden und die umgewandelten Zwischencodes dann in Rasterdaten umgewandelt werden. Hierbei bezieht sich „Band" auf einen Streifenbereich, der in einem Scandurchgang der Köpfe geschrieben wird.
  • Um die Daten für einen Vektor zu erzeugen, müssen zwei Endpunkte (Kopf- und Fußende) des Vektors sowie Modifizierinformationen für den Vektor (das heißt Plotterparameter) einschließlich Linienlänge, Linienbreite, Form der Linienenden und dergleichen definiert werden, wie in 8 gezeigt. Daher wandelt der Rasterplotter mit der bandweisen Verarbeitung zuerst die Rasterdaten, die durch die Kopf- und Fußendpunkte definiert sind, wie in 9 gezeigt, mit verschiedenen hinzugefügten Modifizierinformationen, in die Zwischencodes einer so genannten Display-List um und führt dann eine Vektor-Raster-Umwandlung (VRC) bezogen auf die Zwischencodes durch. Die Zwischencodes sind Daten in einem Format, das zur Verwendung bei der Vektor-Raster-Umwandlung angepasst ist, und umfassen Koordinatendaten, die Konturen der jeweiligen Vektoren darstellen, auf die die Modifizierinformationen bandweise reflektiert worden sind, auf der Grundlage der Vektordaten der Eingangsbilddaten. Im Übrigen werden die Zwischencodes nachstehend ausführlich beschrieben.
  • Durch bandweises Umwandeln der Zwischencodes, die vor dem Druck erzeugt werden, in Rasterdaten ist es daher möglich, den Nachteil des Abbildens der Eingangsbilddaten als Ganzes in den Speicher wie bei dem vorstehend erwähnten Voll-Bitmap-Rasterplotter zu vermeiden und dadurch die nötige Speicherkapazität zu verringern.
  • Im Einzelnen beträgt bei einem Rasterplotter mit 128 Druckköpfen mit Düsen für 360 dpi, der zum Plotten eines Formats von A0 geeignet ist, die benötigte Speicherkapazität zum Abbilden eines Bandabschnitts der Eingangsbilddaten in Rasterdaten: 841 (mm) × 25,4 (mm) × 360 (dpi) × 128 = ca. 186 (Kilobyte).
  • Die Speicherkapazität ist im Vergleich zu dem vorstehend erwähnten Rasterplotter mit dem Voll-Bitmap-System deutlich geringer.
  • Ein solcher Rasterplotter mit bandweiser Verarbeitung soll die Zwischencodes beim erneuten Plotten der Daten verwenden, die bereits zuvor geplottet worden sind, und diese Zwischencodes sind in Form von Koordinatendaten erzeugt worden, auf die die Modifizierinformationen reflektiert worden sind. Aus diesem Grund ist es schwierig, nachträglich eine zusätzliche Verarbeitung wie Drehen, Vergrößern, Verkleinern oder Ändern der Linienbreite durchzuführen.
  • Im Übrigen ist es möglich, die Zwischencodes nach dem Ändern jeweiliger Plot-Parameter im Hinblick auf einen Teil der Eingangsbilddaten für jedes Band zu reproduzieren, indem die Kapazität eines Eingangspufferspeichers erhöht wird, in dem die Eingangsbilddaten vorübergehend zwischengespeichert sind, um die in dem Eingangspufferspeicher gespeicherten Daten zu benutzen. Um dies zu erreichen, muss der Eingangspufferspeicher jedoch eine große Speicherkapazität aufweisen, wodurch Probleme hinsichtlich der Montage der Teile und der Kosten des Rasterplotters auftreten, weshalb dieser Ansatz nicht praktikabel ist.
  • Außerdem ist eine andere Vorrichtung nach dem Stand der Technik bekannt, die eine Einrichtung zum Verschieben von Bildern aufweist, um die Verschwendung von Papier zu vermeiden, wenn mehrere getrennte Bilder auf demselben Papier ausgegeben werden. Anstatt mehrere Bilder vertikal entlang eines langen Papierblatts in der Reihenfolge anzuordnen, in der die Bilder empfangen werden, wie in 19(a) gezeigt, verschiebt die Bildverschiebungseinrichtung die Bilder wie in 19(b) gezeigt. Üblicherweise wird dieses Verschieben der Bilder beim Umwandeln der Eingangsbilddaten in die Zwischencodes durchgeführt, indem die Positionen für die Verschiebung unter Berücksichtigung der Größen der jeweiligen Bilder für die Eingangsbilddaten bestimmt werden, die auf einem tatsächlichen Papierblatt ausgegeben werden sollen.
  • Für diesen Ansatz ist es jedoch erforderlich, dass die Größe des aktuellen Papierblatts bekannt ist, und die Größen der jeweiligen Bilder sollten vor der Umwandlung der Eingangsbilddaten in die Zwischencodes eingestellt werden. Aus diesem Grund muss die Größe des aktuellen Papierblatts aufgrund eines Benutzerbefehls oder aus Informationen von einer Druckeinheit 26 bekannt sein. Auch ist es bezüglich der Bildgröße erforderlich, dass die Größe jedes Bildes explizit in Form eines Daten-Headers oder dergleichen oder durch einen expliziten Benutzerbefehl vor Beginn der Bilddateneingabe festgelegt wird. Wenn während des Plottens eines Bildes nächste Bilddaten eingegeben werden, für die die Größe eines Papierblatts nicht festgelegt ist, werden daher die Zwischencodes für die Eingangsbilddaten nicht erzeugt, wodurch es zu einer Leerlaufzeit im CPU-Betrieb kommt, was ein Problem hinsichtlich der effizienten Nutzung der CPU verursacht.
  • In Anbetracht der vorstehenden Probleme ist ein Ziel der vorliegenden Erfindung die Bereitstellung eines Bildprozessors, der Eingangsbilddaten in Rasterdaten umwandelt, ohne dass er einen Speicher mit großer Speicherkapazität für die Bitmap-Abbildung aufweist, und es ermöglicht, Modifizierinformationen vor dem Plotten zu ändern, ohne dass er einen Eingangspufferspeicher mit großer Speicherkapazität aufweist.
  • Ein weiteres Ziel der vorliegenden Erfindung ist die Bereitstellung eines Bildprozessors, der effektiv eine CPU benutzt, die Eingangsbilddaten analysieren kann, auch wenn die Größe eines Papierblatts für das Plotten nicht im Voraus eingestellt ist.
  • BESCHREIBUNG DER ERFINDUNG
  • Nach der vorliegenden Erfindung wird ein Bildprozessor zur bandweisen Erzeugung eines Bildes bereitgestellt, mit einer Datenformat-Umwandlungseinrichtung zum Umwandeln von Eingangsbilddaten eines ersten Datenformats in Bilddaten eines zweiten Datenformats, wobei die Eingangsdaten des ersten Datenformats Koordinatendaten von Endpunkten jeweils ein Bild darstellender Vektoren enthalten, dadurch gekennzeichnet, dass die sie weiter verschiedene Modifizierinformationen der Vektoren enthalten, dass das zweite Datenformat eine gegenüber dem ersten Datenformat verringerte Datenmenge aufweist, und dass er ferner aufweist eine Speichereinrichtung zum Speichern der Gesamtheit der durch die Datenformat-Umwandlungseinrichtung erhaltenen Bilddaten des zweiten Datenformats, eine Zwischencode-Erzeugungseinrichtung, die aufgrund der Bilddaten des zweiten Datenformats bandweise Zwischencodes erzeugt, die Konturen der jeweiligen Vektoren darstellende Koordinatendaten enthalten, auf die die verschiedenen Modifizierinformationen der Vektoren reflektiert worden sind, und eine Rasterdaten-Erzeugungseinrichtung zum bandweisen Umwandeln der Zwischencodes in entsprechende Rasterdaten.
  • Im Einzelnen wandelt der Bildprozessor Vektordaten, bei denen es sich um die Eingangsbilddaten des ersten Datenformats handelt, in Bilddaten (das heißt Vor-Zwischencodes) des zweiten Datenformats um, das sich von dem ersten Datenformat unterscheidet, wodurch die Bilddaten des zweiten Datenformats in Form von Vektordaten, ergänzt mit den verschiedenen Modifizierinformationen (zum Beispiel eine Linienbreite, Form der Endpunkte einer Linie usw.) gespeichert werden, bevor die Modifizierinformationen in den Zwischencodes festgelegt werden.
  • Vorzugsweise ist in dem zweiten Datenformat eine Gruppe von in Serie verbundenen Vektoren durch Koordinatendaten der Vektoren-Endpunkte definiert, wobei nur das Kopfende des ersten der Vektoren durch absolute Koordinaten, die übrigen Vektoren-Endpunkte dagegen durch relative Koordinaten dargestellt sind.
  • Weiter können die Koordinatendaten des zweiten Datenformats vorzugsweise Daten variabler Länge sein, und die Koordinatendaten jedes Koordinatenpunkts können an ihrem Kopf zusätzlich mit Indexdaten fester Länge versehen sein, die die Datenlänge der Koordinatendaten angeben und bezeichnen, ob die Koordinaten absolute oder relative Koordinaten sind. In diesem Fall können, wenn mehrere Koordinatendaten desselben Typs nacheinander auftreten, die Indexdaten bezüglich der zweiten und der folgenden Koordinatendaten aus der Mehrzahl von Koordinatendaten weggelassen werden.
  • In dem zweiten Datenformat können sich die Koordinatendaten und die Indexdaten durch ein Dateneinheit-Kopfbit einer vorgegebenen Mehrzahl von Bits voneinander unterscheiden.
  • In dem zweiten Datenformat enthalten die verschiedenen Modifizierinformationen Stiftattributdaten fester Länge, an deren Kopf weitere Indexdaten fester Länge zu ihrer Unterscheidung hinzugefügt sind. Die Stiftattributdaten können vorzugsweise nur den Koordinatendaten eines Vektors hinzugefügt sein, dessen Modifizierinformationen sich von denen eines vorhergehenden Vektors unterscheiden.
  • Bei diesem Aufbau des zweites Datenformats ist die Datenmenge in den Bilddaten im zweiten Datenformat gegenüber den Bilddaten des ersten Datenformats im Allgemeinen verringert (komprimiert). Entsprechend kann die nötige Speicherkapazität der Speichereinrichtung zum Speichern der Bilddaten des zweiten Datenformats (Vor-Zwischencodes) verringert werden.
  • Die Zwischencode-Erzeugungseinrichtung kann eine Einrichtung aufweisen, die bei Erzeugung der Zwischencodes aufgrund der Bilddaten des zweiten Datenformats entsprechend einem Benutzerbefehl in den Bilddaten des zweiten Datenformats vom Benutzer spezifizierte Modifizierinformationen anstelle der verschiedenen Modifizierinformationen benutzt.
  • Alternativ kann der Bildprozessor eine Einrichtung zum Ändern eines Teils der von einem Benutzer spezifizierten Modifizierinformationen unter den in den Bilddaten des zweiten Datenformats vorhandenen, in der Speichereinrichtung gespeicherten verschiedenen Modifizierinformationen aufweisen.
  • Der Bildprozessor kann ferner eine Einrichtung aufweisen, die beim Erzeugen der Zwischencodes aufgrund der Bilddaten des zweiten Datenformats durch die Zwischencode-Erzeugungseinrichtung Positionen und Orientierungen mehrerer Bilder auf einem Papierblatt bestimmt. In diesem Fall erfasst die Datenformat-Umwandlungseinrichtung vorzugsweise die Größe eines Eingangsbildes aufgrund der Eingangsbilddaten, um die erfasste Größe angebende Bildgrößendaten in die Bilddaten des zweiten Datenformats zu überführen, wobei die Einrichtung zum Bestimmen von Positionen und Orientierungen diese in Bezug auf die Bildgrößendaten bestimmt.
  • Der Bildprozessor kann ferner eine Einrichtung umfassen, die beim Erzeugen der Zwischencodes aufgrund der Bilddaten des zweiten Datenformats durch die Zwischencode-Erzeugungseinrichtung ein Bild vergrößert/verkleinert.
  • Nach der Erfindung ist es durch Speichern der Vor-Zwischencodes, in denen die Modifizierinformationen noch nicht festgelegt sind, in der Speichereinrichtung möglich, die Modifizierinformationen ohne weiteres zu ändern und die Bilder mit diesen verschiedenen Einrichtungen zu verschieben.
  • So kann zum Beispiel ein Bild an einer beliebigen Position auf einem Papierblatt gedruckt werden, indem die Koordinatenwerte beim Umwandeln der Vor-Zwischencodes in die Zwischencodes transformiert werden. Wenn mehrere Bilder in einer Größe von zum Beispiel A4 auf Rollenpapier des Formats A0 gedruckt werden sollen, können die Bilder daher an beliebigen Positionen auf dem Papier angeordnet werden, basierend auf den Vor-Zwischencodes.
  • Darüber hinaus können durch Einstellen einer virtuellen Papiergröße, die für eine Layoutanzeige oder das Plotten verwendet wird, auf ein vorbestimmtes großes Format die Eingangsbilddaten analysiert werden, auch wenn die tatsächlich einzustellende Papiergröße nicht im Voraus bekannt ist. Weil die Änderung der Modifizierinformationen an den Vor-Zwischencodes durchgeführt werden kann, kann ein Bild mit an die tatsächliche Größe des Papierblatts angepasster Größe beim Umwandeln der Vor-Zwischencodes in die Zwischencodes geplottet werden. Auch wenn eine hohe Wahrscheinlichkeit besteht, dass Daten nacheinander übertragen werden, wie im Falle der Verwendung von Rollenpapier als Plotterpapier oder der Verwendung einer Einzelblattzufuhr, ist es möglich, selbst wenn die tatsächlich eingestellte Papiergröße geändert wird, die Eingangsbilddaten zuvor aufgrund der Vor-Zwischencodes zu analysieren, und zwar in der Zeit, während der die CPU-Last nicht hoch ist. Somit kann die CPU effizient genutzt werden.
  • In der Layoutanzeige können nach Änderung der verschiedenen Modifizierinformationen und Hinzufügen von Layoutinformationen die Vor-Zwischencodes in auf dem Monitor anzuzeigende Rasterdaten umgewandelt werden. Daher ist es möglich, weitere Modifizierungen bei der Betrachtung der Layoutanzeige auf dem Monitor hinzuzufügen, um sicherzustellen, dass ein gewünschter Zustand des Bildes erreicht wird.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt ein Blockdiagramm einer Ausführungsform, bei der ein Bildprozessor nach der vorliegenden Erfindung in einem Plotter verwendet wird.
  • 2 zeigt ein Blockdiagramm einer Hardware-Konfiguration mit einer CPU für den Plotter nach der Ausführungsform.
  • 3 zeigt ein Ablaufdiagramm für ein Umwandlungsverfahren, bei dem Vektordaten in dem Plotter nach der Ausführungsform in entsprechende Rasterdaten umgewandelt werden.
  • 4 zeigt ein Format der Vor-Zwischencodes, die für den Plotter nach der Ausführungsform verwendet werden.
  • 5 zeigt eine Datenstruktur der Indexdaten und Koordinatendaten, die die Vor-Zwischencodes bilden.
  • 6 zeigt die Ganzzahlendaten, die in den Vor-Zwischencodes verwendet werden.
  • 7 zeigt ein Beispiel, in dem die Ganzzahlendaten aus 6 in die Vor-Zwischencodes umgewandelt worden sind.
  • 8 zeigt ein Diagramm zur Veranschaulichung allgemeiner Vektordaten.
  • 9 zeigt skizzenhaft ein Umwandlungsverfahren, bei dem die Vektordaten durch bandweise Verarbeitung in die Rasterdaten für einen Rasterplotter nach dem Stand der Technik umgewandelt werden.
  • 10 zeigt ein Stiftattribut für das in 4 gezeigte Format der Vor-Zwischencodes.
  • 11 zeigt die verschiedenen Variablennamen des in 10 gezeigten Stiftattributs.
  • 12(a), (b) und (c) zeigen Verbindungsarten für die in 11 gezeigten Liniensegmente.
  • 13 zeigt ein Beispiel für die in der Ausführungsform verwendeten Zwischencodes.
  • 14 zeigt ein Diagramm zur Veranschaulichung der Datensequenzen für die in 13 gezeigten Zwischencodes.
  • 15 zeigt ein Format der Zwischencodes nach der Ausführungsform.
  • 16 zeigt ein Beispiel für die Eingangsbilddaten nach der Ausführungsform.
  • 17 zeigt Befehle, die in den in 16 gezeigten Eingangsbilddaten verwendet werden.
  • 18 zeigt einen als Ergebnis nach den Eingangsbilddaten in 16 erhaltenen Plot-Ausdruck.
  • 19(a) und (b) zeigen Diagramme zur Veranschaulichung des Verschiebens von Bildern nach der Ausführungsform.
  • 20 zeigt ein Diagramm zur Veranschaulichung einer in den Vor-Zwischencodes in 4 enthaltenen Bildgröße.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Eine Ausführungsform des Bildprozessors nach der vorliegenden Erfindung wird nachstehend ausführlich unter Bezugnahme auf die anliegenden Zeichnungen beschrieben.
  • Der Bildprozessor nach der vorliegenden Ausführungsform wird für einen Inkjet- oder Tintenstrahlplotter mit einem hin- und herbeweglichen Wagen verwendet, auf dem Tintenstrahl-Druckköpfe angeordnet sind.
  • Wie in 1 gezeigt, weist dieser Plotter eine Datenkommunikationseinrichtung 1 zum Empfangen der Eingangsbilddaten von einem übergeordneten Gerät oder Host-Computer 11, einen Eingangspufferspeicher 2 in Form eines Ringpuffers zum vorübergehenden Speichern der von der Datenkommunikationseinrichtung 1 empfangenen Eingangsbilddaten, eine Datenanalyseeinrichtung 3 zum Steuern der Gesamtheit dieses Plotters, eine Eingabeeinrichtung 5 einschließlich eines Bedienfeld des Plotters zum Annehmen verschiedener Modifizierinformationen und eine Eingabeerfassungseinrichtung 4 zum Erfassen der verschiedenen Modifizierinformationen von der Eingabeeinrichtung 5 und zum Weiterleiten derselben an die Datenanalyseeinrichtung 3 auf.
  • Der Plotter weist weiter eine Speichereinrichtung 6 zum Speichern eines Steuerprogramms für das vorliegende Gerät, Vor-Zwischencodes, Zwischencodes, Modifizierinformationen, usw., eine Anzeigeeinrichtung 8, die die auszugebenden Bilder im Voraus anzeigt, um das Layout der Bilder zu bestätigen, eine Anzeigesteuerung 7 zum Steuern der Anzeige der Bilder auf der Anzeigeeinrichtung 8, eine Druckeinrichtung 10 zum Plotten eines Bildes entsprechend den Eingangsbilddaten und eine Drucksteuerung 9 zum Steuern des Plot- bzw. Druckbetriebs der Druckeinrichtung 10 auf. Die Speicherein richtung 6 umfasst zum Beispiel einen Halbleiterspeicher, eine magnetoptische Platte, eine Magnetplatte (einschließlich einer Diskette, Festplatte usw.) und dergleichen.
  • Im Einzelnen zeigt 2 eine Hardware-Konfiguration, bei der ein Zentralprozessor (CPU) hauptsächlich zur Realisierung der Funktion der Datenanalyseeinrichtung 3 und der Steuerungsfunktion der gesamten in 1 gezeigten Vorrichtung verwendet wird.
  • In 2 ist eine CPU-Busleitung 11 mit der CPU 12, einem Flash-ROM 13 zum Speichern des Programms, einem EPROM 14 zum Speichern mehrerer Arten von Schriften und eines Boot-Programms, einem EEPROM 15 zum Speichern verschiedener von einem Benutzer eingegebener Modifizierinformationen, einem RAM 16 zur Verwendung als Eingangspufferspeicher 2 und Arbeitsbereich, einer Engine-Schnittstelle 25 für die Kommunikation mit einer Druckeinheit 26 und einer E/A-Busleitung 27 verbunden. Die Druckeinheit 26 und die Engine-Schnittstelle 25 entsprechen der Drucksteuerung 9 bzw. der Druckeinrichtung 10 in 1.
  • Ebenfalls mit der E/A-Busleitung 27 verbunden sind eine SCU (serielle Kommunikationseinrichtung) 17, eine PTC (programmierbare Zeitgebersteuerung) 18 für die Unterbrechungsverarbeitung, Zeitgeberverarbeitung oder dergleichen, eine PIO (programmierbare Ein-/Ausgabeeinrichtung) 19 und ein FIFO-RAM 20. Die SCU 17 ist mit einer seriellen Schnittstelle 21 verbunden, und die PIO 19 ist mit einem Tastenfeld 22 und einer LCD-Anzeige 23 verbunden. Das Tastenfeld 22 entspricht der Eingabeeinrichtung 5 in 1, und die LCD-Anzeige 23 entspricht der Anzeigeeinrichtung 8 in 1. Der FIFO-RAM 20 ist auch mit einer parallelen Schnittstelle 24 verbunden. Die serielle Schnittstelle 21 oder die parallele Schnittstelle 24 bilden die vorstehend in Bezug auf 1 erwähnte Datenkommunikationseinrichtung 1.
  • Bei dem Plotter nach der Ausführungsform mit einer solchen Konfiguration steuert die CPU 12 die jeweiligen Einrichtungen entsprechend dem Programm, das in dem Flash-ROM 13, dem EPROM 14, dem EEPROM 15 oder dem RAM 16 gespeichert ist (diese entsprechen der Speichereinrichtung 6).
  • Das Umwandlungsverfahren von Vektordaten in Rasterdaten entsprechend dem Plotter ist in 3 gezeigt.
  • Die Datenkommunikationseinrichtung 1 empfängt Vektordaten als Eingangsbilddaten (S31). Die empfangenen Daten werden vorübergehend im Eingangspufferspeicher 2 gespeichert. Danach liest die Datenanalyseeinrichtung 3 die im Eingangspufferspeicher 2 gespeicherten Eingangsbilddaten aus und erhält die Endpunkte (Kopf- und Fußendpunkte) für jedes in diesen Eingangsbilddaten enthaltene Liniensegment (Vektor), um dieselben in ein nachstehend beschriebenes Format von Vor-Zwischencodes umzuwandeln, bei denen es sich um die Bilddaten eines zweiten Datenformats handelt, zusam men mit den mit jedem Liniensegment verbundenen Modifizierinformationen (S32). Alle durch diese Umwandlung erhaltenen Vor-Zwischencodes werden in der Speichereinrichtung 64 gespeichert. Die Speicherkapazität des Eingangspufferspeichers 2 ist ausreichend, wenn die Größe einem Teil des gesamten Bildes entspricht, weil die Verarbeitung der Eingabe der Bilddaten in den Pufferspeicher 2 parallel mit der Umwandlung des Datenformats der Eingangsbilddaten erfolgt, die im Eingangspufferspeicher 2 gespeichert sind.
  • Als Nächstes erzeugt die Datenanalyseeinrichtung 3 aufgrund der in der Speichereinrichtung 64 gespeicherten Vor-Zwischencodes die entsprechenden Zwischencodes, wie in 3 gezeigt (S33). Das heißt, die Vor-Zwischencodes werden in die Zwischencodes umgewandelt. Auch diese Zwischencodes werden in einem anderen Bereich der Speichereinrichtung 64 gespeichert. Die Zwischencodes eines gesamten eingegebenen Bildes können gespeichert werden; alternativ kann eine erforderliche Menge davon für eine anschließende VRC-Verarbeitung vorübergehend gespeichert werden. Die in den Zwischencodes verwendeten Koordinatenwerte basieren auf dem Einheitensystem der Druckpunkte bei einem tatsächlichen Ausdruck. Im Einzelnen wird das Koordinatensystem von 1/360 Inch verwendet, was einer Auflösungseinheit des Druckkopfes entspricht. Danach werden die Modifizierinformationen, deren Reflektion mit den Vor-Zwischencodes bis hier unterbrochen worden ist, auf jedes einzelne Liniensegment reflektiert. Das heißt, die Koordinaten der Konturen jedes Liniensegments, das tatsächlich gedruckt werden soll, werden bandweise berechnet, basierend auf den Koordinatenwerten der Vektordaten.
  • Beim Umwandeln der Vor-Zwischencodes in die Zwischencodes kann ein Benutzer die Modifizierinformationen für jeden Vektor (das heißt eigentlich die Modifizierinformationen für einen virtuellen Stift, mit dem der Vektor gezeichnet wird) oder die Größe eines Papierblatts ändern. Im Falle des erneuten Plottens erlaubt auch eine erneute Analyse der Vor-Zwischencodes die vorgenannten verschiedenen Modifizierungen, wodurch ein neues Bild mit hoher Geschwindigkeit erhalten wird.
  • Die Datenanalyseeinrichtung 3 wandelt diese so erhaltenen Zwischencodes weiter in Rasterdaten um, um diese an die Druckeinheit 26 zu liefern (S34).
  • In dem Datenformat der Vor-Zwischencodes liegen die Informationen für die Liniensegmente und deren entsprechende Modifizierinformationen weiter unabhängig voneinander vor. Das heißt, die Modifizierinformationen sind noch nicht auf die Koordinatendaten der Liniensegmente reflektiert worden, und die Modifizierinformationen liegen in einem Zustand vor, in dem sie unabhängig von den Liniensegmenten geändert werden können. Außerdem wird, wie nachstehend beschrieben, die Menge der gesamten Bild daten des zweiten Datenformats gegenüber dem ersten Datenformat verringert (komprimiert).
  • Wenn ein Plot-Ergebnis im Voraus überprüft und bestätigt werden soll, gibt ein Benutzer einen Befehl ein, um auf der Eingabeeinrichtung 5 eine Layoutanzeige anzuzeigen, wie in 1 gezeigt. Bei Empfang des Befehls für die Layoutanzeige erfasst die Datenanalyseeinrichtung 3 den Befehl über die Eingabeerfassungseinrichtung 4 und liest die Vor-Zwischencodes eines angegebenen Bildes, die in der Speichereinrichtung 6 gespeichert sind. Danach wandelt die Datenanalyseeinrichtung 3 die Vor-Zwischencodes in Zwischencodes und anschließend in Rasterdaten um, um die Rasterdaten durch die Anzeigesteuerung 7 auf die Anzeigeeinrichtung 8 wie zum Beispiel einen Monitor anzuwenden. Auf diese Weise kann eine Layoutanzeige des vom Benutzer angegebenen Bildes auf der Anzeigeeinrichtung 8 erhalten werden.
  • Als Nächstes sieht sich der Benutzer das angezeigte Bild an, um den Ausgabezustand vor dem eigentlichen Plotten zu kontrollieren. Wenn eine Änderung der Modifizierinformationen gewünscht wird, betätigt der Benutzer die Eingabeeinrichtung 5, um Modifizierinformationen zur Vornahme der Änderung (einschließlich Löschen oder Hinzufügen) einzugeben. Die eingegebenen Modifizierinformationen werden über die Eingabeerfassungseinrichtung 4 an die Datenanalyseeinrichtung 3 gegeben.
  • Bei Empfang der geänderten Modifizierinformationen gibt die Datenanalyseeinrichtung 3 einen Befehl zum Ändern der Modifizierinformationen aus, die in der Speichereinrichtung 6 gespeichert sind. Die damit geänderten Inhalte werden zum Beispiel im EEPROM 15 gespeichert. Entsprechend der zuvor vom Benutzer eingestellten Bedingung verwendet die Datenanalyseeinrichtung 3 vorzugsweise diese geänderte Modifizierinformationen für die Umwandlung der Vor-Zwischencodes in die Zwischencodes, um diese in Rasterdaten umzuwandeln, die wiederum an die Anzeigeeinrichtung 8 gegeben werden. Auf diese Weise kann das Bild, das den durch den Benutzer geänderten Modifizierinformationen entspricht, auf dem Monitor angezeigt werden.
  • Wenn das auf der Anzeigeeinrichtung angezeigte Bild zufrieden stellend ist, betätigt der Benutzer die Eingabeeinrichtung 5, um das Plotten zu starten. Nach Erfassen der Benutzereingabe liest die Datenanalyseeinrichtung 3 die Vor-Zwischencodes, die dem aktuell als Layout angezeigten Bild entsprechen, aus der Speichereinrichtung 6 aus, um sie in die Zwischencodes und dann in die Rasterdaten umzuwandeln, die an die Druckeinrichtung 10 gegeben werden, wie vorstehend beschrieben. So kann das Bild, das den vom Benutzer geänderten Modifizierinformationen entspricht, ausgegeben werden. Wenn die gesamten Zwischencodes gespeichert worden sind, kann im Übrigen der Plot-Ausdruck auf der Grundlage dieser Zwischencodes erfolgen.
  • Auf diese Weise wandelt der vorliegende Plotter Vektordaten in Vor-Zwischencodes um, bei denen es sich um Vektordaten mit nicht festgelegten Modifizierinformationen handelt, bevor die Vektordaten in Zwischencodes umgewandelt werden, und speichert die Vor-Zwischencodes in der Speichereinrichtung 6. Dies erlaubt eine Änderung der in der Speichereinrichtung 6 gespeicherten Modifizierinformationen auch nach Umwandeln der Vektordaten in Rasterdaten, wodurch das Ändern der Modifizierinformationen erleichtert wird.
  • Nachstehend werden zuerst die Eingangsbilddaten und Zwischencodes für einen Plotter nach der vorliegenden Ausführungsform und dann die Vor-Zwischencodes beschrieben, obwohl dies nicht der Reihenfolge der Verfahrensschritte in 3 entspricht.
  • In 16 ist ein Beispiel für die Eingangsbilddaten gezeigt, die für die vorliegende Ausführungsform angenommen werden. Dies sind die Daten einschließlich der Befehle und Koordinatendaten, die an den Plotter gegeben werden sollen, zum Beispiel in Form einer Folge von Zeichencodes wie die ASCII-Codes. Die einzelnen Ziffern wie „0", „1" und „2" in den Koordinatendaten (1000, 2000) sind ebenfalls durch einen Zeichencode aus einem Byte dargestellt. Nach der vorliegenden Ausführungsform werden die Koordinatendaten der Eingangsbilddaten jeweils durch vier Bytes dargestellt.
  • In 17 ist eine Ausführungsform der in den beispielhaften Daten in 16 verwendeten Befehle gezeigt.
  • „INIT;" ist ein Initialisierungsbefehl, der am Anfang einer Übertragung von Bilddaten ausgegeben wird.
  • „PENW (Stiftnummer), (Stiftbreite);" ist ein Befehl zur Angabe einer Stiftbreite (Stiftdicke) für jeden von mehreren Stiften (virtuelle Stifte für den Tintenstrahldruck).
  • „SPEN (Stiftnummer);" ist ein Befehl zur Angabe eines Zeichenstifts, der ab sofort verwendet werden soll.
  • „PNDN;" ist ein Befehl zum Absenken des durch den Befehl zur Angabe eines Zeichenstifts angegebenen Zeichenstifts auf das Papier.
  • „PNUP;" ist ein Befehl zum Anheben des Stifts, der die entgegengesetzte Funktion des Befehls zum Absenken des Stifts bewirkt.
  • „PMOV (X-Koordinate), (Y-Koordinate);" ist ein Stiftbewegungsbefehl, um den angegebenen Stift linear von der aktuellen Position an die durch die X-Koordinate und Y-Koordinate angegebene Position zu bewegen. Bei dieser Stiftbewegung wird, wenn der Stift abgesenkt ist, eine Linie gezeichnet; ist der Stift angehoben, wird nur die aktuelle Position geändert, ohne etwas zu zeichnen.
  • „CIRC (Radius), (Winkel);" ist ein Befehl zum Zeichnen eines Kreises mit dem angegebenen Radius, wobei die aktuelle Position als dessen Mittelpunkt verwendet wird, indem Kreisbogenlinien in Intervallen mit einem angegebenen Winkel ersetzt werden. Wird der Winkel weggelassen, so wird ein vorbestimmter Winkel (zum Beispiel 5 Grad) als Standardwert verwendet.
  • „DEND;" ist ein Datenende-Befehl zum Angeben des Endes der Eingangsbilddaten.
  • In dem in 16 gezeigten Beispiel werden zuerst die Stiftbreiten der Stifte 1 und 2 auf „5" bzw. „10" eingestellt, ehe der Stift 1 auf einen Koordinatenpunkt (1000, 1000) gebracht wird. Danach wird der Stift 1 mit abgesenktem Stift an einen Koordinatenpunkt (2000, 2000) gebracht, bevor der Stift angehoben wird. Als Nächstes wird der Stift 2 angegeben und an einen Koordinatenpunkt (2000, 1000) gebracht. Danach wird der Stift 2 abgesenkt und an einen Koordinatenpunkt (3000, 1000) gebracht. Der Stift 2 wird weiter im abgesenkten Zustand an einen Koordinatenpunkt (3000, 2000) gebracht, ehe der Stift 2 angehoben wird. Weiter wird der Stift 2 an einen Koordinatenpunkt (4000, 4000) gebracht. Dann wird der Stift 2 abgesenkt, um einen Kreis mit einem Radius „800" zu zeichnen. Zum Schluss wird der Stift 2 angehoben, um diesen Zeichenvorgang zu beenden.
  • 18 zeigt das auf diese Weise gezeichnete Bild. Die Abbildung zeigt, dass die Stifte 1 und 2 eine unterschiedliche Stiftbreite aufweisen.
  • In dem in 16 gezeigten Beispiel wird nur die Stiftbreite als das Stiftattribut verwendet, aber in einem tatsächlichen Fall können verschiedene andere Modifizierinformationen verwendet werden.
  • Anhand von 13, 14 und 15 wird der spezifische Aufbau der Zwischencodes beschrieben.
  • 13 zeigt bestimmte Beispieldaten für die Zwischencodes. Die Zwischencodes bestehen für jedes Band aus einer Bandnummer (N–1, N, N+1, ...), der Anzahl (1, 2 usw.) der horizontalen Segmente der Kontur (bzw. des Umrisses) jedes in dem Band enthaltenen Vektors und den Koordinatendaten ((X1, Y1), (x6, y6), ...) für jedes Segment.
  • 14 zeigt die Korrelation zwischen den in 13 gezeigten Daten und den Koordinatenpunkten auf einem Papierblatt. Bei diesem Beispiel wird ein durch die Endpunkte 141 und 149 definierter Vektor mit einer Breite W geplottet. Dabei ist jedoch zu beachten, dass die Stiftbreite W in der Abbildung übertrieben dargestellt ist.
  • Wie in 13 und 14 gezeigt, enthalten die Zwischencodes Koordinatenpunktdaten, die die Vektorkontur definieren, auf die die Modifizierinformationen wie zum Beispiel die Linienbreite reflektiert worden sind. Im Einzelnen werden die Koordinatendaten durch Auswählen charakteristischer Punkte auf der Vektorkontur für jedes Band angegeben. Die Vektorkontur für jedes Band ist in eines oder mehrere „horizontale Segmente" unterteilt. Jedes horizontale Segment ist im Wesentlichen aus einem durch vier Eckpunkte definierten Viereck gebildet. Für das Dreieckssegment wie etwa Segment 131 oder 138 in 14 wird einer der Eckpunkte zur Beschreibung des Segments dupliziert. Das Beispiel in 13 zeigt, dass in Bezug auf das horizontale Segment 131 einer der Eckpunkte, der Koordinatenpunkt (x6, y6), in der Beschreibung dupliziert wird.
  • Weil die Zwischencodes eine Gruppe solcher Vierecke umfassen, bilden vier Eckpunkte jedes Vierecks eine Dateneinheit. Ein Koordinatenpunkt-Datenelement besteht aus der x-Koordinate und der y-Koordinate und ist folglich durch insgesamt acht Werte definiert. (Die durch diese acht Werte gebildete Dateneinheit wird als eine Display-List (DL) bezeichnet). Daher kann man sagen, dass die Zwischencodes sequenzielle Daten sind, in denen eine Gruppe aus Bandnummer, Anzahl von DLs in dem Band und DL-Daten des Bands auf einem tatsächlichen Papierblatt wiederholt für die Anzahl der Bänder auf dem tatsächlichen Papierblatt beschrieben ist.
  • In dem in 14 gezeigten Beispiel ist die gesamte Kontur des Vektors durch die jeweiligen vier Eckpunkte von acht horizontalen Segmenten 131 bis 138 definiert. Die Koordinatenpunkte 142 bis 145 (als schwarze Punkte gezeigt) mit den Großbuchstaben X und Y sind die vier Koordinatenpunkte, die die Kontur des Vektors definieren, auf den die Linienbreite reflektiert worden ist, und die Koordinatenpunkte 146 bis 152 (als weiße Punkte gezeigt) mit den Kleinbuchstaben x und y sind die Koordinatenpunkte, die durch die bandweise Verarbeitung erzeugt worden sind.
  • Auf diese Weise liegen die Koordinatendaten der Zwischencodes 13 in einer Form vor, in der die Modifizierinformationen für den Vektor reflektiert worden sind. Es ist zu erkennen, dass es schwieriger ist, die Modifizierinformationen zu ändern oder Bilder aufgrund dieser Zwischencodes zu verschieben als eine solche Verarbeitung aufgrund der Eingangsbilddaten durchzuführen.
  • Die Form der Enden ist im Übrigen bei dem Beispiel in 14 nicht berücksichtigt. Die Kontur kann jedoch unter Berücksichtigung der Form der Enden definiert werden, und basierend auf der so definierten Kontur werden die horizontalen Segmente festgelegt.
  • Wie der Erklärung in Zusammenhang mit 13 und 14 zu entnehmen, weisen die Zwischencodes ein Datenformat wie in 15 auf. Das heißt, die Zwischencodes sind durch mehrere Gruppen bestehend aus einer Bandnummer 161, der Anzahl der Segmente (DLs) 162 in dem Band und vier Koordinatenpunktdaten 163 für jedes Segment definiert, die in Serie für die Anzahl der Bänder erscheinen. Basierend auf den Zwischencodes können entsprechende Rasterdaten ohne weiteres bandweise erzeugt werden.
  • Als Nächstes wird der Aufbau der Vor-Zwischencodes als Bilddaten mit dem zweiten Datenformat beschrieben.
  • Wie in 4 gezeigt, umfassen die Vor-Zwischencodes einen Datenblock, der als „Datei" bezeichnet wird und eine Einheit darstellt, die mit dem Plotter ausgegeben werden soll. Im Allgemeinen entspricht eine solche Datei einer Bildseite. Jede Datei enthält verschiedene Indexdaten, Bildgrößendaten, Modifizierungsdaten und Koordinatendaten. Weil Daten fester Länge und Daten variabler Länge in einer Datei gemischt sind, werden jedem Datenelement an seinem Kopf Indexdaten fester Länge (1 Byte in diesem Beispiel) als Kennung hinzugefügt, die angibt, um welche Art Daten es sich handelt.
  • In dem in 4 gezeigten Beispiel zeigen die mit „FH" bezeichneten Indexdaten 401 an, dass die folgenden Daten ein Datei-Header 411 fester Länge sind. Die mit „IS" bezeichneten Indexdaten 402 zeigen an, dass die folgenden Daten Ganzzahlendaten von 8 Byte sind, die eine Bildgröße angeben. Die mit „AT" bezeichneten Indexdaten 403 zeigen an, dass die folgenden Daten 412 Stiftattributdaten fester Länge sind. Die mit „A3" bezeichneten Indexdaten 404 zeigen an, dass die folgenden Daten 413 absolute Koordinatendaten von 3-Byte-Ganzzahlen sind. Die mit „R2" bezeichneten Indexdaten 405 zeigen an, dass die folgenden Daten 415 relative Koordinatendaten von 2-Byte-Ganzzahlen sind. Die mit „A4" bezeichneten Indexdaten 406 zeigen an, dass die folgenden Daten absolute Koordinatendaten von 4-Byte-Ganzzahlen sind. Die mit „R3" bezeichneten Indexdaten 407 zeigen an, dass die folgenden Daten relative Koordinatendaten von 3-Byte-Ganzzahlen sind. Daher stehen die Buchstaben „A" oder „R" am Kopf der Indexdaten 404 bis 410 zur Angabe von Koordinatendaten entweder für absolute Koordinaten oder für relative Koordinaten, und die folgende Zahl gibt die Anzahl der Bytes für die Koordinatendaten an.
  • Der Datei-Header 411 ist ein Bereich fester Länge zur Aufnahme einer Dateinummer, die den Bilddaten beim Erzeugen der Vor-Zwischencodes automatisch hinzugefügt wird, oder eines beliebigen Dateinamens, der von einem Benutzer eingegeben wird.
  • Die Bildgrößendaten 421 geben horizontale und vertikale Größen ΔX und ΔY für den Umriss eines Bildes in einer Datei auf einem virtuellen Papierblatt an. Diese Bildgrößendaten werden beim Erzeugen der Vor-Zwischencodes aus den Eingangsbilddaten wie folgt berechnet: ΔX = (Maximum X) – (Minimum X) ΔY = (Maximum Y) – (Minimum Y)Wie in 20 gezeigt, sind Maximum X und Minimum X die maximalen bzw. minimalen Koordinatenwerte in horizontaler Richtung unter den X-Koordinatenwerte der Pixel, die das Bild darstellen. Gleiches gilt für die Y-Achse. In diesem Beispiel werden ΔX und ΔY jeweils mit fester Länge oder vier Datenbytes (32 Bit) ohne Vorzeichen dargestellt.
  • Das Stiftattribut 412 ist ein Bereich fester Länge zum Speichern verschiedener Modifizierinformationen. Spezifische Beispiele der Modifizierinformationen sind in 10 gezeigt. Das in 10 gezeigte Stiftattribut 412 umfasst eine Stiftnummer (penNumber) 4121 für die durch die anschließenden Koordinatendaten definierten Vektoren, eine Stiftbreite (penWidth) 4122, einen Linienendetyp (lineEnds) 4123 zum Festlegen der Form der Enden eines Liniensegments, einen Linienverbindungstyp (lineJoin) 4124 zum Festlegen der Form einer Verbindung zwischen den Enden von Liniensegmenten und einen Füllungstyp (fillType) 4125 zum Festlegen eines Musters zum Füllen der Innenflächen der Kontur des Liniensegments.
  • Wie in 11 gezeigt, ist nach der vorliegenden Ausführungsform die Stiftnummer 4121 ein Wert zwischen 0 und 63, dargestellt durch 6-Bit-Daten. Die Stiftbreite 4122 wird durch 32-Bit-Daten dargestellt. Der Linienendetyp 4123 und der Linienverbindungstyp 4124 sind jeweils Werte zwischen 0 und 4, dargestellt durch 3-Bit-Daten. Der Füllungstyp 4125 ist ein Wert zwischen 0 und 396, dargestellt durch 9-Bit-Daten. Es ist jedoch zu beachten, dass die vorliegende Erfindung nicht auf diese bestimmten Werte beschränkt ist.
  • Drei Beispiele für den Verbindungstyp 4124 sind in 12(a) bis 12(c) gezeigt. 12(a) zeigt einen Typ, bei dem die äußeren Eckpunkte der Vektorkonturen durch eine gerade Linie verbunden sind, 12(b) zeigt einen Typ, bei dem die äußeren Eckpunkte durch einen Kreisbogen verbunden sind, und 12(c) zeigt einen Typ, bei dem die Außenseiten der Konturlinien von zwei zu verbindenden Sektoren verlängert sind.
  • Wie in 4 gezeigt, sind die Stiftattributdaten 412 und die Koordinatendaten (x, y) 413 usw. in den Daten der Vor-Zwischencodes unabhängig miteinander gemischt. Wenn mehrere Vektoren mit demselben Stiftattribut nacheinander auftreten, werden die Stiftattributdaten 412 außer für den ersten Vektor der betreffenden Datensequenz weggelassen. Dies beruht auf der Tatsache, dass Vektoren im Allgemeinen die Elemente sind, die einen Kreis, ein Vieleck oder aufeinander folgende Liniensegmente bilden, und daher viele Vektoren mit demselben Stiftattribut nacheinander in den Daten auftreten.
  • Auch die aufeinander folgenden Vektoren (das heißt eine Gruppe von „n" Vektoren, bei denen das Fußende des i-ten Vektors mit dem Kopfende des (i+1)-ten Vektors übereinstimmt (wobei i = 1, 2, ..., n–1), werden durch eine Folge von Punkten dargestellt, wobei nur ein Punkt der Koordinatendaten für die sich deckenden Koordinatenpunkte (Fußende des i-ten Vektors = Kopfende des (i+1)-ten Vektors) gehalten wird. Für solche Folgevektoren wird das Kopfende des ersten Vektors durch absolute Koordinatendaten dargestellt, und die folgenden Endpunkte werden durch relative Koordinaten bezogen auf den jeweiligen vorhergehenden Endpunkt dargestellt. Bei dem in 18 gezeigten Beispiel ist das Kopfende 181 des ersten Vektors 191 der Folgevektoren 191 und 192 durch eine absolute Koordinate dargestellt, während die anderen Endpunkte 182 und 183 durch relative Koordinaten bezogen auf den vorhergehenden Endpunkt dargestellt sind. In gleicher Weise ist bei den Folgevektoren 193 und 194 das Kopfende 184 des ersten Vektors 193 durch absolute Koordinaten dargestellt, während die anderen Endpunkte 185 und 186 durch relative Koordinaten bezogen auf den jeweiligen vorhergehenden Punkt dargestellt sind. Nicht im Detail gezeigt ist, dass ein vorbestimmtes Vieleck anstelle des Kreises 195 verwendet wird, so dass die Seiten des Vielecks genau wie die Folgevektoren behandelt werden. Im Übrigen können relative Koordinaten einen größeren Absolutwert aufweisen als absolute Koordinaten. Bei der vorliegenden Ausführungsform sind jedoch die Endpunkte der Vektoren mit Ausnahme des Kopfendes des ersten Vektors einheitlich durch relative Koordinaten definiert. Dies liegt daran, dass in Zusammenhang mit normalen Bildern angenommen wird, dass relative Koordinaten einen kleineren Absolutwert aufweisen als absolute Koordinaten.
  • Bei dem in 4 gezeigten Beispiel sind die Indexdaten 402 dediziert für die Bildgrößendaten 421 vorgesehen. Alternativ können die Bildgrößendaten 421 im Datei-Header 411 enthalten sein.
  • Der vorstehend beschriebene Aufbau der Vor-Zwischencodes ermöglicht ein Kom primieren der Bilddaten.
  • Das Weglassen der Stiftattributdaten wird nicht nur bei den Vektoren einer Gruppe aufeinander folgender Vektoren angewendet, sondern auch bei mehreren Gruppen aufeinander folgender Vektoren. Das heißt, wenn eine Gruppe aufeinander folgender Vektoren dasselbe Stiftattribut aufweist wie die vorhergehende Gruppe aufeinander folgender Vektoren, können die Stiftattributdaten für die nächste Gruppe aufeinander folgender Vektoren weggelassen werden. Ändert sich das Stiftattribut in der Mitte von aufeinander folgenden Vektoren, wird dort ein neues Stiftattribut eingefügt, um die Sequenz der Punkte zu beenden, so dass die nachfolgenden Vektoren als eine andere Gruppe aufeinander folgender Vektoren behandelt werden. Diese Merkmale tragen auch zu einer Verringerung der für die Vor-Zwischencodes nötigen Datenmenge bei.
  • Die Koordinatendaten der Vor-Zwischencodes sind Daten variabler Länge. Wenn ein Koordinatenwert zum Beispiel durch eine ganze Zahl mit „n" Byte (1=n=3) ausreichend dargestellt ist, wird eine solche Koordinate durch Ganzzahlendaten mit „n" Byte dargestellt. Diese Datenstruktur trägt ebenfalls zur Datenkomprimierung der Vor-Zwischencodes bei.
  • Anhand von 5 wird jetzt der Aufbau der Koordinatendaten und Indexdaten beschrieben, die die Vor-Zwischencodes nach der vorliegenden Ausführungsform bilden.
  • Wie bereits erwähnt, verwendet bei dem vorliegenden Plotter jeder Index ein Byte separat, so dass die Indexdaten dem Datei-Header, den Stiftattributdaten und den Koordinatendaten jeweils am Kopf hinzugefügt werden. Wenn mehrere Koordinatendaten derselben Anzahl von Koordinatendaten nacheinander auftreten, werden die Indexdaten für die zweiten und die folgenden Bytes weggelassen. Der Datei-Header oder die Stiftattributdaten nach den Indexdaten sind immer einfach vorhanden und haben eine feste Länge.
  • Wie in 5 gezeigt, wird zur Unterscheidung der 1-Byte-Indexdaten von dem höchstwertigen Byte der Koordinatendaten das höchstwertige Bit (MSB) des Bytes für diesen Zweck verwendet. Mit anderen Worten, wenn ein Byte aus den Vor-Zwischencodes herausgenommen wird, gibt das MSB = ON (Ein oder „1") an, dass die Daten Indexdaten sind, und das MSB = OFF (Aus oder „0") gibt an, dass die Daten das höchstwertige Byte der Koordinatendaten sind. Selbstverständlich gibt es keine solche Beschränkung für das MSB des zweiten und der folgenden Bytes in Daten mit zwei oder mehr Bytes.
  • Damit steht das MSB des höchstwertigen Byte der Koordinatendaten nicht als Vorzeichen-Bit zur Unterscheidung von den Indexdaten zur Verfügung, und daher wird eine n-Byte-Ganzzahl tatsächlich zu einer (n × 8-1)-Bit-Ganzzahl. Danach wird die ganze Zahl mit mehr als 31 Bits nicht allein durch eine ganze Zahl mit 1 bis 4 Byte dargestellt. Aus diesem Grund Werden 5-Byte-Ganzzahlen, wie in 6 gezeigt, für die Ganzzahlendaten zusammengestellt, die mit nur 32 Bits nicht dargestellt werden können.
  • Die in dem zweiten Datenformat verwendeten absoluten Koordinaten sind die absoluten Koordinaten eines ausreichend großen virtuellen Papierblatts und werden bei der Umwandlung in die Zwischencodes in die Koordinaten einer tatsächlichen Druckposition auf einem tatsächlichen Papierblatt umgewandelt. Durch abschließendes Bestimmen von Koordinaten bei der Umwandlung von Vor-Zwischencodes in Zwischencodes ist es daher möglich, die Druckposition frei zu ändern, auch nachdem der Erhalt der Eingangsbilddaten abgeschlossen ist. Daher ist es bei einer Verschiebungsverarbeitung oder dergleichen möglich, die Position zu verschieben und mit einem höheren Grad an Freiheit zu drucken als nach dem Stand der Technik. Die Verschiebungsverarbeitung wird im Allgemeinen durchgeführt, wenn längeres Papier wie zum Beispiel Rollenpapier verwendet wird. Nach der vorliegenden Ausführungsform kann ein Benutzer einen Befehl über das Bedienfeld eingeben, um ein Verschieben vorzunehmen, um Papier zu sparen. Als Reaktion auf den Befehl verschiebt die Datenanalyseeinrichtung 3 das in 19(a) gezeigte Druckbild aufgrund der Vor-Zwischencodes auf das in 19(b) gezeigte Druckbild. Im Einzelnen werden bezüglich der Positionsinformationen die Zwischencodes durch Hinzufügen des Betrags einer Verschiebung des Nullpunktes (Versatz) zu den Koordinatenwerten in den Vor-Zwischencodes erzeugt. Wenn eine Drehung erforderlich ist, wird eine Drehungsverarbeitung durchgeführt.
  • Als Nächstes wird eine Verarbeitung zum Vergrößern/erkleinern und Drehen eines mit dem Plotter auszugebenden Bildes nach der vorliegenden Ausführungsform beschrieben, durchgeführt aufgrund der vorstehend erwähnten Bildgrößendaten in den Vor-Zwischencodes.
  • Nach der vorliegenden Ausführungsform ist es zum Beispiel möglich, auch wenn eine von der Druckeinheit 26 angegebene tatsächliche Papiergröße nach dem Erzeugen der Vor-Zwischencodes geändert wird, das Bild zu vergrößern bzw. zu verkleinern, um es an die tatsächliche Papiergröße anzupassen. Im Einzelnen ist es möglich, eine für das tatsächliche Papierblatt geeignete Bildgröße durch Multiplizieren der Koordinatenwerte in den Vor-Zwischencodes mit dem Verhältnis zwischen der Bildgröße aus den Vor-Zwischencodes und der tatsächlichen Papiergröße bei der Erzeugung der Zwischencodes zu bilden. Außerdem tritt die kleinste typische Papiergröße, die die in den Vor-Zwischencodes angegebene Bildgröße aufnehmen kann, an die Stelle der Bildgröße als eine neue Bildgröße, und das Verhältnis zwischen der neuen Bildgröße und der tatsächlichen Papiergröße kann verwendet werden, um das Seitenverhältnis (vertikal/horizontal) des auszugebenden Bildes aufrechtzuerhalten. Alternativ kann, um das Seitenverhältnis des Bildes aufrechtzuerhalten, dieses Verhältnis nur in einem X- oder Y-Koordinatenwert verwendet werden, um das Verhältnis auf den anderen anzuwenden.
  • Das Drehen eines Bildes kann automatisch beim Verschieben des Bildes durchgeführt werden, aber auch als Reaktion auf einen Benutzerbefehl. Im automatischen Fall ist die Ausrichtung des Bildes (Hoch-/Querformat – Portrait/Landscape) aus den Bildgrößendaten in den Vor-Zwischencodes bekannt, und daher ist es möglich, auch wenn der Benutzer die Ausrichtung des Papiers falsch einstellt, beim Umwandeln der Vor-Zwischencodes in die Zwischencodes automatisch eine Drehungsverarbeitung durchzuführen, um die Zwischencodes zu erzeugen. Diese Drehungsverarbeitung wird durch Verwendung der folgenden Formeln für die lineare Transformation der Koordinatenwerte in die Vor-Zwischencodes realisiert. x' = x·cosθ – y·sinθ y' = y·sinθ – x·cosθwobei (x, y) die Koordinaten vor der Umwandlung und (x', y') die Koordinaten nach der Umwandlung angeben. Im Allgemeinen ist „θ" der Drehungswinkel und beträgt +90 Grad bzw. –90 Grad im Falle der Positionsverschiebung.
  • 7 zeigt eine Ausführungsform, bei der die in 6 gezeigten Ganzzahlendaten in die entsprechenden Vor-Zwischencodes umgewandelt werden. Wie aus 7 ersichtlich, wird, wenn die CPU ein Prozessor vom Little-Endian-Typ ist, die Byte-Reihenfolge der Ganzzahlendaten umgekehrt gegenüber der in einem normalen Speicher und in den Vor-Zwischencodes.
  • Bei der vorstehend beschriebenen Ausführungsform ist die Anzeigeeinrichtung 8 ein Monitor, der für die Layoutanzeige von auszugebenden Bildern verwendet wird, um die Bilder zu kontrollieren und die Modifizierinformationen zu ändern. Alternativ kann eine kleine Flüssigkristallanzeige als die Anzeigeeinrichtung 8 vorgesehen werden, so dass nur die Modifizierinformationen angezeigt werden, um diese zu ändern. Dadurch kann die Größe der Anzeigeeinrichtung 8 verringert werden, was auch die Größe und Kosten des Plotters verringert.
  • Der Bildprozessor nach der vorliegenden Erfindung ist auch für andere Vorrichtungen als den Plotter geeignet, sofern die Vorrichtung mit einer bandweisen Verarbeitung arbeitet.
  • Der Bildprozessor nach der vorliegenden Erfindung arbeitet mit einer bandweisen Verarbeitung, und daher ist es möglich, Eingangsbilddaten in Rasterdaten umzuwandeln, ohne einen Speicher mit großer Speicherkapazität vorzusehen. Außerdem werden Vor-Zwischencodes mit nicht festgelegten Modifizierinformationen erzeugt und in einer Speichereinrichtung gespeichert, wodurch ein Ändern der Modifizierinformationen vor dem Plotten möglich ist, ohne einen Eingangspufferspeicher mit großer Speicherkapazität vorzusehen. Folglich werden die Kapazitäten der verschiedenen Speicher verringert, so dass es möglich wird, den Bildprozessor zu niedrigen Kosten herzustellen.
  • Zusätzlich kann das Ändern der Modifizierinformationen bezogen auf die Vor-Zwischencodes erfolgen, und dadurch ist es möglich, die Eingangsbilddaten zu analysieren, auch wenn die tatsächlich eingestellte Papiergröße nicht im Voraus bekannt ist, indem zuvor eine virtuelle Papiergröße für den Ausdruck bzw. das Layout eingestellt wird, von dessen Größe angenommen wird, dass sie größer als die tatsächliche Papiergröße ist.
  • Ist Wahrscheinlichkeit hoch, dass Daten nacheinander übertragen werden, wie zum Beispiel im Falle des Layoutens von Bildern (insbesondere bei Verwendung von Rollenpapier als Plotterpapier) oder der Verwendung einer Einzelblattzufuhr, ist es weiter möglich, selbst wenn die tatsächlich eingestellte Papiergröße geändert wird, die Eingangsbilddaten zuvor aufgrund der Vor-Zwischencodes zu analysieren, und zwar in der Zeit, während der die CPU-Last nicht hoch ist. So kann die CPU effizient genutzt werden.
  • Industrielle Anwendbarkeit
  • Die vorliegende Erfindung kann für die Konstruktion und Herstellung von Plottern und Druckern und dergleichen verwendet werden, die einen Druckvorgang durch Umwandeln von Vektordaten in Rasterdaten für die jeweils ein Bild darstellenden Bereiche durchführen.

Claims (14)

  1. Bildprozessor zur bandweisen Erzeugung eines Bildes, mit einer Datenformat-Umwandlungseinrichtung zum Umwandeln von Eingangsbilddaten eines ersten Datenformats in Bilddaten eines zweiten Datenformats, wobei die Eingangsdaten des ersten Datenformats Koordinatendaten von Endpunkten jeweils ein Bild darstellender Vektoren enthalten, dadurch gekennzeichnet, dass die Eingangsdaten des ersten Datenformats ferner verschiedene Modifizierinformationen der Vektoren enthalten, dass das zweite Datenformat eine gegenüber dem ersten Datenformat verringerte Datenmenge aufweist, und dass der Bildprozessor ferner aufweist: eine Speichereinrichtung zum Speichern der Gesamtheit der durch die Datenformat-Umwandlungseinrichtung erzielten Bilddaten des zweiten Datenformats, eine Zwischencode-Erzeugungseinrichtung, die aufgrund der Bilddaten des zweiten Datenformats bandweise Zwischencodes erzeugt, die Konturen der jeweiligen Vektoren darstellende Koordinatendaten enthalten, auf die die verschiedenen Modifizierinformationen der Vektoren reflektiert worden sind, und eine Rasterdaten-Erzeugungseinrichtung zum bandweisen Umwandeln der Zwischencodes in entsprechende Rasterdaten.
  2. Bildprozessor nach Anspruch 1, wobei in dem zweiten Datenformat eine Gruppe von in Serie verbundenen Vektoren durch Koordinatendaten der Vektoren-Endpunkte definiert ist, und wobei nur das Kopfende des ersten der Vektoren durch absolute Koordinaten, die übrigen Vektoren-Endpunkte dagegen durch relative Koordinaten dargestellt sind.
  3. Bildprozessor nach Anspruch 2, wobei die Koordinatendaten des zweiten Datenformats Daten variabler Länge sind und die Koordinatendaten jedes Koordinatenpunktes an ihrem Kopf zusätzlich mit Indexdaten fester Länge versehen sind, die die Datenlänge der Koordinatendaten angeben und bezeichnen, ob die Koordinaten absolute oder relative Koordinaten sind.
  4. Bildprozessor nach Anspruch 3, wobei dann, wenn mehrere Koordinatendaten desselben Typs nacheinander auftreten, die Indexdaten bezüglich der zweiten und der folgenden Koordinatendaten aus der Mehrzahl von Koordinatendaten weggelassen sind.
  5. Bildprozessor nach Anspruch 3, wobei sich in dem zweiten Datenformat die Koordinatendaten von den Indexdaten durch ein Dateneinheit-Kopfbit einer vorgegebenen Mehrzahl von Bits unterscheiden.
  6. Bildprozessor nach Anspruch 3, wobei in dem zweiten Datenformat die verschiedene Modifizierinformationen Stiftattributdaten fester Länge enthalten, an deren Kopf weitere Indexdaten fester Länge zur ihrer Unterscheidung hinzugefügt sind.
  7. Bildprozessor nach Anspruch 6, wobei in dem zweiten Datenformat die Stiftattributdaten nur zu den Koordinatendaten eines Vektors hinzugefügt sind, dessen Modifizierinformationen sich von denen eines vorhergehenden Vektors unterscheiden.
  8. Bildprozessor nach Anspruch 1, wobei Werte der Koordinatendaten des ersten Datenformats durch Schriftzeichendaten dargestellt sind.
  9. Bildprozessor nach Anspruch 1, wobei die Zwischencodes für jedes Band eine Bandnummer, die Anzahl horizontaler Segmente einer Kontur jedes Vektors und Koordinatendaten jedes der horizontalen Segmente enthalten.
  10. Bildprozessor nach Anspruch 1, wobei die Zwischencode-Erzeugungseinrichtung eine Einrichtung aufweist, die bei Erzeugung der Zwischencodes aufgrund der Bilddaten des zweiten Datenformats entsprechend einem Benutzerbefehl in den Bilddaten des zweiten Datenformats vom Benutzer spezifizierte Modifizierinformationen anstelle der verschiedenen Modifizierinformationen benutzt.
  11. Bildprozessor nach Anspruch 1, mit ferner einer Einrichtung zum Ändern eines Teils der vom Benutzer spezifizierten Modifizierinformationen unter den in den Bilddaten des zweiten Datenformats vorhandenen, in der Speichereinrichtung gespeicherten verschiedenen Modifizierinformationen.
  12. Bildprozessor nach Anspruch 1, mit ferner einer Einrichtung, die beim Erzeugen der Zwischencodes aufgrund der Bilddaten des zweiten Datenformats durch die Zwi schencode-Erzeugungseinrichtung Positionen und Orientierungen mehrerer Bilder auf einem Papierblatt bestimmt.
  13. Bildprozessor nach Anspruch 12, wobei die Datenformat-Umwandlungseinrichtung die Größe eines Eingangsbildes aufgrund der Eingangsbilddaten erfasst, um die erfasste Größe angebende Bildgrößendaten in die Bilddaten des zweiten Datenformats zu überführen, und wobei die Einrichtung zum Bestimmen von Positionen und Orientierungen diese in Bezug auf die Bildgrößendaten bestimmt.
  14. Bildprozessor nach Anspruch 1, mit ferner einer Einrichtung, die beim Erzeugen der Zwischencodes aufgrund der Bilddaten des zweiten Datenformats durch die Zwischencode-Erzeugungseinrichtung ein Bild vergrößert/verkleinert.
DE69737717T 1996-03-04 1997-03-04 Bildprozessor Expired - Lifetime DE69737717T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP4647596 1996-03-04
JP4647596 1996-03-04
PCT/JP1997/000648 WO1997033219A1 (fr) 1996-03-04 1997-03-04 Processeur d'images

Publications (2)

Publication Number Publication Date
DE69737717D1 DE69737717D1 (de) 2007-06-21
DE69737717T2 true DE69737717T2 (de) 2008-01-10

Family

ID=12748228

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69737717T Expired - Lifetime DE69737717T2 (de) 1996-03-04 1997-03-04 Bildprozessor

Country Status (5)

Country Link
US (1) US6266455B1 (de)
EP (1) EP0919909B1 (de)
JP (1) JP3527249B2 (de)
DE (1) DE69737717T2 (de)
WO (1) WO1997033219A1 (de)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6765687B2 (en) * 1998-09-10 2004-07-20 Canon Kabushiki Kaisha Image processing method and apparatus
AUPQ289099A0 (en) * 1999-09-16 1999-10-07 Silverbrook Research Pty Ltd Method and apparatus for manipulating a bayer image
AU7337700A (en) * 1999-09-03 2001-04-10 Imagex.Com, Inc. Method and apparatus for washing of graphic image files and load balancing of operations
US6633890B1 (en) 1999-09-03 2003-10-14 Timothy A. Laverty Method for washing of graphic image files
US6903839B1 (en) 1999-09-03 2005-06-07 Imagex, Inc. Apparatus for washing of graphic image files
JP4227263B2 (ja) * 1999-10-12 2009-02-18 キヤノン株式会社 画像処理装置、画像処理方法、及び、記憶媒体
US6771384B1 (en) 2000-01-10 2004-08-03 Kinko's Washington, Inc. Imposition of graphic image files
US6429947B1 (en) 2000-01-10 2002-08-06 Imagex, Inc. Automated, hosted prepress application
US20020191206A1 (en) * 2001-06-18 2002-12-19 Anderson Jeff M. Rendering broker service and method
JP4158374B2 (ja) * 2001-11-19 2008-10-01 ブラザー工業株式会社 画像形成装置およびプログラム
JP4413036B2 (ja) * 2004-02-25 2010-02-10 新光電気工業株式会社 描画装置、描画データ生成装置、描画方法、および描画データ生成方法
JP2005262624A (ja) * 2004-03-18 2005-09-29 Ricoh Co Ltd 画像処理装置および画像処理方法、並びに画像処理方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JP4766657B2 (ja) 2005-05-02 2011-09-07 キヤノン株式会社 画像処理装置及びその制御方法、プログラム
US8665482B2 (en) * 2007-03-01 2014-03-04 Konica Minolta Laboratory U.S.A., Inc. Raster image processor using a self-tuning banding mode
US7982749B2 (en) * 2008-01-31 2011-07-19 Microsoft Corporation Server-based rasterization of vector graphics
WO2010027324A1 (en) * 2008-09-08 2010-03-11 Scalado Ab Method for indexing images and for reading an index of an image
US8452005B2 (en) * 2009-11-30 2013-05-28 Red Hat, Inc. Unicode-compatible encipherment
US20220266614A1 (en) * 2018-09-12 2022-08-25 David Wachs Mechanical handwriting barcode apparatus and method of use thereof

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4254467A (en) * 1979-06-04 1981-03-03 Xerox Corporation Vector to raster processor
US4458330A (en) * 1981-05-13 1984-07-03 Intergraph Corporation Banded vector to raster converter
JPH01217621A (ja) 1988-02-26 1989-08-31 Nec Corp 作画データ変換装置
JPH01277055A (ja) * 1988-04-28 1989-11-07 Dainippon Screen Mfg Co Ltd 多値描画のためのラスターデータ生成方法
US5028848A (en) * 1988-06-27 1991-07-02 Hewlett-Packard Company Tile vector to raster conversion method
JP2755308B2 (ja) * 1988-08-31 1998-05-20 キヤノン株式会社 出力方法及びその装置
US5164711A (en) * 1990-02-08 1992-11-17 International Business Machines Corporation System and method for generating graphical output
US5396582A (en) * 1991-02-06 1995-03-07 Hewlett-Packard Company Raster to vector conversion system and method therefor
JPH0524301A (ja) 1991-07-24 1993-02-02 Ricoh Co Ltd プリンタの自動用紙選択方法
US5680521A (en) * 1992-06-15 1997-10-21 Canon Kabushiki Kaisha Printing method and apparatus
JP2973260B2 (ja) 1992-12-08 1999-11-08 セイコーエプソン株式会社 印刷情報処理装置
JP3582675B2 (ja) * 1994-10-28 2004-10-27 セイコーエプソン株式会社 画像データをメモリに蓄積する装置及び方法

Also Published As

Publication number Publication date
JP3527249B2 (ja) 2004-05-17
EP0919909A1 (de) 1999-06-02
WO1997033219A1 (fr) 1997-09-12
EP0919909B1 (de) 2007-05-09
DE69737717D1 (de) 2007-06-21
US6266455B1 (en) 2001-07-24
EP0919909A4 (de) 2002-09-11

Similar Documents

Publication Publication Date Title
DE69737717T2 (de) Bildprozessor
DE69734717T2 (de) ECHTZEIT-VERARBEITUNGSEINRICHTUNG UND -VERFAHREN FUER BILDER HOHER Auflösung
DE3121503C2 (de) Dokumenten-Verarbeitungssystem
DE19944504B4 (de) Selbst-Umdimensionierungs-Demonstrationsseite für eine Druckvorrichtung, Bilderzeugungsvorrichtung, Bilderzeugungsverfahren und computerlesbares Medium
EP0096079B1 (de) Verfahren zur Aufbereitung von Punktrasterdaten für Zeichen- und/oder Bilddarstellungen
DE60022240T2 (de) Ausgabeverwaltungssystem und -Verfahren
DE3820075C2 (de)
DE60118892T2 (de) Verfahren und gerät für drucken mit lasche
DE2550268C3 (de) Schnelldrucker für Datenverarbeitungssysteme
EP0764310B1 (de) Verfahren zur generierung einer contone-map
DE69907287T2 (de) Rechnersysteme
DE19610759C2 (de) Verfahren zum Codieren eines Dokumentes und Verfahren zum Senden eines Dokumentes von einem Sendecomputersystem zu einem Empfangscomputersystem
DE3707112C3 (de) Zeichenbilderzeugungsschaltung
EP1389329B1 (de) Verfahren, system und computerprogramm zum erstellen eines elektronischen dokuments aus gerasterten bilddaten
DE2825321C3 (de) Rasterdrucker
DE60033480T2 (de) Drucken mit tintenstrahl
DE102006011225B4 (de) System und Verfahren zur Drucksteuerung
DE10010219B4 (de) Drucksystem
DE19711674A1 (de) Verfahren und System zum Drucken rasterisierter Dokumente
DE3441640A1 (de) Streifenfeldspeichercontroller
DE19516979C2 (de) Bitmap-Datenkomprimierungsverfahren und Bitmap-Datenkomprimierungsvorrichtung zur Durchführung dieses Verfahrens
DE2550212C3 (de) Drucker mit Pufferspeicher
DE19510929A1 (de) Mehrzweckeinrichtung
DE3347644A1 (de) Grafikanzeigeeinrichtung
DE69709695T3 (de) Verfahren zur seitenzusammensetzung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition