DE69322199T2 - Vorrichtung und Verfahren für die Übersetzung von Druckersprachen - Google Patents
Vorrichtung und Verfahren für die Übersetzung von DruckersprachenInfo
- Publication number
- DE69322199T2 DE69322199T2 DE69322199T DE69322199T DE69322199T2 DE 69322199 T2 DE69322199 T2 DE 69322199T2 DE 69322199 T DE69322199 T DE 69322199T DE 69322199 T DE69322199 T DE 69322199T DE 69322199 T2 DE69322199 T2 DE 69322199T2
- Authority
- DE
- Germany
- Prior art keywords
- data
- program
- printer
- emulation
- input
- 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
Links
- 238000000034 method Methods 0.000 title claims description 24
- 238000012545 processing Methods 0.000 claims description 89
- 230000015654 memory Effects 0.000 claims description 49
- 238000003860 storage Methods 0.000 claims description 7
- 238000003672 processing method Methods 0.000 claims description 2
- 238000011161 development Methods 0.000 description 20
- 238000007639 printing Methods 0.000 description 20
- 230000018109 developmental process Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 11
- 239000011159 matrix material Substances 0.000 description 11
- 238000007726 management method Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 238000004140 cleaning Methods 0.000 description 4
- XXQCMVYBAALAJK-UHFFFAOYSA-N ethyl n-[4-[benzyl(2-phenylethyl)amino]-2-(2-phenylethyl)-1h-imidazo[4,5-c]pyridin-6-yl]carbamate Chemical compound N=1C=2C(N(CCC=3C=CC=CC=3)CC=3C=CC=CC=3)=NC(NC(=O)OCC)=CC=2NC=1CCC1=CC=CC=C1 XXQCMVYBAALAJK-UHFFFAOYSA-N 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000009736 wetting Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000007641 inkjet printing Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0005—Accepting output data; Preparing data for the controlling system
- G06K2215/0011—Accepting output data; Preparing data for the controlling system characterised by a particular command or data flow, e.g. Page Description Language, configuration commands
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Record Information Processing For Printing (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Description
- Die vorliegende Erfindung betrifft ein Bildverarbeitungsgerät und ein Verfahren dafür, und insbesondere ein Bildverarbeitungsgerät und ein Verfahren dafür, womit das Drucken und Ausgaben eines Bildes auf der Grundlage eingegebener Daten auf einem vorbestimmten Aufzeichnungsträger möglich ist.
- Ein typisches Beispiel eines derartigen Gerätes ist ein hochpräziser Hochgeschwindigkeits-Blattschreiber, und insbesondere ein Laserstrahldrucker. Einige neuere Blattschreiber haben verschiedene Funktionen, einschließlich der Funktion des gleichmäßigen Druckens von Zeichen, die Konturschriften anwenden, ungeachtet vergrößerter/verkleinerter Zeichen.
- Die meisten Geräte dieser Art haben die Funktion des Emulierens herkömmlicher Drucker, die mit vielen derzeitig verfügbaren Anwenderprogrammen benutzt werden, um ihre Ressourcen zu nutzen. Das heißt, eine Vielzahl von Druckersprachen können zum Emulieren unterschiedlicher Druckerarten übersetzt werden. Da darüber hinaus eine große Anzahl von zur Druckerseite übersetzten Druckersprachen (d. h., Seitenbeschreibungssprachen) verfügbar sind, ist ein Gerät eingeführt worden, das in der Lage ist, verschiedene Druckersprachen zu emulieren.
- Die Vorbereitung eines derartigen Emulationsprogrammes ist nicht beschränkt auf Druckersprachen oder frühere Drucker, sondern ist auch für zukünftige Drucker gedacht. Emulationsprogramme hierfür müssen mit der zukünftigen Situation kompatibel sein.
- Gegenwärtig ist eine I/F (Schnittstelle) in einem Gerät mit einer Fassung für eine auswechselbare Speichereinheit vorgesehen, wie beispielsweise einen ROM-Stapel, um mit der neuen Sprache zu Rande zu kommen.
- Selbst wenn eine I/F (Schnittstelle) für eine Vielzahl von ROM-Stapeln vorgesehen ist, können maximal zwei oder drei auswechselbare ROM-Stapel eingesetzt werden. Wenn die Anzahl von ROM- Stapeln ansteigt, wird das Gerät sperrig und kostenaufwendig. Wenn darüber hinaus derartige ROM-Stapel eingesetzt werden, führen die in den ROM-Stapeln gespeicherten Programme alle Verarbeitungsoperationen aus. Folglich erfordert allein die Programmierung, die mit diesen Bearbeitungsoperationen verbunden ist, viel Arbeit.
- Das Dokument EP-A-0 332 779 offenbart einen Drucker, der über Drucksteuereinheiten verfügt, die das Drucken gemäß unterschiedlicher Druckersprachen steuern. Ein Beurteilungsmittel wählt eine der Steuereinheiten gemäß einem empfangenen Steuercode der zum Drucken verwendeten Daten aus.
- Das Dokument EP-A-415861 offenbart ein Druckersystem, das das Zuläden von Schriftzeichen aus der Haupteinrichtung zum Drucker ermöglicht und zugeladene Druckzeichen und Makros selektiv löscht.
- Gemäß einem Aspekt der vorliegenden Erfindung ist ein Bildverarbeitungsgerät vorgesehen, mit:
- einem Speicher zum Speichern eines Übersetzungsprogramms zum Übersetzen einer Druckersprache und eines Selektierprogramms zum Herausfinden, ob das Übersetzungsprogramm eine extern eingegebene Druckersprache übersetzen kann; und mit
- einem Bestimmungsmittel, das durch Anwenden des im Speicher gesgeicherten Selektierprogramms bestimmt, ob das Übersetzungsprogramm die extern eingegebene Druckersprache übersetzen kann;
- gekennzeichnet durch
- Eingabemittel zur Eingabe des Übersetzungsprogramms und des Selektierprogramms aus der externen Quelle in den Speicher, wobei das Bestimmungsmittel eingerichtet ist, die Bestimmung für das eingegebene Übersetzungsprogramm durch Anwenden der Eingabe und des gespeicherten Selektierprogramms auszuführen.
- Gemäß einem weiteren Aspekt der vorliegenden Erfindung ist ein Bildverarbeitungsverfahren vorgesehen, mit den Verfahrensschritten:
- Speichern eines Übersetzungsprogramms zum übersetzen einer Druckersprache und eines Selektierprogramms zum Herausfinden, ob das Übersetzungsprogramm eine extern eingegebene Druckersprache übersetzen kann; und
- Bestimmen, ob das Übersetzungsprogramm die extern eingegebene Druckersprache durch Anwenden des gespeicherten Selektierprogramms übersetzen kann;
- gekennzeichnet durch die anfänglichen Verfahrensschritte der Eingabe des Übersetzungsprogramms und des Selektierprogramms aus einer externen Quelle zum Speichern, wobei der Verfahrensschritt des Bestimmens für das eingegebene Übersetzungsprogramm durch Anwenden des eingegebenen und gespeicherten Selektierprogramms erfolgt.
- Ausführungsbeispiele der vorliegenden Erfindung werden nun anhand der beiliegenden Zeichnung beschrieben.
- Fig. 1 ist ein schematisches Blockschaltbild eines Bildverarbeitungsgerätes nach dem ersten Ausführungsbeispiel der vorliegenden Erfindung;
- Fig. 2 ist ein Blockschaltbild, das die Anordnung eines Bildverarbeitungsgerätes zeigt, das allen Ausführungsbeispielen gemeinsam ist;
- Fig. 3 ist eine Ansicht, die einen Aufbau eines Druckers zeigt, der allen Ausführungsbeispielen gemeinsam ist;
- Fig. 4 ist ein Diagramm eines Zeichenbehandlungsprozesses im ersten Ausführungsbeispiel;
- Fig. 5 ist ein Diagramm eines Bildbehandlungsprozesses im ersten Ausführungsbeispiel;
- Fig. 6 ist ein Arbeitsablaufplan, der eine Hauptroutine im ersten Ausführungsbeispiel zeigt;
- Fig. 7 ist ein Arbeitsablaufplan, der einen Prozeß eines Analysators im ersten Ausführungsbeispiel zeigt;
- Fig. 8 ist ein schematisches Blockschaltbild eines Bildverarbeitungsgerätes nach dem zweiten Ausführungsbeispiel;
- Fig. 9 ist ein Arbeitsablaufplan, der die Inhalte der Verarbeitung zeigt, die dem zweiten Ausführungsbeispiel hinzugefügt sind;
- Fig. 10 ist eine Tabelle der Schriftarteigenschaften, die für alle Ausführungsbeispiele gilt;
- Fig. 11 ist ein schematisches Blockschaltbild eines Bildverarbeitungsgerätes nach dem dritten Ausführungsbeispiel;
- Fig. 12 ist eine Ansicht, die das Format von im dritten Ausführungsbeispiel zugeladenen Emulationsprogrammdaten zeigt;
- Fig. 13 ist eine Tabelle für ein Selektierprogramm, das für alle Ausführungsbeispiele gilt;
- Fig. 14 ist eine Verwaltungstabelle, die für alle Ausführungsbeispiele gilt;
- Fig. 15 ist ein Arbeitsablaufplan, der die Verarbeitungsinhalte zeigt, die zu einer Bedientafel im dritten Ausführungsbeispiel gehören;
- Fig. 16 ist ein schematisches Blockschaltbild eines Bildverarbeitungsgerätes nach dem vierten Ausführungsbeispiel;
- Fig. 17 ist ein Arbeitsablaufplan einer Verarbeitung, die dem vierten Ausführungsbeispiel hinzugefügt ist;
- Fig. 18 ist ein Format von Zwischensprachendaten, die aus einem exteren Gerät im vierten Ausführungsbeispiel gesandt werden;
- Fig. 19 ist eine Ansicht, die die Beziehung zwischen eingegebenen Daten und einem ausgebenen Bild im fünften Ausführungsbeispiel zeigt;
- Fig. 20 ist ein Eingangsdatenformat im fünften Ausführungsbeispiel;
- Fig. 21 ist ein Arbeitsablaufplan, der eine Hauptroutine im fünften Ausführungsbeispiel zeigt;
- Fig. 22(A) bis 22(D) sind detaillierte Formate einer Zwischensprache während der Zeichenbehandlung in allen Ausführungsbeispielen;
- Fig. 23(A) bis 23(C) sind detaillierte Formate der Zwischensprache während der Bildbehandlung in allen Ausführungsbeispielen;
- Fig. 24 ist eine perspektivische Ansicht, die den internen Aufbau eines Tintenstrahldruckers zeigt, auf den die vorliegende Erfindung anwendbar ist; und
- Fig. 25 ist ein Blockschaltbild einer Steuerschaltung des in Fig. 24 gezeigten Tintenstrahldruckers.
- Verschiedene Merkmale können in Verbindung mit der Erfindung verwendet werden, und diese werden mit Hilfe der Ausführungsbeispiele erläutert, wobei das dritte Ausführungsbeispiel den Hauptaspekt der Eingabe eines Selektionsprogrammes enthält.
- Wie aus der nachstehenden Beschreibung deutlich wird, ist die vorliegende Erfindung nicht nur auf eine Laserdrucker, sondern auch auf einen Thermodrucker, einen Tintenstrahldrucker, einen Nadeldrucker oder andere anwendbar. Die vorliegende Erfindung ist weder auf ein spezielles Druckschema noch auf einen speziellen Drucker beschränkt.
- Fig. 1 ist ein schematisches Blockschaltbild eines Bildverarbeitungsgerätes nach einem Ausführungsbeispiel der vorliegenden Erfindung. Die Arbeitsweise dieses Ausführungsbeispiels ist nachstehend allgemein beschrieben.
- Eine Vielzahl externer Geräte 301 und 302 dienen als Druckdatenquellen und sind mit dem Gerät dieses Ausführungsbeispiels verbunden (aus diesem Grund hat das Gerät eine Vielzahl von Eingangsschnittstellen). Eine Eingabeeinheit 11 in einer Druckersteuereinheit 101 (wird später beschrieben) empfängt aus den externen Geräten 301 und 302 Druckdaten (bestehend aus einer Druckersprache). Die Eingabeeinheit 11 bewertet nur die Daten aus dem externen Gerät, das die Druckdaten zuerst gesandt hat. Während die Druckdaten fortlaufend von diesem externen Gerät gesandt werden, sperrt die Eingabeeinheit 12 den Empfang von Druckdaten aus den anderen externen Geräten.
- Die Inhalte der empfangenen Druckdaten werden analysiert, um einen speziellen der Analysatoren des Gerätes auszuwählen, der die eingegebenen Druckdaten verarbeitet. Mit anderen Worten, die Eingabeeinheit 11 überprüft einen Steuerbefehl, der in den empfangenen Druckdaten enthalten ist, und wählt eine spezielle Druckersprache entsprechend diesem Steuerbefehl aus. Die Eingabeeinheit 11 liefert dann die Druckersprache an einen der Vielzahl von Analysatoren 12a und 12b, die diese Druckersprache übersetzen können. Das heißt, die Eingabeeinheit 11 enthält eine Funktion der automatischen Schnittstellenumschaltung und der automatischen Analysatorauswahl.
- Die Analysatoren 12a und 12b können als Emulationsprogramme zum Übersetzen von Steuerbefehlen angesehen werden, die in verschiedenen Druckersprachen enthalten sind. Angemerkt sei zu diesem Ausführungsbeispiel, daß jeder Analysator (Emulationsprogramm) gemeinsame Zwischenausdruck-Sprachendaten erzeugt (werden später einfach als Zwischensprachendaten bezeichnet), aber die Punktausbildung nicht ausführt. Einzelheiten der Zwischensprachendaten werden später detailliert beschrieben.
- Jeder Analysator empfängt eine Druckersprache, die für ihn selbst geeignet ist, und erzeugt Zwischensprachendaten zur Punktmustererzeugung anhand einer Standardbibliothek 13 für die Zwischenausdruckerzeugung (ein Satz verschiedener Funktionen, der zur Zwischensprachenerzeugung gehört) und Schriftartskalierer 15a und 15b. Wie schon beschrieben, unterscheiden sich die von den jeweiligen Analysatoren analysierten Druckersprachen voneinander, aber jeweilige Analysatoren geben gemeinsame Zwischensprachendaten ab.
- Das Ausgangssignal eines beliebigen Analysators kann zu einer gemeinsamen Punktmuster-Entwicklungseinheit (Rasterungseinheitt) 14 übertragen werden. Die Rasterungseinheitt 14 rastert das Eingangssignal in Punktdaten, und die Punktdaten können in einem Seitenspeicher (Abbbildungsspeicher) 16 ausgebildet werden. Das im Seitenspeicher 16 ausgebildete Bild wird sequentiell in Videosignalen an einen Ausgabemechanismus (Drucker) 200 durch eine Ausgabeeinheit 17 ausgegeben, wodurch die ausgegebenen Daten gedruckt werden.
- Wenn bei der obigen Verarbeitung ein Analysator (Emulationsprogramm) neu einzurichten ist, benötigt das Emulationsprogramm nicht mit Sicherheit ein Programm, das zu der Punktentwicklung gehört, sondern kann sicher nur ein Programm zum Erzeugen von Daten (Zwischensprache) enthalten, das von der Rasterungseinheitt 14 ausgeführt werden kann, wodurch die Belastung für den Programmierer verringert wird. Darüber hinaus kann die Größe (Speicherkapazität) des Analysators verringert werden, wodurch zu einer Verringerung der Kosten beigetragen wird.
- Nachstehend ist eine Zwischensprache beschrieben.
- Empfangene Druckdaten (bestehend aus einer Druckersprache) sind für den Menschen im allgemeinen relativ verständlich. Mit anderen Worten, die Druckdaten sind keine Daten mit einem Format, das direkt von der CPU im Bilderzeugungsgerät übersetzt wird. Alle Druckdaten können jederzeit, wenn sie empfangen werden, zur Erzeugung zugehöriger Punktdaten übersetzt werden. Die zur Übersetzung aller Druckdaten erforderliche Zeit ist nicht vernachlässigbar. Im Ergebnis ist die erforderliche Zeit, bis das externe Gerät von der Verarbeitung der Druckdatenausgabe freigegeben wird, in unerwünschter Weise verlängert.
- Um dies zu vermeiden, werden empfangene Daten in Sprachendaten (d. h., Daten die leicht von der CPU übersetzt werden können) mit einer niedrigeren Ebene als diejenige der empfangenen Daten umgesetzt, und die umgesetzten Daten werden gespeichert und gehalten. Wenn diese Sprachendaten niederiger Ebene beispielsweise von einer Seite in einem Zwischensprachenbereich 24C gespeichert sind (wird später beschrieben), wird die aktuelle Punktausbildung ausgeführt. Die Sprachendaten niederiger Ebene werden in diesem Ausführungsbeispiel Zwischensprachendaten genannt. Das heißt, die Zwischensprachendaten sind eine umgesetzte Druckersprache, um die Punktausbildung zu vereinfachen.
- Beispielsweise erzeugt die CPU sogar beim Drucken eines Zeichens das zugehörige Zeichenmuster auf der Grundlage verschiedener Arten von Informationen, wie beispielsweise der Art von Zeichen, einem Vergrößerungsverhältnis, einer Druckposition, einer Drehrichtung, und einer Abwandlungsinformation, und das erzeugte Zeichenmuster kann in einem Druckspeicher entwickelt werden. In diesem Ausführungsbeispiel haben die von den Analysatoren 12a und 12b erzeugten Zwischensprachendaten ein Format bestehend aus einem Identifikationscode zur Identifizierung der Art der Verarbeitung und der Parameter, gefolgt vom Identifikationscode zur Übertragungssteuerung für diese Verarbeitung:
- Zwischensprachendatenformat (binäre Daten: ..., Identifikationscode, p1, p2, ..., pn, Identifikationscode, p1, p2, ..., pn, ... (wobei p1, ... pn ... pn Parameter darstellen, deren Anzahl von einem vorgegebenen Identifikationscode abhängt).
- Die Rasterungseinheitt 14 führt eine Funktion (Unterroutinenprogramm) gemäß einem zugehörigen Identifikationscode aus, um die erzeugten Zwischensprachendaten auszuführen. Wenn zu dieser Zeit zugehörige Parameter anwesend sind, werden auch die Parameter zur Funktion vor der Ausführung der erzeugten Zwischensprachendaten übertragen. In der Praxis speichert ein Analysator (nicht dargestellt) in der Rasterungseinheitt 14 eine Funktion gemäß einem Identifikationscode, der in den Zwischenspeicherdaten enthalten ist, und die Funktion entsprechend dem Identifikationscode in den Zwischensprachendaten wird ausgeführt.
- Fig. 4 und 5 zeigen einen schematischen Ablauf der Verarbeitung dieses Ausführungsbeispiels. Fig. 4 zeigt die Verarbeitungsinhalte, die zu einem Zeichenbehandlungsprozeß gehören, und Fig. 5 zeigt die Verarbeitungsinhalte, die zu einem Bildbehandlungsprozeß gehören. Der Zeichenbehandlungsprozeß wird kurz anhand Fig. 4 beschrieben. Wenn der Analysator 12a (oder 12b) einen Positionsbennungsbefehl empfängt, einen Schriftartauswahlbefehl, einen in den von der Eingabeeinheit 11 empfangenen Daten enthaltenen Zeichencode und dergleichen, analysiert der Analysator 12a die empfangenen Daten und erzeugt die Identifikationsinformation (ID-Code) und deren Parameter unter Verwendung verschiedener Funktionen, die in der Standardbibliothek 13 für Zwischensprachenerzeugung gespeichert sind, wodurch Zwischenausdruckdaten erzeugt werden. Diese Operation verwendet auch den Analysator 12a (oder 12b) für das Bild in Fig. 5. Zu den erschiedenen Arten erzeugter Information für ein Zeichen gehören ein Zeichenpunktraster, physischer X- und Y-Koordinatenbenennungsbefehl, Ablageinformation und dergleichen. Was die Bilddaten anbetrifft, so erzeugt der Analysator 12a (oder 12b) einen Arbeitsbereich-Reservierbefehl für jedes eingegebene Bild und eine Informationsspezifizierung des Bildes. Zur selben Zeit erzeugt der Analysator 12a Zwischenausdruckdaten, die Bildentwicklungs- Positionsinformationen der gespeicherten Daten in der Reservierungsposition enthalten, Ablageinformationen und erforderlichenfalls Bildabwandlungsinformationen (wenn die empfangenen Druckdaten einen Bildabwandlungsbefehl enthalten).
- Ein Beispiel einer Zwischensprache nach Zeichenbehandlung ist in den Fig. 22(A) bis 22(D) gezeigt, und ein Beispiel einer Zwischensprache nach Bildbehandlung ist in den Fig. 23(A) bis 23(C) gezeigt. Die nach der Zeichenbehandlung erzeugte Zwischensprache enthält Ablage, Zeichenlogik, ein Vergrößerungsverhältnis und ein Abbbildungsmuster. Die nach Bildbehandlung erzeugte Zwischensprache enthält identische Daten zu jenen der nach Zeichenbehandlung erzeugten Zwischensprache, und Informationen, die zu einem Bildmuster gehören. Diese Zwischensprachendaten sind nicht alle die Zwischensprachendaten, die in diesem Ausführungsbeispiel behandelt werden. In allen Zeichen oder Bilddaten ist ein Identifikationscode (ID-Code) (Information, die eine Ruffunktion spezifiziert), die die Bedeutung aller Zwischensprachendaten darstellt, zu Beginn der Erzeugung von Zwischensprachendaten präsent. Daten, die nach jeder Identifikation ID folgen, sind Parameter, die zur zugehörigen Verarbeitung übertragen werden. Die Anzahl von Parametern hängt jeweils von der Identifikation ID ab.
- Angemerkt sei, daß die Ablage (allgemein präsent bei der Zeichenbehandlung und Bildbehandlung) zur Entwicklung eines Zeichens oder eines Bildmusters innerhalb eines benannten rechteckigen Bereichs (dieser Bereich wird durch die obere linke X- und Y-Koordinate bestimmt, eine Breite und eine Höhe) verwendet wird. Mit anderen Worten, das Festlegen der Grenze ist eine Erklärungsdarstellung, die die Entwicklung eines Abschnitts verbietet, der diesen Bereich überschreitet, es sei denn, eine andere Grenzfestlegung ist präsent. Ein Parameter "Zeichenlogik" in der Zeichenlogik (allgemein bei der Zeichenbehandlung und Bildbehandlung vorhanden) stellt einen Befehl dar, der einen logischen Ausdruck zur Entwicklung eines Musters oder eines Bildes benennt. Genauer gesagt, Informationen zum Anweisen einer Überschreitentwicklung, transparenten Entwicklung (logisches ODER) oder exklusives ODER des entwickelten Musters werden gespeichert. In diesem Falle wird die aktuelle Logik für die nachfolgenden Muster verwendet, es sei denn, ein spezieller Befehl wird eingegeben. Die Information für das Vergrößerungsverhältnis hat zwei Parameter, weil die Horinzontal- und Vertikal-Vergrößerungsverhältnisse voneinander unabhängig sind. Ein Punktrastermuster hat zusätzlich zur Information zum Spezifizieren eines zu entwickelnden Abbildungsmusters Koordinatenpositionsparameter zur Entwicklung.
- Nach der Bildbehandlung haben die Zwischensprachendaten fast dieselben Inhalte wie zuvor beschrieben. Das Format von Zwischensprachendaten zur Entwicklung eines empfangenen Bildes als dessen Merkmal ist nachstehend beschrieben.
- Wenn Bilddaten in der zuvor beschriebenen Weise empfangen werden, speichert der Analysator 12a (oder 12b) die Bilddaten in einem Arbeitsbereich 24a eines RAM 24 und erzeugt eine ID-Zahl, die für die Bilddaten individuell ist. Ein "Bildmustercode" in Fig. 23(C) stellt diesen ID-Code dar. Parameter, die nach dem ID-Code folgen, sind zur Bildmuster-Entwicklungsverarbeitung übertragene Parameter. Diese Parameter sind Daten, die darstellen, wie durch den Bildmustercode spezifizierte Bilddaten modifiziert werden. Genauer gesagt, diese sechs Teile der Information stellen Elemente in einer Matrix dar, die bei der Verarbeitung zur Modifizierung einer Bildmuster- Entwicklungsfunktion verwendet wird. Die Bildmuster- Entwicklungsfunktion setzt Originalkoordinaten (XS, YS) eines jeden Pixels in das benannte Muster in modifizierte Zielkoordinaten (XD, YD) gemäß der Matrix um, die aus den vorgegebenen Parametern besteht. Ein im Originalmuster in den Koordinaten (XS, YS) präsentes Pixel wird in die Koordinaten (XD, YD) übertragen. Diese Koordinaten stellen keine absoluten Koordinatenwerte des Speichers zur Entwicklung eines Druckbildes dar, sondern lokale Koordinaten innerhalb des rechteckigen Bereichs, der durch das Festlegen der Grenze bestimmt ist.
- Bezüglich der Fig. 4 oder 5 sind die Formate von den Analysatoren 12a und 12b eingegebenen Druckdaten weitestgehend voneinander unterschiedlich, abhängig von den Druckersprachen, die von den Analysatoren zu analysieren wereden. Wie schon beschrieben, ist die Zwischensprache die zur Vereinfachung der Übersetzung der Rasterungseinheitt 14 umgesetzte Druckersprache.
- Die detaillierte Einrichtung des Bildverarbeitungsgerätes dieses Ausführungsbeispiels ist in Fig. 2 gezeigt. Die Einrichtung verwendet eine Struktur, die allen folgenden Ausführungsbeispielen gemeinsam ist.
- Das Bildverarbeitungsgerät enthält eine Druckersteuereinheit 21 und Schnittstellen (I/F) 21a bzw. 21b, die mit dem externen Geräten (Hauptcomputern oder dergleichen) 301 bzw. 302 verbunden sind. Jede Schnittstelle kann eine parallele oder serielle Schnittstelle sein. Eine CPU 22 steuert den gesamten Betrieb des Gerätes. Ein ROM 23 speichert die von der CPU 22 auszuführenden Basisprogramme (d. h., Programme, die mit dem Datenzugriff durch die I/F und eine später zu beschreibende Verarbeitungssequenz in Fig. 6 im Zusammenhang stehen). Der RAM 24 enthält einen Arbeitsbereich 24a, auf den während der Ausführung verschiedener Verarbeitungsoperationen der CPU 22 zugegriffen wird, und einen Eingangspufferbereich 24b zur zeitweiligen Speicherung empfangener Druckdaten, und den Zwischensprachenbereich 24c zum Speichern der obigen Zwischensprachendaten. Obwohl der RAM 24 andere Datenbereiche besitzt, werden sie erst später beschrieben. Speicher 25a und 25b (gemäß den Analysatoren 12a und 12b in Fig. 1) speichern Emulationsprogramme zur Übersetzung verschiedener Druckersprachen. Die Speicher 25a und 25b enthalten ROM oder dergleichen. Ein Bibliothekspeicher 26 für Zwischensprachenerzeugung (gemäß der Standardbibliothek 13 für die Zwischenausdruckerzeugung in Fig. 1) speichert einen Satz verschiedener Funktionen zum Erzeugen der Zwischensprache. Speicher 27a und 27b speichern Buchstabengrößendaten, um den Druck verschiedener Arten von Zeichen zu gestattet (d. h., Schreibtypen für Gotisch und Mincho), wie zu diesem Ausführungsbeispiel beschrieben wird. Die Inhalte der Buchstabengrößenspeicher 27a und 27b enthalten ein Programm für Konturschriftdaten 15 für jedes Schriftbild und letztlich Zeichenmuster auf der Grundlage der Konturschriftdaten 15. Die Speicher 26, 27a und 27b enthalten ROM oder dergleichen.
- Ein Punktrasterspeicher 28 (gemäß dem Seitenspeicher 16 in Fig. 1) hat eine Kapazität zur Entwicklung eines Punktbildes im Umfang einer Seite. Ein Ausgang I/F 29 gibt sequentiell die im Punktrasterspeicher 28 entwickelte Punktinformation in Form von Videosignalen an einen Drucker (Ausgabemechanismus) 200 aus. Ein nichtflüchtiger Speicher (wird nachstehend als NVRAM bezeichnet) 31 speichert und hält verschiedene Einstellinhalte und enthält beispielsweise einen E²-PROM. Eine Bedientafel 30 enthält verschiedene Bedienknöpfe und eine LCD-Anzeigeeinheit. Eine Festplatte 32 speichert verschiedene aus dem externen Geräten 301 und 302 in den Arbeitsspeicher 24 des RAM 24 zugeladene Daten. Die obigen Bausteine sind mit einem Systembus 33 verbunden.
- Nun wird der Aufbau der Druckermaschine 200 eines Laserstrahldruckers dieses Ausführungsbeispiels anhand Fig. 3 beschrieben.
- Der Laserstrahldrucker in Fig. 3 enthält einen Laserstrahldrucker-Grundgerät (LBP) 100 und die Druckersteuereinheit 101, die über alle die Komponenten verfügt, die von einer gestrichelten Linie in Fig. 2 umgeben sind. Die Druckersteuereinheit 101 setzt hauptsächlich Zeicheninformationen in ein Videosignal des zugehörigen Zeichenmusters um und gibt es an einen Lasertreiber 102 ab.
- Der Lasertreiber 102 ist eine Schaltung, die den Halbleiterlaser 103 ansteuert. Der Lasertreiber 102 steuert das EIN/AUS eines Laserstrahls 104 aus dem Halbleiterlaser 103 gemäß dem durch Ausgang-I/F (Schnittstelle) 29 ausgegebenen Videosignal. Der Laserstrahl 104 wird nach rechts und links durch einen Polygondrehspiegel 105 gedreht, tastet ab und belichtet einen elektrostatische Trommel 106, wodurch ein latentes Bild gemäß dem Zeichenmuster auf der elektrostatischen Trommel 106 erzeugt wird. Das latente Bild wird von einer Entwicklungseinheit 107 entwickelt, die sich um die elektrostatische Trommel 106 herum befindet, und wird auf Aufzeichnungspapier übertragen. Das Aufzeichungspapier ist ein zugeschnittenes Blatt. Die Aufzeichnungsblätter sind in einer Papierkassette 108 aufgehoben, die mit dem LBP 100 befestigt ist. Jedes Aufzeichnungsblatt wird von einer Papieraufnahmewalze 109 ergriffen und in das innere des Gerätes durch Transportwalzen 110 und 111 befördert. Das Blatt wird dann zur elektrostatisches Trommel 106 geliefert.
- Obwohl eine Beschreibung in diesem Ausführungsbeispiel nicht der Reihenfolge entspricht, gibt die zugehörige I/F 21a ein Interruptsignal an die CPU 22, wenn Druckdaten beispielsweise aus dem externen Geräten 301 abgegeben werden. Nach Empfang dieses Interruptsignals führt die CPU 22 eine Interruptverarbeitung (Routine) aus, die nachstehend kurz beschrieben ist.
- In der Interruptroutine lädt die CPU 22 die Eingangsdaten aus dem unterbrochenen I/F 21a und speichert sie im Eingangspufferbereich 24b. Wenn alle I/F freigegeben sind, wie zur Zeit des Einschaltens, ist nur diejenige I/F aktiviert, die die Druckdaten zuerst ausgibt (d. h., die I/F, die zuerst das Interruptsignal erzeugt), und die restlichen I/F sind inaktiviert (alle anderen Druckdaten werden nicht akzeptiert).
- Nun wird anhand Fig. 6 auf der Grundlage der Annahme, daß die obige Interruptverarbeitung ausgeführt wird, die Operationssequenz (Hauptroutine) der CPU beschrieben.
- Wenn der Betriebsschalter des Gerätes eingeschaltet wird, erfolgt die Initialisierung in Schritt S1. Diese Initialisierung umfaßt eine Operation zur Freigabe aller Eingabe-I/F 21a und 21b. In Schritt S2 bestimmt die CPU 22, ob alle die I/F 21a und 21b im On-Line-Zustand sind (Datenempfangszustand). Wenn JA in Schritt S2, schreitet die Verarbeitung zu Schritt S3, um zu bestimmen, ob die Druckdaten im Eingangspufferbereich 24b gespeichert sind.
- Wenn JA in Schritt S3, geht die Verarbeitung zu Schritt S4, um die I/F-Freigabezeit (d. h., ein nicht dargestellter Zeitgeber wird zurückgesetzt) zu initialisieren. Die Bedeutung der I/F- Freigabezeit wird in der nachstehenden Beschreibung geklärt.
- Die CPU 22 bestimmt in Schritt S5, ob ein spezieller Analysator für die Dateneingabe ausgewählt ist, d. h., ob einer der Emulationsprogrammspeicher 25a oder 25b verwendet wird. Im Initialisierungszustand wird die Auswahl des Emulationsprogrammsspeichers nicht bestimmt. Der Ablauf schreitet fort zu Schritt S6. Wenn jedoch die Verarbeitung der Druckdaten zu einem gewissen Umfang vorangeschritten ist, d. h., wenn das Emulationsprogramm bereits ausgewählt ist, verzweigt sich die Verarbeitung zu Schritt S9.
- In Schritt S6 wird eine spezielle Druckersprache auf der Grundlage des Steuercodes ausgewählt, der in den Daten enthalten ist, die im Eingangspufferbereich 24b gespeichert sind, und das zugehörige Emulationsprogramm wird ausgewählt. Wenn zu dieser Zeit das zugehörige Emulationsprogramm nicht präsent ist oder eine Vielzahl von Emulationsprogrammen präsent sind (Schritt 57), schreitet die Verarbeitung fort zu Schritt S8, um einen Standardanalysator auszuwählen. Wenn eine Vielzahl von anwesenden Analysatorkandidaten bestimmt ist, wird das Emulationsprogramm mit der obersten Priorität ausgewählt (die Prioritätsreihenfolge ist vorbestimmt). Auf diese Weise wird ein Emulationsprogramm bestimmt.
- Es wird angenommen, daß in Schritt S5 bestimmt ist, daß eines der Emulationsprogramme bereits ausgewählt ist, daß ein Anpaßemulationsprogramm in Schritt S6 ausgewählt ist, und da das Standardemulationsprogramm ausgewählt ist, und die Verarbeitung schreitet fort zu Schritt S9.
- In Schritt S9 wird das ausgewählte (oder bereits ausgewählte) Emulationsprogramm (Analysator) ausgeführt (aufgerufen). Das auszuführende Emulationsprogramm hat einen Inhalt, der abhängig von der Art der Emulationsprogramme unterschiedlich sein kann. Wenn die Analyse ausgeführt wird und die Verarbeitung zur Hauptroutine (Schritt S10) zurückkehrt, werden Zwischensprachendaten, die auf einem Blatt auszudrucken sind, im Zwischensprachenbereich 24c im RAM 24 gespeichert.
- In Schritt S10 wird das zugehörige Bitrastermuster im Bitpunktrasterspeicher 28 auf der Grundlage der erzeugten Zwischensprachendaten entwickelt.
- Wenn das auf ein Blatt zu druckende Muster entwickelt ist, schreitet die Verarbeitung zu Schritt S11, um ein allgemein bekanntes Videosignal durch den Ausgabe-I/F 29 abzugeben. Wenn das Drucken eines Blattes abgeschlossen ist, kehrt die Verarbeitung zu Schritt S3 zurück, und die obigen Verarbeitungsschritte werden wiederholt. Immer wenn ein Zyklus abgeschlossen ist, wird die I/F-Freigabezeit zurückgesetzt, und ein geeignetes Emulationsprogramm wird ausgewählt. In diesem Fall wird in Schritt S5 JA erzielt, und die Operationen der Schritte 56 bis 58 werden nicht ausgeführt.
- Während das Drucken auf der Grundlage des einheitlich ausgewählten Emulationsprogramms fortgesetzt wird, hält das externe Gerät, das die Druckdaten abgegeben hat, die Ausdruckdaten an, und die zu verarbeitenden Daten sind nicht im Eingangspufferbereich 24b präsent, und der Ablauf verzweigt sich von Schritt S3 zu S12.
- Die CPU 22 bestimmt, ob die I/F-Freigabezeit abgelaufen ist. Das heißt, die CPU 22 bestimmt, ob das externe Gerät die Ausgabe einer Serie von Druckdaten beendet hat. Wenn NEIN in Schritt S12, kehrt der Ablauf zu Schritt S2 und zu den Schleifenschritten S3 und S12 zurück. Wenn die CPU bestimmt, daß die Druckdaten aus dem externen Gerät nach Ablauf der I/F- Freigabezeit empfangen sind, schreitet der Ablauf von Schritt S12 zu Schritt S13, um alle I/F 21a und 21b freizugeben, um den Empfang von allen externen Geräten 301 und 302 zu ermöglichen.
- In der Hauptroutine werden Druckdaten im Punktrasterspeicher 28 gemäß allgemeiner vom Emulationsprogramm erzeugter Zwischensprachendaten entwickelt. Folglich können die jeweiligen Emulationsprogramme frei von der Entwicklung der Punktrasterdaten sein.
- Die Inhalte der Analyse des Emulationsprogramms in Schritt S9 werden nun anhand eines Arbeitsablaufplans in Fig. 7 beschrieben. Das folgende Emulationsprogramm entspricht einer Druckersprache.
- Beim Aufrufen dieses Emulationsprogramms, d. h., des Emulationsprogrammspeichers 25a, in der Hauptroutine wird eine Analyse unter Verwendung der im Eingangspufferbereich 24b in Schritt S21 gespeicherten Eingangsdaten ausgeführt. Die CPU 22 bestimmt in Schritt S22, ob die Eingangsdaten einen Neue-Seite- Befehl (Druckbefehl) enthalten. Wenn NEIN in Schritt S22, schreitet der Ablauf fort zu Schritt S23, um diese Daten zu analysieren (Schritt S23). Der Identifikationscode und dessen Parameter werden erzeugt, um die Zwischensprachendaten zu unter Verwendung unterschiedlicher Funktionen erzeugen, die im Bibliothekspeicher 26 für Zwischensprachenerzeugung gespeichert sind (Schritt S24), und die sich ergebenden Zwischensprachendaten werden im Zwischensprachbereich 24c gespeichert. Bis ein Neue-Seite-Befehl festgestellt ist, werden die Operationen vom Schritt S21 wiederholt. Wenn ein Neue-Seite- Befehl festgestellt ist, kehrt der Ablauf zu Schritt S10 der Hauptverarbeitung zurück.
- Wenn der Ablauf zur Hauptroutine auf diese Weise zurückkehrt, werden Zwischensprachendaten einer Seite im Zwischensprachenbereich 24c gespeichert.
- Ein Emulationsprogramm für eine Druckersprache für einen Drucker zum Hin- und Herführen eines Schlittens, um die Information zu drucken, wird im Prinzip in der obigen Weise verarbeitet. Jedoch kann ein Neue-Seite-Befehl nicht empfangen werden, wobei die Anzahl von Zeilen auf der Grundlage eines Zeilenabstands für die zu emulierende Sprache verwendet werden kann, um den Entscheidungsblock in Schritt S22 festzulegen.
- Selbst wenn eine Druckersprache empfangen wird, die keine spezielle Schriftart bestimmt (d. h., wenn dessen Emulationsprogramm ein Programm ist, das nicht von einem bestimmten Schriftskalierer abhängig ist), wählt ein Anwender einen Schriftskalierer über die Bedientafel 30 aus oder bestimmt diesen im voraus (das Einstellen des Inhalts kann im NVRAM 31 gespeichert und gehalten werden), um ein gewünschtes Druckergebnis zu erzielen. Mit anderen Worten, die im Gerät vorgesehenen Schriftskalierer 15a und 15b können frei als gemeinsame Ressourcen verwendet werden.
- Wie schon zu diesem Ausführungsbeispiel beschrieben, ist der Bibliothekspeicher 26 für gemeinsame Zwischensprachenerzeugung eingerichtet, und die Emulationsprogrammspeicher 25a und 25b führen nur eine Operation zum Erzeugen der gemeinsamen Zwischensprachendaten aus. Eine Entwicklungsumgebung für neuerliche Entwicklung eines Emulationsprogramms kann verbessert werden, und eine Speicherkapazität kann klein bleiben, wodurch die Kosten gesenkt werden. Ein Emulationsprogramm kann in selektiver Weise Schriftarten einer Vielzahl von Schriftskalierern verwenden.
- Im obigen Ausführungsbeispiel kehrt der Ablauf immer dann zur Hauptroutine zurück, wenn jeder Analysator Zwischenspeicherdaten für eine Seite erzeugt. Jedoch muß der Umfang der Zwischensprachendaten nicht eine Seite betragen, sondern kann auch kleiner als eine Seite sein. Darüber hinaus kann die Musterentwicklung auf der Grundlage der Zwischensprachendaten gleichzeitig mit dem Erzeugen der Zwischensprachendaten ausgeführt werden.
- Im obigen Ausführungsbeispiel (im ersten Ausführungsbeispiel) werden die Schriftskalierer 15a und 15b im Gerät verwendet. Jedoch kann der von einem externen Gerät angeforderte Schriftskalierer 15c im Gerät übertragen und registriert werden. Das heißt, der Schriftskalierer wird vom externen Gerät zum Gerät der vorliegenden Erfindung zugeladen. Dies wird als zweites Ausführungsbeispiel beschrieben. Die Anzahl der neu zu registrierenden Schriftskalierer ist nicht auf einen beschränkt, sondern es können zwei oder mehrere sein.
- Die schematische Anordnung des zweiten Ausführungsbeispiels ist in Fig. 8 gezeigt und nachstehend beschrieben.
- Bezüglich Fig. 8 sendet beispielsweise ein externes Gerät 301 einen Steuerbefehl (Befehl zum Zuladen) zum Zuladen von Schriftskalierdaten zum Gerät dieses Ausführungsbeispiels einen Code, der darstellt, daß die zugeladenen Daten Schriftskalierdaten sind, und die Gesamtzahl von zu sendenden Bits, Schriftskalierdaten und Prüfsummendaten darstellt. Zusätzlich zum Befehl zum Zuladen wird auch der Code gesandt, der die Art von Daten darstellt, weil ein Gegenstand des Zuladens nicht auf die Schriftskalierdaten beschränkt ist (dies wird im nachfolgenden Ausführungsbeispiel beschrieben). Die Verarbeitung zur Unterscheidung, ob Eingangsdaten Schriftskalierdaten sind, wird vor der Verarbeitung (Schritt S6 in Fig. 6) zum Selektieren einer Druckersprache ausgeführt, wenn eine Eingabeeinheit 11 normale Druckdaten eingibt. Angemerkt sei, daß das externe Gerät nicht auf das externe Gerät 301 beschränkt ist, sondern daß es auch ein externes Gerät 302 oder ein beliebiges anderes externes Gerät sein kann.
- Die Verarbeitung zur Bestimmung, ob ein Eingangsbefehl ein Zuladebefehl ist, und die Verarbeitung zur Ausführung der Zuladeoperation kann (gegebenenfalls) einem jeden Emulationsprogramm hinzugefügt sein. Ein zuzuladendes Programm selber braucht nicht in jedem Emulationsprogramm enthalten zu sein. Wenn dieses Programm in einem ROM 23 gespeichert ist, kann nur die Verarbeitung zum Selektieren, ob der Eingangsbefehl ein Zuladebefehl ist, und diese Verarbeitung zum Aufrufen dieses Zuladebestimmens ausgeführt werden, um folglich die Speicherkapazität zu verringern.
- Im zweiten Ausführungsbeispiel sendet das externe Gerät einen Zuladebefehl, Daten, die die Gesamtzahl von Bytes eines Schriftskalierers anzeigen (ein Programm zum Vergrößern oder zum Verkleinern eines Zeichenmusters und Erzeugen eines vergrößerten oder verkleinerten Zeichenmusters und dessen Konturschriftdaten), und die aktuellen Schriftskalierdaten. Diese Daten werden in einem Eingangspufferbereich 24b im RAM 24 gespeichert.
- Die solchermaßen gesandten Schriftskalierdaten werden letztlich in einem Arbeitsbereich 24a im RAM 24 gespeichert. Im Arbeitsbereich 24a im RAM 24 gehaltene Schriftskalier- Verwaltungsinformationen (Schrifteigenschaftstabelle) werden aktualisiert. Wenn die Stromversorgung abgeschaltet ist, werden die zugeladenen Daten und die Schrifteigenschaftstabelle gelöscht. Die zugeladenen Daten können erforderlichenfalls auf einer Festplatte 32 gespeichert werden. Beim Einschalten der Stromversorgung wird auf die Schriftarttabelle auf der Grundlage der Daten aus der Festplatte 32 zugegriffen. Angemerkt sei, daß die Speicherinhalte des RAM 24 von einer Pufferbatterie (nicht dargestellt) gehalten werden.
- Der Anwender verwendet den normal zugeladenen Schriftskalierer 15c als gemeinsame Ressource. Das heißt, wie beim Existieren der Schriftskalierer 15a und 15b können die zugeladenen Schriftskalierdaten frei und unabhängig von Emulationsprogrammen ausgewählt werden.
- Die Operationssequenz der CPU 22 zum Realisieren der vorstehenden Verarbeitung im zweiten Ausführungsbeispiel ist anhand eines Arbeitsablaufplans in Fig. 9 beschrieben. Diese Ablauftafel ist eingefügt, wenn NEIN in Schritt S5 in Fig. 6 erzielt wird, d. h., unmittelbar vor Schritt S6.
- NEIN wird in Schritt S erzielt, wenn ein zu druckender Analysator (Emulationsprogramm), als nicht ausgewählt bestimmt wird, d. h., wenn Druckdaten zur anfänglichen Zeit nach der Einschaltoperation empfangen werden, oder neuerliche Daten nach Abschluß einer Serie von Druckoperationen und der Freigabe aller Eingabe-IF 21a und 21b empfangen werden.
- Wenn in Schritt S5 in Fig. 6 NEIN erzielt wird und der Ablauf zu Schritt S31 in Fig. 9 voranschreitet, bestimmt die CPU 22, ob die eingegebenen Daten einen Zuladebefehl enthalten. Wenn die CPU 22 bestimmt, daß die eingegebenen Daten keinen Zuladebefehl, aber Druckdaten haben, schreitet der Ablauf zu Schritt S6 in Fig. 6, wie zuvor beschrieben.
- Wenn die CPU 22 in Schritt S31 bestimmt, daß die eingegebenen Daten ein Zuladebefehl sind, erzeugt die CPU 22 die Gesamtzahl an Bytes in Schritt S32. Die Gesamtzahl von zu empfangenen Bytes wird verglichen mit der Leerkapazität des Arbeitsbereichs 24a im RAM 24, um zu bestimmen, ob die Daten im Arbeitsbereich 24a des Speichers 24 gespeichert werden können. Wenn NEIN in Schritt S33, werden die folgenden Daten übersprungen, und der Ablauf kehrt zu Schritt S2 in Fig. 6 zurück. Wenn zu dieser Zeit die Sprungverarbeitung abgeschlossen ist, wird der andere passivierte Eingabe-I/F freigegeben.
- Wenn JA in Schritt S33, bestimmt die CPU 22 in Schritt S35, ob die zu sendenden Daten Schriftskalierdaten sind. Wenn NEIN in Schritt S35, schreitet der Ablauf zu Schritt S36, um die entsprechenden Daten zuzuladen, und der Ablauf kehrt zurück zu Schritt S2. Wenn zu dieser Zeit die Zuladeverarbeitung abgeschlossen ist, wird der andere passivierte I/F freigegeben. Der Bestimmungsschritt in S35 wird durch Bestimmen ausgeführt, ob der Zuladebefehl in den zu sendenden Daten anwesend ist.
- Die CPU 22 bestimmt, daß die Eingangsdaten die Schriftskalierdaten sind (d. h., der Zuladebefehl ist in den Eingangsdaten enthalten), der Ablauf schreitet fort zu Schritt S37, und die nachfolgend eingegebenen Daten werden im Arbeitsbereich 24a gespeichert, der dem RAM 24 zugeordnet ist. Zu dieser Zeit wird die Gesamtzahl an Bytes während des Speicherns der Eingabedaten in den Arbeitsbereich 24a errechnet. Darüber hinaus können die in den Arbeitsbereich 24a zugeladenen Daten auf der Festplatte 32 gespeichert werden.
- Wie schon beschrieben, werden die Eingangsdaten letztlich in den Arbeitsbereich 24a im Speicher 24 zugeladen. Die Anzahl letztlich empfangener Bytes wird verglichen mit dem vorherigen Summenergebnis, um zu bestimmen, ob die Daten korrekt empfangen worden sind. Wenn dem so ist, schreitet der Ablauf zu Schritt S39, um die in die dem Arbeitsbereich 24a zugeordnete Schriftzeichen-Eigenschaftstabelle zugeladenen Buchstaben zu registrieren. Wenn eine Prüfsumme NG wird, schreitet der Ablauf zu Schritt S40, um alle zugeladenen Daten zu löschen, um den benannten Arbeitsbereich 24a für andere Verarbeitungsoperationen freizugeben.
- In jedem Fall wird in den Schritten S39 und S40 durch die obige Empfangsverarbeitung die andere passivierte Eingabe-I/F freigegeben, und der Ablauf kehrt zu Schritt S2 zurück.
- Eine Schriftzeichen-Eigenschaftstabelle (allen Ausführungsbeispielen gemeinsam) ist in Fig. 10 gezeigt. Diese Tabelle enthält die Namen von Schriftskalierern und Speicherbestimmungsadressen von Programmen zur Ausführung dieser Schriftskalierer. In der dargestellten Tabelle werden die Inhalte der Tabelle durch Zuladen der Schriftskalierdaten aktualisiert. Angemerkt sei, daß "EOT" eine Marke ist, die das Ende der Tabelle darstellt.
- Gemäß dem zuvor beschriebenen zweiten Ausführungsbeispiel kann der Schriftskalierer 15c erneut registriert werden, da die Schriftskalierdaten aus dem externen Gerät (d. h., einem Hauptcomputer) zugeladen werden können.
- Jedes Emulationsprogramm kann in selektiver Weise zwischen den Schriftskalierern 15a und 15b als Standardschriftskalierer und dem neuregistrierten Schriftskalierer 15c umschalten. Folglich können ausdrucksvollere Ausgangssignale gewonnen werden.
- Das dritte Ausführungsbeispiel veranschaulicht das Zuladen eines neuen Analysators (Emulationsprogramms). Der Zweck dieses Ausführungsbeispiels ist es, leicht mit der Inkompatibilität von Druckersprachen bei einem Gerät nach der vorliegenden Erfindung zu Rande zu kommen, ohne eine neue Schaltung in dieses Gerät hinzuzufügen. Zur Vereinfachung der Beschreibung sind die Analysatoren (Emulationsprogramme) 12a und 12b des Gerätes dieses Ausführungsbeispiels Standardanalysatoren, und ein neuer Analysator 12c wird zugeladen. Die Analysatoren 12a, 12b und 12c werden zur Erzeugung der Zwischensprachendaten verwendet, die anhand des ersten und zweiten Ausführungsbeispiels bereits beschrieben worden sind.
- Das schematische Blockschaltbild des dritten Ausführungsbeispiels ist in Fig. 11 gezeigt.
- Die zwei Emulationsgrogramme, wie die Analysatoren 12a und 12b, sind als Standardemulationsprogramme im Gerät vorgesehen, und der neue dritte Analysator 12c ist im Gerät registriert. Daten eines aus einem externen Gerät 301 zugeladenen Emulationsprogramms werden beispielsweise letztlich in einem Arbeitsbereich 24a in einem RAM 24 im zweiten Ausführungsbeispiel gespeichert.
- Die Zuladeverarbeitung des Emulationsprogramms aus dem externen Gerät 301 ist im wesentlichen dieselbe wie das Zuladen der zum zweiten Ausführungsbeispiel beschriebenen Schriftskalierdaten, und eine detaillierte Beschreibung derselben wird fortgelassen. Dieses Zuladen des Emulationsprogramms wird in Schritt S36 in Fig. 9 ausgeführt.
- Fig. 12 zeigt die Inhalte der Emulationsprogrammdaten in allen vom externen Gerät 301 gesandten Daten.
- Wie in Fig. 12 gezeigt, ist ein Emulationsname, der die Entsprechung zwischen dem Emulationsprogramm und einer speziellen Druckersprache darstellt, als Kopfdaten verfügbar. Die Selektierprogrammdaten, Einstellprogrammdaten und dann aktuelle Emulationsprogramme folgen dem Emulationsnamen. Der Zuladebefehl, der darstellt, daß die eingegebenen Daten Zuladedaten sind, der Code, der darstellt, daß die Zuladedaten Emulationsdaten sind, und die Gesamtzahl von Bytes, wie sie zum zweiten Ausführungsbeispiel beschrieben sind, befinden sich vor den obigen Daten.
- Die Selektierprogrammdaten werden bei der Verarbeitung von Schritt S6 von Fig. 6 im ersten Ausführungsbeispiel verwendet. Das Selektierprogramm bestimmt, ob die Eingangsdaten der Emulation derselben entsprechen. Das Selektierprogramm enthält eine Vielzahl von Steuerbefehlen (Datenformatinformation, die ein spezielles Format von Parametern darstellt) individuell für die zu analysierende Druckersprache.
- Die Einstellprogrammdaten sind ein Programm zur Bestimmung verschiedener Einstellzeiten in Verwendung mit dessen Emulationsprogramm, und Einzelheiten der Einstellprogrammdaten werden später beschrieben.
- Nachdem die Daten das in Fig. 12 gezeigte Format haben, wird korrekt in den Arbeitsbereich 24a im RAM 24 zugeladen, eine CPU 22 aktualisiert verschiedene Tabellen des Gerätes gemäß den zugeladenen Daten. Genauer gesagt, eine Selektierprogrammtabelle und eine Verwaltungstabelle, die im Arbeitsbereich 24a vorgesehen sind, werden aktualisiert. Das heißt, das neuerlich zugeladene Emulationsprogramm wird in diesen Tabellen gespeichert.
- Eine Selektierprogrammtabelle ist in Fig. 13 gezeigt, und eine Verwaltungstabelle ist in Fig. 14 gezeigt. Angemerkt sei, daß "EOT" in jeder Tabelle eine Marke ist, die das Ende der Tabellendaten anzeigt. Das Format dieser Tabellen ist identisch mit jenem der vorherigen Ausführungsbeispielen und auch der nachfolgenden Ausführungsbeispiele.
- Die Selektierprogrammtabelle in Fig. 13 stellt dar, daß Emulationsprogramme A und B ausgestattet sind im Gerät vom Anfang an, und ein Emulationsprogramm C wird neuerlich registriert. Eine automatische Selektierverarbeitung in Schritt 6 in Fig. 6 im ersten Ausführungsbeispiel ruft sequentiell die Selektierprogramme der Analysatoren auf, die durch diese Selektierprogrammtabelle dargestellt sind, und führt die Bestimmung auf der Grundlage des Ergebnisses vom Aufruf aus. Beispielsweise kann jedes Selektierprogramm als ein Programm angesehen werden zum Bestimmen, ob ein Steuerbefehl in den im Eingabepufferbereich 24b gespeicherte Daten kompatibel mit dem eigenen Emulationsprogramm ist.
- Dies gilt auch für die in Fig. 14 gezeigte Verwaltungstabelle. Punkte mit Ausnahme von "Emulation C" sind in dem Gerät von Anfang an eingerichtet.
- Verschiedene Druckerumgebungen werden auf einer Bedientafel 30 eingestellt. Die Umgebungen enthalten Einstellungen, die in allen Emulationsprogrammen gemeinsam verwendet werden, beispielsweise eine Schnittstellen-Übertragungsrate, und Umgebungseinstellungen individuell für jedes Emulationsporgramm. Diese Umgebungseinstellung wird letztlich in einem NVRAM 31 gespeichert und gehalten, auch wenn die Stromversorgung abgeschaltet ist.
- Das Gerät dieses Ausführungsbeispiels enthält eine Vielzahl von Eingangs-I/F 21a und 21b, wie in Fig. 1 oder in Fig. 2 gezeigt. Diese I/F enthalten eine parallele Schnittstelle und eine serielle Schnittstelle, wie beispielsweise ein RS-232C- Schnittstelle.
- Der Punkt "Schnittstelle" in dieser Verwaltungstabelle verwaltet diese I/F (Speicherbestimmungsadressen des I/Fzugeordneten Programms sind gespeichert). Dieses Programm umfaßt die Verarbeitung zur Einstellung einer Übertragungsrate oder dergleichen, wenn ein gegebener Eingangs-I/F eine serielle Schnittstelle ist.
- Der Punkt "Steuerung" der Verwaltungstabelle verwaltet das Einstellen der Größe und die Grenze vom Aufzeichnungspapier, das in einer Papierkassette oder dergleichen bereitgehalten wird (Speicherbestimmungsadresse des steuerzugeordneten Programms).
- Der Punkt "Speicher (MEM)" verwaltet das Einstellen der Kapazität eines aktuell eingesetzten Speichers (die Speicherkapazität kann erhöht werden), die Größe des Eingangspufferbereichs 24b (wenn diese Größe anwächst, kann das externe Gerät früher von der eigenen Druckdaten- Ausgbeverarbeitung freigegeben werden) und dergleichen.
- Die Punkte "Emulation A, Emulation B und Emulation C" verwalten Programme zum Einstellen individueller Umgebungen für die jeweiligen Emulationen und die Speicherzieladressen der Emulationsprogramme. Als ein Umgebungseinstellprogramm können spezielle Arten und Größen von Buchstaben als Standard ausgewählt werden, beispielsweise von Emulation A.
- Der Punkt "Initialisierung" zeigt an, daß jeder im NVRAM 31 gespeicherte Umgebungswert zum Wert zur Zeit der Auslieferung zurückgegeben wird.
- Ein zugeladenes Emulationsprogramm wird unmittelbar vor dem Punkt "Initialisierung" registriert.
- Vom Programm, das durch diese Tabelle verwaltet wird, werden alle Daten mit Ausnahme des Zuladeprogramms und Daten in einem Emulationsprogrammspeicher 25a oder 25b gespeichert.
- Eine Verarbeitungssequenz einer auf der Verwaltungstabelle basierende Anwenderschnittstelle wird anhand Fig. 15 beschrieben. Eine Aufbautaste und eine Auswahltaste in der nachfolgenden Beschreibung sind in einer Tastengruppe auf der Bedientafel 30 eingerichtet, und "i" ist eine Zeigervariable, die einen Verwaltungstabellenpunkt darstellt, der dem Arbeitsbereich im RAM 24 zugewiesen ist.
- Wenn die CPU 22 in Schritt S61 eine Tasteneingabe feststellt, bestimmt die CPU in Schritt S62, ob diese Taste eine Aufbautaste ist. Wenn NEIN in Schritt S62, schreitet der Ablauf zu Schritt S63, um die zugehörige Verarbeitung auszuführen. Wenn JA in Schritt S62, schreitet der Ablauf zu Schritt S64, um einen Anfangswert von "0" in der Variablen i zu substituieren. Die Variable i wird in Schritt S65 um Eins inkrementiert. Die CPU 22 bstimmt in Schritt S66, ob der i-te Punkt in der Verwaltungstabelle "EOT" ist. Wenn JA in Schritt S66, stellt die Zeigervariable i das Ende der Tabelle an, so daß die Zeigervariable i aktualisiert wird, um den Kopfpunkt in Schritt S67 darzustellen.
- In jedem Fall wird der i-te Punktename auf der LCD- Anzeigeeinheit angezeigt, die auf der Bedientafel 30 eingerichtet ist, und die CPU 22 wartet in Schritt S69 auf die nächste Tasteneingabe.
- Die CPU 22 bestimmt, daß die Eingabetaste die Aufbautaste ist (Schritt S70), der Ablauf kehrt zu Schritt S65 zurück, um dieselbe schon zuvor beschriebene Verarbeitung auszuführen, wodurch der nächste Punktename angezeigt wird. Bei jeder Betätigung der Aufbautaste wird der nächste Punktename sequentiell auf der LCD-Anzeigeeinheit angezeigt.
- Wenn der Anwender die Aufbautaste mehrere Male betätigt hat, um so zu bestätigen, daß der gewünschte Punktename angezeigt · ist, betätigt der Anwender die Auswahltaste. Wenn die CPU 22 die Betätigung der Auswahltaste feststellt (Schritt S71), schreitet der Ablauf zu Schritt S72, um das Punkteinstellprogramm aufzurufen, das durch die Variable i dargestellt ist. Da jedes Einstellprogramm von jedem Punkt abhängig ist, wird auf eine Beschreibung verzichtet. In jedem Fall setzt der Anwender die Operationen gemäß auf der LCD-Anzeigeeinheit angezeigte Inhalte fort.
- Gemäß dem zuvor beschriebenen dritten Ausführungsbeispiel kann eine gewünschte Emulationsfunktion in passender Weise ohne Abwandlung des Gerätes hinzugefügt werden.
- Ein Betriebsverfahren der Bedientafel ist eingeteilt in einen Bedienabschnitt zum Einstellen der Umgebung, die für das ganze Gerät gemeinsam ist, und einen Bedienabschnitt zum Einstellen der inviduellen Umgebung für jede Emulation. Dieser Zustand kann beibehalten werden, selbst wenn eine neue Emulation zugeladen wird. Mit anderen Worten, der Anwender kann zusätzlich Kenntnisse der Arbeitsweisen des zugeladenen Emulationsprogramms gewinnen, und die integrierte Bedienumgebung kann beibehalten werden, wodurch eine sehr nützliche Anwenderschnittstelle bereitgestellt ist. Vom Gesichtspunkt der Entwicklung eines Emulationsprogramms wird nur ein Programm zum Betreiben der jeweiligen Emulation vorbereitet, wodurch die Entwicklung vereinfacht wird.
- Da das Programm zum Selektieren, ob die Daten von einer Druckersprache geschrieben werden, die von den Druckdaten selbst unterstützt wird, in den zugeladenen Emulationsprogrammsdaten enthalten ist, kann somit die automatische Selektierfunktion direkt ausgeführt werden.
- In den zuvor beschriebenen ersten bis dritten Ausführungsbeispielen erzeugt ein beliebiger Analysator letztlich die gemeinsamen Zwischensprachendaten. Ein Punktraster wird in einem Punktrasterspeicher 28 durch die gemeinsame Entwicklung entwickelt und dann gedruckt.
- In Hinsicht auf neuerliche elektronische Techniken sind die Verarbeitungskapzitäten (Verarbeitungsgeschwindigkeiten) externer Geräte bemerkenswert erhöht worden. Das vierte Ausführungsbeispiel wird eine Anordnung veranschaulichen, bei der die Verarbeitung zur Erzeugung von Zwischensprachendaten durch ein externes Gerät geteilt wird, und das Drucken wird mit einer höhreren Geschwindigkeit ausgeführt.
- Die schematische Anordnung des vierten Ausführungsbeispiels wird anhand Fig. 16 beschrieben.
- Wie in Fig. 16 gezeigt, gibt in einem normalen externen Gerät (d. h., ein externes Gerät 302) ein darin laufendes Anwenderprogramm 304 Druckdaten durch einen Druckertreiber 307 aus. Ein externes Gerät (d. h., ein externes Gerät 301) andererseits als das charakteristische Merkmal des vierten Ausführungsbeispiels besitzt Bauteile (d. h., eine Zwischensprachenbibliothek 13, Schriftskalierer 15a und 15b und Analysatoren 12a und 12b), die zur Erzeugung einer Zwischensprache erforderlich sind. Die Ebene der Druckdaten, ausgegeben von einem Anwenderprogramm 303, ist auf die Ebene der Zwischensprachendaten durch einen Druckertreiber 305 oder 306 herabgesetzt, und die Zwischensprachendaten werden an eine Steuereinheit 101 in einem Bildverarbeitungsgerät abgegeben. Das heißt, die vom Anwenderprogramm 303 ausgegebene Druckersprache wird umgesetzt in die Zwischensprache, die leicht von einer Rasterungseinheitt 14 im Bildverarbeitungsgerät interpretiert werden kann, und die Zwischensprache wird an das Bildverarbeitungsgerät abgegeben.
- Fig. 18 zeigt das Format der vom externen Gerät 301 abgegebenen Zwischensprachendaten. In Fig. 18 ist "1 000" ein nummerischer Wert, der die Gesamtzahl von Bytes der Zwischensprachendaten angibt. Dieser Abschnitt ändert sich abhängig von vorgegebenen Bedingungen. In diesem Falle stellen 1 000 Bytes aus "#> S, 1 000 CR" die Endmarke dar, d. h., "#> EOT" stellt die Zwischensprachendaten dar.
- Die Verarbeitung wird ausgeführt, um zu bestimmen, ob die in einem Pufferbereich 24b gespeicherten Daten Zwischensprachendaten sind. Wenn bestimmt ist, daß die gespeicherten Daten im Eingangspufferbereich 24b keine Daten sind, die die Form einer Zwischensprache haben, wird die Verarbeitung gemäß dem ersten bis dritten Ausführungsbeispiel ausgeführt. Wenn jedoch bestimmt ist, daß die im Pufferbereich 21b gespeicherten Daten in der Form der Zwischensprache sind, wird ein Punktrastermuster auf der Grundlage dieser Zwischensprachendaten in einem Punktrasterspeicher (Seitenspeicher 16) entwickelt und gedruckt.
- Genauer gesagt, der Entscheidungsschritt S81 in Fig. 17 ist unmittelbar vor dem Schritt S6 in Fig. 6 eingefügt (oder unmittelbar vor Schritt S31 in Fig. 9), um die obige Verarbeitung realisieren zu können.
- Nachdem die Eingangsdaten bei der ausgeführten Punktrasterentwicklung als Daten in der Form der Zwischensprache bestimmt sind, und der Ablauf zu Schritt S10 fortgeschritten ist, werden die Zwischensprachendaten so verarbeitet, daß sie nicht in einem Zwischensprachenbereich 24c gespeichert werden, sondern in einem Eingangspufferbereich 24b.
- Nach dem zuvor beschriebenen vierten Ausführungsbeispiel wird das Bildverarbeitungsgerät betrieben, um direkt Zwischenspeicherdaten einzugeben. Das Bildverarbeitungsgerät ist frei von Verarbeitung zum Erzeugen von Zwischenspeicherdaten, wie im ersten bis dritten Ausführungsbeispiel beschrieben, wodurch die Druckgeschwindigkeit erhöht wird. Wenn darüber hinaus ein neues Emulationsprogramm zuzuladen ist, kann ein Speicher erweitert werden. Nach dem vierten Ausführungsbeispiel jedoch wird eine solche Speichererweiterungsmöglichkeit nicht in Betracht gezogen, wodurch ein Gerät mit einer großen Anzahl von Emulationsfunktionen bei niederigen Kosten bereitgestellt wird.
- Externe Geräte geben verschiedene Druckersprachen aus, wie schon beschrieben. Einige Druckersprachen sind für Sätze geeignet; einige für Figuren und einige für Bilder.
- Das fünfte Ausführungsbeispiel stellt eine Anordnung dar, in der ein Bild auf der Grundlage einer Vielzahl von Druckersprachen, d. h., es wird eine Vielzahl von Emulationen auf einer Seite gedruckt.
- Um dies zu verwirklichen, sendet ein externes Gerät aus einem Paar aktueller Druckdaten und einem Emulationsbenennungsbefehl gebildeter Daten, der die Art der Emulationsdaten und die Datenlänge (Größe) darstellt, und letztlich wird ein Papierausgabebefehl zum Drucken von Informationen auf das Papier und zum Ausliefern des Papiers an das Ende gesandter Daten angefügt, wie in Fig. 19 gezeigt.
- Im dargestellten Falle sind Emulationsdaten A Druckdaten, die zum Drucken eines Textes geeignet sind; Emulationsdaten B zum Drucken einer Figur; Emulationsdaten C zum Drucken eines Punktbildes; und Emulationsdaten D zum Drucken einer Figur.
- Das detaillierte Format der Eingangsdaten ist in Fig. 20 gezeigt.
- Wie in Fig. 20 gezeigt, besteht der Emulationsbenennungsbefehl aus einem Namen der Emulation, beginnend mit "#> ", einem Komma, einer Größe und einem neuen Zeilencode. Der Papierausgabebefehl ist "#> EOT".
- Eine Verarbeitungssequenz des Gerätes mit dem zuvor genannten Format ist in Fig. 21 gezeigt und nachstehend beschrieben.
- Wenn die Stromversorgung des Gerätes eingeschaltet ist, wird die Initialisierung wie im ersten Ausführungsbeispiel gestartet. Ein Schritt der Bestimmung, ob der On-Line-Zustand eingestellt ist, das Rückstellen der I/F-Freigabezeit nach Feststellung von Daten im Eingangspufferbereich 24b, und die Verarbeitung bei Abwesenheit der Daten im Eingangspufferbereich sind dieselben wie jene des ersten Ausführungsbeispiels. Operationen von Schritt S95 sind nachstehend beschrieben.
- Im Schritt S95 wird der Kopfabschnitt der nicht verarbeiteten, im Eingangspufferbereich 24b gespeicherten Daten überprüft, um zu bestimmen, ob es sich um einen Emulationsbenennungsbefehl handelt. Wenn JA in Schritt S95, schreitet der Ablauf fort zu Schritt S96, um das benannte Emulationspprogramm (Analysator) zum Erzeugen von Zwischensprachendaten in einer benannten Größe zu veranlassen. Wenn diese Verarbeitung abgeschlossen ist, kehrt der Ablauf zu Schritt S93 zurück, um die nächsten Daten zu verarbeiten. Auf diesem Wege werden die vom Emulationsbenennungsbefehl benannten Zwischensprachendaten erzeugt.
- Wenn bestimmt wird, daß der Kopfabschnitt der Eingangsdaten beim Start eines Druckzyklus oder den Eingangsdaten folgenden Daten, die vom Analysator zur Erzeugung von Zwischensprachendaten verwendet werden, nicht ein Emulationsbenennungsbefehl sind, schreitet der Ablauf fort zu Schritt S97. Die CPU 22 bestimmt, ob diese Daten ein Papierauslieferungsbefehl sind. Wenn NEIN in Schritt S97, schreitet der Ablafu fort zu Schritt S98, um dieselben Operationen wie im ersten bis vierten zuvor beschriebenen Ausführungsbeispielen auszuführen.
- Wenn die Eingangsdaten als Papierlieferungsbefehl bestimmt sind, wird ein Muster auf der Grundlage aller der Zwischensprachendaten im Zwischensprachenbereich 24c im Punktrasterspeicher 28 entwickelt. Die entwickelten Daten werden in Schritt S100 abgegeben.
- Nachdem bei der obigen Verarbeitung Einseiten- Zwischensprachendaten von jedem Analysator (Emulationsprogramm)) erzeugt sind, wird ein Punktrastermuster entwickelt. Immer wenn Zwischensprachendaten von einem Analysator erzeugt werden, wird jedoch die Musterentwicklung ausgeführt. In diesem Falle wird die Musterentwicklung unmittelbar nach Schritt S96 ausgeführt.
- Dies gilt nicht für einen Fall, daß die Msuterentwicklung gleichzeitig beim Erzeugen von Zwischensprachendaten ausgeführt wird. Wenn ein Analysator (Emulationsprogramm) von der Hauptroutine aufgerufen wird, können Zwischensprachendaten durch die benannte Anzahl von Bytes erzeugt werden, und auf eine detaillierte Beschreibung dieser wird verzichtet.
- Da gemäß dem zuvor beschriebenen fünften Ausführungsbeispiel ein Bild auf der Grundlage einer Vielzahl von Druckersprachen zum Erzeugen einer Seite ausgeführt werden kann, wird ein eindrucksvolles Bild gewonnen.
- Wenn ein Befehl hoher Ebene oder ein Benennungsbefehl gesandt wird, wie im fünften Ausführungsbeispiel, kann eine Funktion zu einem OS hinzugefügt werden, der im externen Gerät oder einem Druckertreiber des Gerätes dieses Ausführungsbeispiel beschrieben ist. In einigen Fällen können Druckersprachen für geschaffene Sätze, Figuren und Bilder gemäß einem im externen Gerät laufenden Anwenderprogramm benannt werden. Darüber hinaus wird ein OS in empirischer Form betrieben, um partielle Daten zu synthetisieren, die durch ein Anwenderprogramm zur Bildung von Sätzen benannt sind, ein Anwenderprogramm zur Erzeugung einer Figur und Anwenderprogramm zur Bearbeitung eines von einem Scanner oder dergleichen gelesenen Bildes. Wenn das synthetisierte Bild auszugeben ist, können die Daten unter Verwendung des Formats vom fünften Ausführungsbeispiel aufgebaut und ausgegeben werden.
- Im ersten bis fünften Ausführungsbeispiel ist der Anzahl externer Geräte (301 und 302), der zugehörigen Eingangsschnittstellen (21a und 21b) und der Schriftskalierer (15a und 15b) nicht auf zwei beschränkt, sondern es können drei oder mehr sein. Die Anzahl neulich registrierter Analysatoren 12c und der Schriftskalierer 15c brauchen nicht auf Eins beschränkt zu sein, sondern es können zwei oder mehr sein.
- Die vorliegende Erfindung kann in einem System angewandt werden, das aus einer Vielzahl von Einrichtungen besteht, oder einem Gerät, das aus einer einzigen Einrichtung besteht. Darüber hinaus kann die vorliegende Erfindung durch Anliefern eines Programms an ein System oder ein Gerät realisiert werden.
- Das Bildverarbeitungsgerät eines jeden zuvor beschriebenen Ausführungsbeispiels erläutert einen Laserstrahldrucker. Jedoch ist die vorliegende Erfindung nicht darauf beschränkt. Die vorliegende Erfindung kann ebensogut auf einen später zu beschreibenden Tintenstrahldrucker angewandt werden.
- Fig. 24 ist eine perspektivische Ansicht eines Tintenstrahl- Druckgerätes IJRA, auf das die vorliegende Erfindung angewandt werden kann. Bezüglich Fig. 24 hat ein Schlitten HC, der mit einer schraubenförmigen Rille 5004 und einer Verstellschraubenspindel 5005, die mit der Vorwärts- /Rückwärtsdrehung eines Antriebsmotors 5013 durch Antriebskraft- Übertragungsgetriebe 5011 und 5009 in Eingriff kommt, einen Stift (nicht dargestellt) hat, und in den durch Pfeile a und b angezeigten Richtungen hin- und herbewegt werden kann. Eine Tintenstrahl-Kartusche IJC ist auf dem Schlitten HC befestigt. Eine Papierandruckplatte 5002 drückt das Papier in der Schlittenbewegungsrichtung durch eine Platte 5000 an. Optokoppler 5007 und 5008 sind Ausgangspositions- Festestellmittel, die die Anwesenheit eines Hebels 5006 des Schlittens in diesem Bereich feststellen, um die Drehrichtung des Motors 5013 umzukehren. Ein Glied 5016 trägt ein Kammelement 5022, um die Oberfläche eines Aufzeichnungskopfes abzudecken. Ein Befeuchtungsmittel 5015 zieht die Tinte aus der Kappe, um den Aufzeichnungskopf durch eine Öffnung 5023 in der Kappe zu regenerieren. Eine Reinigungsklinge 5017 wird rück- und vorwärts von einem Glied 5019 bewegt, und die Reinigungsklinge 5017 und das Glied 5019 sind von einer Trägerplatte 5018 des Grundkörpers gehalten. Die Klinge braucht nicht diese Form zu haben, sondern kann ersetzt werden durch eine allgemein bekannte Reinigungsklinge. Ein Hebel 5012 startet die Benetzung, um den Aufzeichnungskopf zu regenerieren. Der Hebel 5012 wird gemeinsam mit der Bewegung eines Kammes 5020 bewegt, der mit dem Schlitten im Eingriff ist. Die Antriebskraft aus dem Antriebsmotor wird durch ein allgemein bekanntes Übertragungsmittel gesteuert, wie beispielsweise durch eine Schaltkupplung.
- Das Verkappen, Reinigen und die Benetzungsregenerierung werden durch gewünschte Prozesse zu jeweiligen Stellen gemäß dem Verhalten der Verstellschraubenspindel 5005 ausgeführt, wenn der Schlitten seine Ausgangsposition erreicht hat. Wenn gewünschte Operationen zu bekannten Zeitvorgaben ausgeführt werden, kann ein beliebiges Schema in diesem Ausführungsbeispiel angewandt werden.
- Eine Steuereinrichtung zum Ausführen der Aufzeichnungssteuerung der jeweiligen Komponenten im Gerät wird anhand des Blockschaltbildes von Fig. 25 beschrieben. Eine Steuerschaltung enthält eine Schnittstelle 1700 zur Eingabe eines Aufzeichnungssignals, eine MPU 1701, einen Programm-ROM 1702 zum Speichern von Steuerprogrammen, die von der MPU 1701 ausgeführt werden, einen dynamischen RAM 1703 zum Speichern verschiedener Daten (d. h., das Aufzeichnungssignal und Aufzeichnungsdaten, die zum Kopf geliefert werden), eine Gate- Array 1704 zum Steuern und Liefern der Aufzeichnungsdaten an einen Aufzeichnungskopf 1708 und zum Ausführen der Übertragungssteuerung der Daten zwischen der Schnittstelle 1700, der MPU 1701 und dem RAM 1703, einen Schlittenmotor 1710 zum Bewegen des Aufzeichnungskopfes 1708, einen Transportmotor 1709 zum Transportieren eines Aufzeichnungsblattes, ein Kopftreiber 1705 zum Ansteuern des Kopfes, und Motortreiber 1706 und 1707 zum Ansteuern des Transportmotors 1709 bzw. des Schlittenmotors 1710.
- Die Arbeitsweise der obigen Steueranordnung ist nachstehend beschrieben. Wenn ein Aufzeichnungssignal zur Schnittstelle 1700 eingegeben wird, wird ein Aufzeichnungssignal in Druckaufzeichnungsdaten zwischen der Gate-Array 1704 und der MPU 1701 umgesetzt. Die Motortreiber 1706 und 1707 werden angesteuert, um den Aufzeichnungskopf gemäß den an den Kopftreiber 1705 gelieferten Aufzeichnungsdaten anzutreiben, wodurch die Aufzeichnungsinformation gedruckt wird.
- Es ist auch möglich, die Bauteile der vorliegenden Erfindung in die Steueranordnung des Tintenstrahldruckers einzubeziehen. Die vorliegende Erfindung ist offensichtlich außer beim Laserstrahldrucker im Tintenstrahldrucker anwendbar.
Claims (14)
1. Bildverarbeitungsgerät, mit:
einem Speicher (24a) zum Speichern eines
Übersetzungsprogramms zum Übersetzen einer Druckersprache und
eines Selektierprogramms zum Herausfinden, ob das
Übersetzungsprogramm eine extern eingegebene Druckersprache
übersetzen kann; und mit
einem Bestimmungsmittel (11), das durch Anwenden des im
Speicher (24a) gespeicherten Selektierprogramms bestimmt, ob das
Übersetzungsprogramm die extern eingegebene Druckersprache
übersetzen kann;
gekennzeichnet durch
Eingabemittel (11) zur Eingabe des Übersetzungsprogramms und
des Selektierprogramms aus der externen Quelle in den Speicher
(24a), wobei das Bestimmungsmittel eingerichtet ist, die
Bestimmung für das eingegebene Übersetzungsprogramm durch
Anwenden der Eingabe und des gespeicherten Selektierprogramms
auszuführen.
2. Gerät nach Anspruch 1, bei dem die Druckersprache aus
Steuerdaten zum Erzeugen eines Bildes aufgebaut ist.
3. Gerät nach Anspruch 1, bei dem das Übersetzungsprogramm ein
Emulationsprogramm ist.
4. Gerät nach Anspruch 1, bei dem das Selektierprogramm von
einem Hauptcomputer eingegeben wird.
5. Gerät nach Anspruch 1, bei dem das Übersetzungsprogramm von
einem Hauptcomputer eingegeben wird.
6. Gerät nach Anspruch 1, bei dem das Bildverarbeitungsgerät
ein Laserstrahldrucker ist.
7. Gerät nach Anspruch 1, bei dem das Bildverarbeitungsgerät
ein Tintenstrahldrucker ist.
8. Gerät nach Anspruch 7, bei dem das Selektierprogramm über
Steuerdaten verfügt, die nur eine Druckersprache betreffen, die
vom Übersetzungsprogramm übersetzt werden kann.
9. Bildverarbeitungsverfahren, mit den Verfahrensschritten:
Speichern eines Übersetzungsprogramms zum Übersetzen einer
Druckersprache und eines Selektierprogramms zum Herausfinden, ob
das Übersetzungsprogramm eine extern eingegebene Druckersprache
übersetzen kann; und
Bestimmen, ob das Übersetzungsprogramm die extern
eingegebene Druckersprache durch Anwenden des gespeicherten
Selektierprogramms übersetzen kann;
gekennzeichnet durch die anfänglichen
Verfahrensschritte der Eingabe des Übersetzungsprogramms und des
Selektierprogramms aus einer externen Quelle zum Speichern,
wobei der Verfahrensschritt des Bestimmens für das eingegebene
Übersetzungsprogramm durch Anwenden des eingegebenen und
gespeicherten Selektierprogramms erfolgt.
10. Verfahren nach Anspruch 9, bei dem die Druckersprache aus
Steuerdaten zum Erzeugen eines Bildes dargestellt ist.
11. Verfahren nach Anspruch 9, bei dem das Übersetzungsprogramm
ein Emulationsprogramm ist.
12. Verfahren nach Anspruch 9, bei dem das Selektierprogramm von
einem Hauptcomputer eingegeben wird.
13. Verfahren nach Anspruch 9, bei dem ein Hauptcomputer das
Übersetzungsprogramm eingibt.
14. Verfahren nach Anspruch 9, bei dem das Selektierprogramm
Steuerdaten enthält, die allein für eine vom
Übersetzungsprogramm übersetzbare Druckersprache bereitstehen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4125136A JP2860204B2 (ja) | 1992-05-18 | 1992-05-18 | 出力装置及び当該装置における解釈プログラムの選択方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69322199D1 DE69322199D1 (de) | 1999-01-07 |
DE69322199T2 true DE69322199T2 (de) | 1999-05-20 |
Family
ID=14902756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69322199T Expired - Lifetime DE69322199T2 (de) | 1992-05-18 | 1993-05-17 | Vorrichtung und Verfahren für die Übersetzung von Druckersprachen |
Country Status (4)
Country | Link |
---|---|
US (1) | US5671341A (de) |
EP (1) | EP0571168B1 (de) |
JP (1) | JP2860204B2 (de) |
DE (1) | DE69322199T2 (de) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3919238B2 (ja) * | 1994-05-31 | 2007-05-23 | キヤノン株式会社 | 印刷システムおよび印刷システムの印刷制御方法および印刷制御装置 |
JPH09261457A (ja) | 1996-03-19 | 1997-10-03 | Canon Inc | 印刷制御装置並びに印刷制御装置のデータ処理方法およびコンピュータで読み出し可能なプログラムを格納した記憶媒体 |
US5877776A (en) * | 1996-04-26 | 1999-03-02 | Apple Computer, Inc. | Method and system for supporting multiple font formats by a font scaler sub-system |
DE29612159U1 (de) * | 1996-07-12 | 1996-08-29 | MAN Roland Druckmaschinen AG, 63075 Offenbach | Einrichtung zur schnellen Schaffung eines Fortdruckzustandes eines Druckwerkes |
US6870633B1 (en) * | 1996-09-30 | 2005-03-22 | Brother Kogyo Kabushiki Kaisha | Printing device |
US6097496A (en) * | 1997-04-21 | 2000-08-01 | Hewlett-Packard Company | Integrated display list and building tool for multiple personalities |
US6954278B1 (en) * | 1998-02-13 | 2005-10-11 | Lexmark International, Inc. | Dynamic printer operating system |
US6525831B1 (en) * | 1998-12-02 | 2003-02-25 | Xerox Corporation | Non-format violating PDL guessing technique to determine the page description language in which a print job is written |
JP3763343B2 (ja) * | 1999-07-22 | 2006-04-05 | セイコーエプソン株式会社 | プリンタ装置、データ処理装置、プリンタシステム、印刷方法、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体 |
JP2002132818A (ja) * | 2000-10-26 | 2002-05-10 | Seiko Epson Corp | サービス提供システム、サービス提供端末、クライアント端末及び記憶媒体 |
US6647437B2 (en) | 2001-05-15 | 2003-11-11 | Lexmark International, Inc. | Method for automatically detecting and processing binary postscript print jobs |
US7933048B2 (en) * | 2005-01-31 | 2011-04-26 | Canon Kabushiki Kaisha | Image reading apparatus, server apparatus, and image processing system |
US8005705B2 (en) * | 2006-09-07 | 2011-08-23 | International Business Machines Corporation | Validating a baseline of a project |
JP2009241524A (ja) * | 2008-03-31 | 2009-10-22 | Brother Ind Ltd | 画像出力装置 |
JP2008238827A (ja) * | 2008-06-09 | 2008-10-09 | Seiko Epson Corp | プリンタおよびこのプリンタを用いた印刷方法 |
JP2008265350A (ja) * | 2008-06-27 | 2008-11-06 | Seiko Epson Corp | インクジェットプリンタ |
JP2008247041A (ja) * | 2008-07-03 | 2008-10-16 | Seiko Epson Corp | プリンタおよびこのプリンタを用いた印刷方法 |
JP2008260304A (ja) * | 2008-07-03 | 2008-10-30 | Seiko Epson Corp | プリンタおよびこのプリンタを用いた印刷方法 |
JP6187077B2 (ja) * | 2013-09-18 | 2017-08-30 | セイコーエプソン株式会社 | 印刷装置、制御システム、及び制御方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH085213B2 (ja) * | 1987-03-04 | 1996-01-24 | ブラザー工業株式会社 | 印字装置 |
JPS63231957A (ja) * | 1987-03-20 | 1988-09-28 | Minolta Camera Co Ltd | プリンタ制御装置 |
US4992957A (en) * | 1988-03-17 | 1991-02-12 | Seiko Epson Corporation | Printer and method for utilizing character codes and control codes within a printer |
US5075874A (en) * | 1989-04-10 | 1991-12-24 | Eastman Kodak Company | Communications interface for computer output printer |
US5050098A (en) * | 1989-08-25 | 1991-09-17 | Lexmark International, Inc. | Printer initialization system |
US5303336A (en) * | 1990-05-14 | 1994-04-12 | Hitachi, Ltd. | Printing system including print server |
US5293466A (en) * | 1990-08-03 | 1994-03-08 | Qms, Inc. | Method and apparatus for selecting interpreter for printer command language based upon sample of print job transmitted to printer |
US5165014A (en) * | 1990-09-12 | 1992-11-17 | Hewlett-Packard Company | Method and system for matching the software command language of a computer with the printer language of a printer |
-
1992
- 1992-05-18 JP JP4125136A patent/JP2860204B2/ja not_active Expired - Fee Related
-
1993
- 1993-05-17 DE DE69322199T patent/DE69322199T2/de not_active Expired - Lifetime
- 1993-05-17 EP EP93303809A patent/EP0571168B1/de not_active Expired - Lifetime
- 1993-05-17 US US08/061,740 patent/US5671341A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2860204B2 (ja) | 1999-02-24 |
EP0571168A1 (de) | 1993-11-24 |
JPH05318840A (ja) | 1993-12-03 |
DE69322199D1 (de) | 1999-01-07 |
US5671341A (en) | 1997-09-23 |
EP0571168B1 (de) | 1998-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69322199T2 (de) | Vorrichtung und Verfahren für die Übersetzung von Druckersprachen | |
DE69317698T2 (de) | Verfahren zum Übersetzen eines Vielzahl von Drucker-Seiten-beschreibende Sprachen | |
DE69226736T2 (de) | Druckersystem, in dem ein von Druckertreibern die Druckerdaten gesendet werden, ein Datenprozessor zu einem Drucker ausgewählt wird basierend auf Interpretierern, welche in dem Drucker vorhanden sind | |
DE69025005T2 (de) | Seitendruckerspeicherzuweisung | |
DE69024881T2 (de) | Drucker-Initialisierungssystem | |
DE69528210T2 (de) | Drucker-Steuerungssystem, das Dokumente des Kopierertyps behandelt | |
DE3820075A1 (de) | Verfahren zum gesteuerten reproduzieren von bildern in bitplangesteuerten laserprintern | |
DE3723276A1 (de) | Steuergeraet fuer printer | |
DE69329477T2 (de) | Ausgabeverfahren und -gerät | |
DE69625986T2 (de) | System, Ausgabegerät, Verfahren, und rechnerlesbares Medium, die zum Steuern eines Druckers einen gespaltenen Druckertreiber verwenden | |
DE69327684T2 (de) | Verfahren und Vorrichtung zur Schriftzeichenmustererzeugung | |
DE3441640A1 (de) | Streifenfeldspeichercontroller | |
DE69326713T2 (de) | Vorrichtung zur Übersetzung von Druckersteurungssprachen | |
DE19514799A1 (de) | Druckvorrichtung, Drucksteuerverfahren und Zeichenfontmustersteuerverfahren in einer Druckvorrichtung | |
DE69329360T2 (de) | Datenverarbeitungsgerät und Ausgabegerät | |
DE68923668T2 (de) | Ausgabegerät. | |
DE4005673A1 (de) | Bilderzeugende einrichtung mit einem kleindimensionierten speicher mit einem bitkarten-zuweisungssystem | |
DE69523831T2 (de) | Auf Anfrage gesteuerter Formularedrucker | |
DE69431857T2 (de) | Ausgabeverfahren und -gerät | |
DE69011393T2 (de) | Druckvorrichtung. | |
DE69634653T2 (de) | Abbildungsausgabegerät und entspechendes Steuerverfahren | |
DE69124185T2 (de) | Ausgabeverfahren und Gerät | |
DE69731343T2 (de) | Bilderzeugungsgerät-Computer Schnittstellensystem | |
DE10105953A1 (de) | Direktes Drucken von verkapseltem PDF | |
DE69113530T2 (de) | Elektronische Kopie-/Druck-Geräte. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |