DE2548719C3 - Drucker mit Pufferspeicher - Google Patents

Drucker mit Pufferspeicher

Info

Publication number
DE2548719C3
DE2548719C3 DE2548719A DE2548719A DE2548719C3 DE 2548719 C3 DE2548719 C3 DE 2548719C3 DE 2548719 A DE2548719 A DE 2548719A DE 2548719 A DE2548719 A DE 2548719A DE 2548719 C3 DE2548719 C3 DE 2548719C3
Authority
DE
Germany
Prior art keywords
line
buffer
page
character
format control
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
Application number
DE2548719A
Other languages
English (en)
Other versions
DE2548719B2 (de
DE2548719A1 (de
Inventor
Gerald Ivan Morgen Hill Calif. Findley
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2548719A1 publication Critical patent/DE2548719A1/de
Publication of DE2548719B2 publication Critical patent/DE2548719B2/de
Application granted granted Critical
Publication of DE2548719C3 publication Critical patent/DE2548719C3/de
Expired legal-status Critical Current

Links

Classifications

    • 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
    • G06K15/12Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by photographic printing, e.g. by laser printers
    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Optics & Photonics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Record Information Processing For Printing (AREA)
  • Dot-Matrix Printers And Others (AREA)
  • Laser Beam Printer (AREA)
  • Combination Of More Than One Step In Electrophotography (AREA)
  • Fax Reproducing Arrangements (AREA)

Description

Die Erfindung betrifft einen Drucker nach dem Oberbegriff des Anspruchs 1.
Drucker, die aufgrund in binärer Form codierter Zeichendaten graphische Zeichen drucken, fanden weite Verbreitung in Datenverarbeitungsoperationen und -systemen. Solche Drucker sprechen auf die codierten Zeichendaten an und drucken die durch die Zeichendaten nach Definition ihres Codes dargestellten graphischen Zeichen.
Ein derartiger Zeichendt ucker ist z. B. in der DE-OS 25 767 prinzipiell beschrieben. Bei diesem Drucker ist jedem zu druckenden Zeichen ein graphisches Codebyte zugeordnet. Diese Codebytes werden in einem Pufferspeicher zu Zeilen zusammengesetzt und sequentiell synchron mit der Abtastung des Laserstrahls ausgelesen, wobei ein dem adressierten graphischen Codebyte entsprechendes Zeichenbildbit oder ein Satz von Zeichenbildbits aus einem Zeichengenerator ausge
wählt wird.
Aus der DE-AS 12 05 744 ist es außerdem bekannt, bei der rasterförmigen Erzeugung von Schriftzeichen die Zeichengröße, d.h., sowohl die Zeichenbreite als auch die Zeichenhöhe zu verändern. Bei diesem Drucker wird dazu ein sogenanntes Zeichenhöhenbit, das dem Drucker mitgeteilt wird, ausgewertet, um über einen Abtastzähler die Anzahl der Rasterabtastungen zu bestimmen, die beim Drucken für die gewünschte
ίο Zeichenabmessung benötigt werden. Dieser Drucker hat wieder den Nachteil, daß es nicht möglich ist, in ein auszudruckendes Textbild Leerzeilen variabler Höhe einzuschieben.
Der Erfindung liegt die Aufgabe zugrunde, einen Zeilendrucker der genannten Art zu schaffen, bei dem mit einfacher Digitalschaltungstechnik auch die Leerzeilenhöhe gewählt werden kann und bei dem es möglich ist, Leerzeilen mit variabler Höhe in ein gewünschtes Druckbild einzuschieben.
Die erfindungsgemäße Lösung ergibt sich aus dem Kennzeichen des Patentanspruchs 1.
Die vorliegende Erfindung ermöglicht den Einschub von Leerzeilen in einem gepufferten Drucker durch Benutzung eines Formatsteuerpuffers, der mehrere Formatsteuerbytes speichert, von denen jedes einer anderen Zeile einer zum Drucken aufbereiteten Seite entspricht. Die Seite wird in einem Seitenpuffer aufbereitet, in dem codierte Zeichendaten zeilenweise wie empfangen gespeichert werden. Jedes Formatsteuerbyte enthält 1 Bit, welches die Höhe der Zeichen in einer entsprechenden Zeile im Seitenpuffer angibt Die Formatsteuerbytes bezeichnen auch Kanalzahlen für nachfolgende Referenzzwecke durch Kanal-Kommandowörter, die von einer Datenverarbeitungseinheit übertragen wurden, an die der Drucker schließlich gekoppelt ist. Die Formatsteuerbytes werden selbst an den Drucker übertragen und in dem Formatsteuerpuffer durch Kanal-Kommandowörter von der Datenverarbeitungseinheit ebenso gespeichert wie die codierten Zeichenbytes, die die zu druckenden Zeichen darstellen. Ein zum Formatsteuerpuffer gehörendes Adreßregister kann zwischen den verschiedenen Speicherstellen des Formatpufferspeichers erhöht werden, um ein bestimmtes dort gespeichertes Formatsteuerbyte zu adressieren und dorthin zu springen oder über eine ausgewählte Anzahl von Formatsteuerbytes hinwegzulaufen aufgrund von Befehlen vom Kanal-Kommando.
Die im Seitenpuffer zusammengesetzten Daten werden zeilenweise in einen Zeilenpuffer innerhalb
so eines Zeichengenerators geladen, wo der Inhalt des Zeilenpuffers und das entsprechende Formatsteuerbyte im Formatsteuerpuffer untersucht werden. Der Zeichengenerator spricht auf jedes Zeichenbyte im Zeilenpuffer an durch Auswahl einer entsprechenden Gruppe von Zeichenbildbits, die die zum Drucken des gewünschten Zeichens auf einem für einen Laserstrahl empfindlichen bedruckbaren Medium erforderliche Modulation eines abtastenden Laserstrahles definieren. Das System druckt auf dem Medium zeilenweise, indem es eine Folge von Abtastungen auf dem druckbaren Medium vornimmt und den Laserstrahl entsprechend den verschiedenen Sätzen von Zeichenbildbits moduliert, die durch die Daten im Zeilenpuffer ausgewählt wurden. Vor dem Drucken einer jeden Zeile wird das entsprechende Formatsteuerbyte im Formatsteuerpuffer untersucht, um die gewünschte Zeichenhöhe der eile festzustellen. Mit dieser Information bestimmt ein Abtastzähler die Anzahl von Abtastungen des Laser-
Strahles, die beim Drucken der Zeile zu benutzen ist. Wenn die größte Zeichenhöhe gewählt ist, wird beim Drucken der Zeile die größte Anzahl von Abtastungen pro Zeile benutzt Wenn eine darunterliegende Zeichenhöhe vorgeschrieben ist, werden ausgewählte Abtastungen am Anfang und am Ende der Abtastfolge für die betreffende Zeile gelöscht
Leerzeilen werden in die Seite bei ihrem Aufbau im Seitenpuffer durch Kanal-Kommandowörter eingeschoben, deren Befehle durch die Kanalzahi oder die Abstandszahl die nächste in den Seitenpuffer bei Beendigung der Eintragung einer jeden Zeile in den Seitenpuffer einzugebende Zeile vorschreiben. Wenn das Kanal-Kommando die nächste zu druckende Zeile durch ein bestimmtes. Formatsteuerbyte vorschreibt, reagiert das System durch Erhöhung des Adreßregisterinhaltes so, daß zu einer Stelle gesprungen wird, wo das Adreßregister dasjenige Formatsteuerbyte adressiert, das die gewählte Kanalzahl definiert Andererseits schreibt das Kanal-Kommando vor, wie oft der Inhalt :o des Adreßregisters zu erhöhen ist, bevor die nächste zu druckende Zeile eingegeben wird. Bei jeder solchen Erhöhung des Adreßregisterinhaltes wird ein besonders codiertes Byte in den Seitenpuffer eingegeben, um das Vorhandensein einer Leerzeile anzuzeigen. Jede Zeile vom Seitenpuffer wird untersucht, während sie in den Zeilenpuffer des Druckers eingegeben wird. Wenn ein besonders codiertes Byte erkannt wird, wird eine zu dem Zeilenpuffer gehörende Verriegelung verriegelt und der Drucker momentan gesperrt, so daß eine Zeile vorgeschriebener oder gewünschter Höhe auf dem bedruckbaren Medium leergelassen wird.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher beschrieben. Es zeigt
F i g. 1 in einem Blockdiagramm einen Teil eines Druckers,
F i g. 2 in einem Blockdiagramm einen weiteren Teil des Druckers und
F i g. 3 den Formatsteuerpuffer und die zugehörigen Bauteile und die Art und Weise, in der das Drucken von Leerzeilen erleichtert wird.
Ausgewählte Teile der Befehlsausführungseinheit und des Zeichengenerators sind in F i g. 1 dargestellt. Zur Befehlsausführungseinheit gehört ein beschreibbarer Steuerspeicherbereich für die meisten der in F i g. 1 gezeigten verschiedenen Bestandteile, die im schreibbaren Steuerspeicherbereich aufgebaut werden mit Daten und Befehlen, din über den Hauptkanal 14 von der Datenverarbeitungseinheit mitgeteilt wurden.
Zu druckende Zeichen darstellende Daten werden durch die Datenverarbeitungseinheit übermittelt und am Anfang in der Befehlsausführungseinheit in Form einer Folge von acht Bit großen Zeichencodebytes gespeichert, von denen jedes Byte ein zu druckendes Zeichen darstellt. Gemäß Darstellung in F i g. 1 werden diese acht Bit großen Zeichencodebytes, die den Benutzer-Druckdatenteil der Kanal-Kommandowörter umfassen, die in der Datenverarbeitungseinheit erzeugt und in den Hauptkanal 14 geleitet werden, über den Ursprungskanal 20 in einen Zwischenpuffer 70 gelenkt. Das Kanal-Kommandowort enthält auch einen Kommandocode, den der Drucker 12 ausführen muß, Kennzeichen, die die Ausführung des Kanal-Kommandowortes durch den Hauptkanal 14 steuern und ein Datenlängenfeld, welches die Anzahl von in der Druckzelle zu druckenden Zeichen angibt, wobei dieses Feld aus den verschiedenen acht Bit großen Zeichencodebytes in den Benutzerdruckerdaten besteht und an den Zwischenpuffer 70 übermittelt wird.
Im Zwischenpuffer 70 werden bis zu 204 Zeichencodebytes zu einer Druckzeile zusammengesetzt 204 Zeichen stellen die maximale Breite einer Druckzeile für Papier einer gegebenen Breite im Bildgerät 26 dar. Die acht Bit großen Zeichencodes verwenden Hexadezimalcodierung zur Datenverdichtung und sind im bekannten EBCDIC-Code codiert Die ESCD/C-Codierung der Bytes definiert diejenigen Zeichen, die die verschiedenen Bytes darstellen. Die verschiedenen Zeichencodebytes, die im Zwischenpuffer 70 gespeichert sind, werden an eine Obersetzungstabelle 72 geleitet, wo sie einzeln in entsprechende graphische Codebytes unter Verwendung des vorgegebenen Codes oder Algorithmus der Übersetzungstabelle 72 übersetzt werden. Der vorbestimmte Code oder Algorithmus der Übersetzungstabelle 72 wird implementiert durch Addition eines jeden Zeichencodebyte zu einer Anfangsadresse für die Tabelle 72 und Verwendung der resultierenden Summe als Adresse für das entsprechend graphische Codebyte, das in einer der verschiedenen Speicherstellen in der Übersetzungstabelle gespeichert ist. Die Übersetzungstabelle 72 kann bis zu 256 graphische Codebytes speichern und hat eine Position für alle möglichen Zeichencodes, die von der Datenverarbeitungseinheit kommen können. Jedes graphische Codebyte enthält die Adresse eines Satzes von Zeichenbildbits, die in einem von vier verschiedenen beschreibbaren Zeichengenerator-Moduln 74 im Zeichengenerator gespeichert sind. Nach Darstellung in F i g. 1 enthält jedes acht Bit große graphische Codebyte von der Übersetzungstabelle 72 ein erstes zwei Bit großes Feld zur Bezeichnung eines bestimmten Zeichengenerator-Moduls 74 und ein zweites sechs Bit großes Feld zur Bezeichnung einer von 64 verschiedenen Speicherstellen im gewählten Zeichengenerator-Modul. Wenn durch ein graphisches Codebyte eine Speicherstelle in einem der beschreibbaren Zeichengenerator-Moduln 74 gewählt wird, dann wird der an dieser Stelle gespeicherte Satz von Zeichenbildbits durch das Bildgerät 26 zum Drucken eines Zeichens benutzt.
Die graphischen Codebytes von der Übersetzungstabelle 72 werden als nächstes in der Länge verdichtet mit dem Verdichtungsalgorithmus 76, wie sie in einen Seitenpuffer 78 zur Speicherung eingegeben werden.
Im vorliegenden Beispiel erfolgt eine Verdichtung, wenn identische Zeichen aufeinanderfolgen, die mehr als eine bestimmte Anzahl der Zeichen enthalten. Die resultierende im Seitenpuffer 78 gespeicherte Information umfaßt ein erstes Byte, welches das Vorliegen einer Verdichtung bezeichnet, ein zweites Byte, welches die Anzahl der verdichteten Zeichen angibt, und ein drittes Byte, welches das verdichtete Zeichen ist.
Der Seitenpuffer 78 setzt die verdichteten graphischen Codebytes weiter zu Seiten zusammen, bis er voll ist. Während der Seitenpuffer 78 nur wenigstens eine komplette Seite speichern können muß, hat er gemäß Darstellung in F i g. 1 genug Speicherplatz zum Speichern mehrerer Seiten.
Die Kanal-Kommandowörter von der Datenverarbeitungseinheit enthalten bestimmte Modifizierbits, die das vertikale Format einer jeden Seite steuern. Der Abstand zwischen einzelnen Zeilen und die Höhe der Zeichen in jeder Zeile werden durch einen Formatsteuerpuffer 79 in Verbindung mit einem zugehörigen Adreßregister 80 geliefert. Der Formatsteuerpuffer 79 wird durch ein Kanal-Kommando vom Hauptkanal 14
geladen. Für jede Zeile in einer Seite wird im Formatsteuerpuffer ein anderes Formatsteuerbyte gespeichert. Das Adreßregister adressiert die verschiedenen Formatsteuerbytes. Ein Bit eines jeden Formatsteuerbytes definiert die Höhe der entsprechenden Zeile und wird in den Zeichengenerator eingegeben, um die Anzahl von bein" Druck der Zeile benutzten Abtastzeilen zu wählen. Andere Bits in jedem Formatsteuerbyte definieren eine Kanalzahl. Ein Kanal-Kommandowort definiert in eine Seite einzuschiebende Leerzeilen durch Angabe der Zahl von zu überspringenden Kanälen oder der Zahl leerzulassender Zeilen. Jedesmal wenn der Inhalt des Adreßregisters 80 beim Sprung zur gewünschten Kanalzahl oder beim Einschieben der vorgeschriebenen Zahl von Leerzeilen im Formatsteuerpuffer 79 erhöht wird, wird ein Spezialcode hexadezimal FE (11111110) in den Seitenpuffer 78 eingegeben. Wenn die Seite durch den Zeichengenerator gedruckt wird, läuft der Zeichengenerator bei jedem derartigen Spezialcode kurzzeitig leer, so daß auf der gedruckten Seite eine Leerzeile entsteht. Die Arbeitsweise des Formatsteuerpuffers 79 und des Adreßregisters 80 werden später noch genauer beschrieben.
Die im Seitenpuffer 78 zu Seiten zusammengesetzten verdichteten graphischen Codebytes werden beim Verlassen des Seitenpuffers 78 wieder in die unverdichtete Form zurückversetzt durch einen Algorithmus 81, der die Umkehrung des Verdichtungsalgorithmus 76 darstellt, bevor die Bytes zusammen mit Daten von einem Modifizierungsdatenpuffer 82 auf eine von zwei Zeilenpuffern 83, 84 im Zeichengenerator geleitet werden. Der Algorithmus 81 stellt die Originalform eines jeden graphischen Codebyte wieder her, die es am Ausgang der Übersetzungstabelle 72 annimmt. Der Modifikationsdatenpuffer 82 speichert Daten für kleinere Änderungen zwischen den Kopien, wenn mehrere Kopien derselben Seite zu drucken sind. Dadurch wird vermieden, daß eine vollständige Seite im Seitenpuffer 78 zusammengesetzt werden muß, die sich nur geringfügig von einer vorher gedruckten Kopie unterscheidet.
Die erste von fünf verschiedenen Arten von Kanal-Kommandos trägt die Bezeichnung »Formatkommandos«. Die Formatkommandos steuern das vertikale Format einer Seite über den Formatsteuerpuffer 79, der Steuerinformation für den vertikalen Zeilenabstand enthält und mit Vorschriften vor einer Datenübertragung von der Datenverarbeitungseinheit an den Seitenpuffer 78 geladen wird. Wenn Daten in den Seitenpuffer 78 übertragen werden, wird der Inhalt des Formatsteuerpuffers 79 analysiert und bei Bedarf werden Leerzeilen in den Seitenpuffer 78 gesetzt Wenn festgestellt wird, daß eine vollständige Seite zum Drucken bereit ist wird die Seite zum Auslesen an den Zeichengenerator bereitgemacht und das nächste Format im Seitenpuffer 78 so eingestellt daß es einer kompletten Seite folgt
Der Formatsteuerpuffer 79 umfaßt 96 Speicherpositionen von je einem Byte, von denen jede einer wirklichen Zeile entspricht Ein Bit in jedem Byte bestimmt ob der vertikale Abstand sechs Zeilen pro 2£4 cm oder acht Zeilen pro 2,54 cm betragen soll. Nachdem der Formatsteuerpuffer 79 geladen ist erfolgen Abstands- und Sprungoperationen durch Leerzeileneinschub (1 Byte für jede Zeile) in den Seitenpuffer 78. Der Zeichengenerator spricht auf jedes derartiges Byte an durch Erzeugen einer unbedruckten Leerzeile auf der Seite.
Der in F i g. 1 gezeigte Formatsteuerpuffer 79 ist über eine vertikale Zeilenabstandsverriegelung 164 oder 166 und einen Startwertdecodierer 160 mit dem Abtastzeilenwahlzähler 148 gekoppelt. Die Verriegelungen 164 ι und 166 sind entsprechend mit den Zeilenpuffern 83 und 84 verbunden. Die Ausgabe des Abtastzeilenwahlzählers 148 ist nicht nur gemäß der Beschreibung in Verbindung mit F i g. 2 mit den beschreibbaren Zeichengeneratormoduln 74 sondern auch mit einem Endwertdecodierer 162 verbunden, der mit den vertikalen Zeilenabstandsverriegelungen 164 oder 166 gekoppelt ist. Der Abtastzeilenwahlzähler 148 registriert der Reihe nach jede Abtastung beim Drucken einer jeden Zeile und steuert dadurch die Vorschaltung der entsprechenden Zeichenbildbits aus den beschreibbaren Zeichengeneratormoduln 74 zur Modulation des Laserstrahles bei den verschiedenen Abtastungen. Während jede Zeile in einem der Zeilenpuffer 83,84 zum Drucken bereitgemacht wird, wird das vertikale Abstandsbit im entsprechenden Formatsteuerbyte im Formatsteuerpuffer 79 abgefühlt und in diejenige vertikale Zeilenabstandsverriegelung 164 oder 166 gesetzt, die mit dem Startwertdecodierer 160 und dem Endwertdecodierer 162 gekoppelt ist. Wenn das vertikale Abstandsbit angibt, daß die Zeile die größte Höhe haben soll, so daß alle 24 Abtastungen benutzt und sechs Zeilen pro 2,54 cm gedruckt werden, reagiert der Startwertdecodierer 160 mit einer Anzeige an den Abtastzeilenwahlzähler 148 so, daß der Zähler 148 mit der ersten
in Abtastung beginnt.
Die Verriegelung 164, 166, die mit dem jeweiligen Zeilenpuffer 83, 84, von dem die Daten zugeführt werden sollen, gekoppelt ist, wird zurückgestellt gelassen und zeigt dadurch an, daß der vertikale
v, Zeilenabstand sechs Zeilen pro 2,54 cm beträgt. Der Endwertdecodierer 162 reagiert auf das vertikale Abstandsbit, welches die größte Zeichenhöhe von sechs Zeilen pro 2,54 cm anzeigt, durch die Feststellung, daß die 24ste Abtastung die letzte Abtastung der zu druckenden Zeile sein soll. Danach beginnt der Abtastzeilenwahlzähler 148 mit dem Druck der Zeile, indem er die der ersten Abtastung eines jeden Zeichens entsprechenden Bits über das Ausgabedatenregister 144 und den neun Bit großen Parallel/Serien-Wandler 146
j-, zum Modulator 136 ausleiten läßt Wenn der Zeichengenerator die 24ste Abtastung erreicht stellt der Endwertdecodierer 162 durch die Ausgabe des Abtastzeilen wahlzählers 148 fest daß keine weiteren Abtastungen für diese Zeilen mehr durchzuführen ist Ein
-,ο Zeilenendsignal am Ausgang des Endwertdecodierers 162 wird an die Steuerelektronik 102 angelegt um sicherzustellen, daß keine weiteren Abtastungen dieses Zeiienpuffers erfolgen. An diesem Punkt ist das Drucken der Zeile beendet Der nächste Zeilenpuffer 83
v-, oder 84 wird gewählt und der Abtastzeiienwahlzählet 148 auf den durch die vertikale Zeilenabstandsverriegelung 164 oder 166, die zu dem verwendeten Zeilenpuffei gehört angegebenen Startwert eingestellt und dei Prozeß wird wiederholt Der Startwertdecodierer 16C
hi ι reagiert auf die zum verwendeten Zeilenpuffer gehörende vertikale Abstandsverriegelung 164 bzw. 166 unc bestimmt welche die erste Abtastung ist und dei Endwertdecodierer 162 reagiert in ähnlicher Weise unc bestimmt welche die letzte Abtastung ist
Wenn das vertikale Abstandsbit im Formatsteuerpuf fer 79 angibt daß die Zeichenhöhe auf acht Zeilen prc 2,54 cm zu reduzieren ist anstatt sechs Zeilen pr< 2^54 cm, reagieren der Startwertdecodierer 160 und dei
Endwertdecodierer 162 durch Wahl eines Mittelteiles der 24 Abtastungen so, daß ausgewählte Abtastungen am Anfang und am Ende der Abtastfolge gelöscht werden. Im vorliegenden Beispiel werden die Zeichen in einer solchen Zeile durch Drucken von nur 18 der 24 möglichen Abtastungen beschnitten. Die ersten vier und die letzten zwei Abtastungen der Folge von 2A Abtastungen werden gelöscht. Der Startwertdecodierer 160 liefert an den Abtastzeilenwahlzähler 148 eine Anzeige dafür, daß das Drucken der Zeile mit der fünften Abtastung beginnen soll. Der Abtastzeilenwahlzähler 148 reagiert durch Ausleiten der der fünften Abtastung der verschiedenen Zeichen entsprechenden Bits in einem der gelesenen Zeilenpuffer 83, 84 aus den beschreibbaren Zeichengeneratormoduln 74 in das Ausgabedatenregister 144, den neun Bit großen Parallel/Serien-Wandler 146 und schließlich den Modulator 136. Das System läuft durch die verschiedenen Abtastungen weiter, bis die 22ste Abtastung erreicht ist. An diesem Punkt veranlaßt die resultierende Ausgabe aus dem Abtastzeilenwahlzähler 148 den Endwertdecodierer 162 zur Abgabe eines Signals an die Steuerelektronik 102, wodurch der Druck der 23sten und 24sten Abtastung der Zeichenzeile verhindert wird.
Es ist also die Höhe einer Zeichenzeile einer gegebenen Seite bei deren Zusammensetzung im Seitenpuffer 78 unabhängig von der Zeichenhöhe anderer Zeilen in der Seite und wird bestimmt durch das vertikale Abstandsbit des Formatsteuerbytes im Formatsteuerpuffer 79 entsprechend der jeweiligen Zeile. Daher kann man auch Zeilenhöhen innerhalb einer gegebenen Seite mischen. Am Anfang einer jeden neuen Zeile druckt der Drucker die Zeile in der Höhe, die durch das entsprechende vertikale Abstandsbit im Formatsteuerpuffer 79 angegeben ist und ohne Rücksicht auf die Höhen vorhergehender oder nachfolgender Zeilen in der Seite.
Sobald das einer unmittelbar anschließend zu druckenden Zeile entsprechende vertikale Abstandsbit anzeigt, daß die niedrigere Zeichenhöhe äquivalent acht Zeilen pro 2,54 cm zu benutzen ist, wird die Verriegelung 164 bzw. 166 für den vertikalen Zeilenabsiand. die zu dem Puffer 83 bzw. 84 gehört, der die zu druckende Zeile enthält, vom zurückgestellten in den eingeschalteten Zustand umgeschaltet und damit angezeigt, daß die niedrigere Zeilenhöhe benutzt wird.
Die in der Datenverarbeitungseinheit entstehenden Formatsteuerbytes werden über den Hauptkanal 14 übertragen und im Formatsteuerpuffer 79 gespeichert, bevor die Zeichencodebytes über dem Hauptkanal 14 übertragen und im Zwischenpuffer 70 gespeichert werden. Die Formatsteuerbytes für die verschiedenen Zeilen sind also bereits im Formatsteuerpuffer 79 gespeichert, wenn die verschiedenen Zeilen vom Zwischenpuffer 70 in den Seitenpuffer 78 geladen werden. Jedes Formatsteuerbyte enthält vier Bits, die eine die jeweilige Speicherstelle im Formatsteuerpuffer 79 darstellende Kanalzahl definieren. Die Kanal-Kommandowörter vom Hauptkanal 14, die die Formatierung einer Seite im Seitenpuffer 78 steuern, sorgen auch für die Bildung von Leerzeilen über den Formatsteuerpuffer 79 und das Adreßregister 80, indem sie die zu erreichende gewünschte Kanalzahl im Formatsteuerpuffer 79 oder die Anzahl von vorzuschaltenden Zeilen durch Erhöhung des Inhaltes des Adreßregisters 80 definieren. Der Inhalt des Registers 80 wird erhöht, bis die vorgeschriebene Kanalzahl im Formatsteuerpuffer 79 durch das Adreßregister 80 adressiert wird oder die
Anzahl von vorzuschaltenden Zeilen geschaltet wurde. Eine Leerzeilen-Codebezeichnung hexadezimal FFwird in den Seitenpuffer 78 jedesmal gesetzt, wenn der Inhalt des Adreßregisters 80 erhöht wird. Durch Vorgabe der zu druckenden Zeilenlagen in einer Seite über die Kanalzahl innerhalb des Formatsteuerpuffers 79 oder eine Anzahl von vorzuschaltenden Zeilen wird also das Leerzeilensymbol in den Seitenpuffer 78 eingegeben für jede Erhöhung des Inhaltes des Registers 80 zwischen den zu druckenden Zeilen. Jede Codebezeichnung hexadezimal FE im Seitenpuffer 78 führt während des Druckprozesses zu einer Leerzeile, mit Hilfe von zwei Leerzeilenverriegelungen 180 bzw. 182, die entsprechend mit den Zeilenpuffern 83 und 84 gekoppelt sind. Jedesmal wenn ein FE-Code an einen der Zeilenpuffer 83,84 geleitet wird, wird die zugehörige Leerzeilenverriegelung 180 bzw. 182 verriegelt. Wenn das System den Zeilenpuffer 83 oder 84 anspricht, der die nächste zu druckende Zeile enthält, wird auch die zugehörige Leerzeilenverriegelung 180, 182 abgefragt. Wenn die Verriegelung verriegelt ist, sperrt die Steuerelektronik kurzzeitig den Zeichengenerator und bildet dadurch in dem zu druckenden Format eine Leerzeile.
Der Formatsteuerpuffer 79 und das Adreßregister 80 sind in F i g. 3 so dargestellt, wie sie miteinander und mit dem Seitenpuffer 78 in Wechselwirkung stehen. Nach dieser Darstellung hat jede in den Seitenpuffer 78 eingegebene Zeile ein zugehöriges acht Bit großes Formatsteuerbyte im Puffer 79. Das vierte Bit eines jeden Byte, welches das vertikale Abstandsbit oder das Zeilenabstandsbit ist, gibt die Höhe der Zeichen in der entsprechenden Zeile an. Im vorliegenden Beispiel wird eine binäre »0« gesetzt für sechs Zeilen pro 2,54 cm und eine binäre »1« stellt acht Zeilen pro 2,54 cm dar. Mit diesem Bit wird die Verriegelung für den vertikalen Zeilenabstand verriegelt und so bestimmen der Startwertdecodierer 160 und der Endwertdecodierer 162 die Höhe der Zeile bei ihrem Druck in der oben beschriebenen Art und Weise. Die übrigen vier Bits eines jeden Formatsteuerbyte enthalten die Kanalzahl. Im vorliegenden Beispiel gibt es 12 Kanäle beginnend mit »0000« und endend mit »1100«. Das Adreßregister 80 hat soviel Adreßpositionen, wie Speicherstellen im Formatsteuerpuffer 79 vorhanden sind.
Wenn eine Leerzeile gedruckt werden soll, wird der Hexadezimalcode FE im Seitenpuffer 78 gespeichert, um einen Leerschritt oder zu überspringende Zeilen (Leerzeilen) anzugeben. Leerzeilen entsprechende Codes FE werden in den Seitenpuffern 78 nach Bedarf eingesetzt, um die vom Kanal-Kommando geforderte Leerschritt- oder Sprungfunktion zu erfüllen. Wenn das Kommando beispielsweise lautet »Drucken drei Zeilen vorschieben«, dann werden die Druckzeilen im Seitenpuffer 78 gespeichert und anschließend zwei Leerzeilen eingeschoben. Wenn das Kanal-Kommando lautet »Drucken und auf einen bestimmten Kanal im Formatsteuerpuffer 79 springen«, dann können viele Leerzeilen in den Seitenpuffer 78 eingeschoben werden, bis das Adreßregister 80 den mit dem Sprung zu erreichenden Kanal enthält Ein Kanal bedeutet eine Gruppe von Zeilen, d. h. ein Zeilenfeld bestimmter Höhe an beliebiger Stelle einer Seite. Wenn das Kommando beispielsweise lautet »Sprung nach Kanal 6 im Formatsteuerpuffer 79«, dann muß der Inhalt des Adreßregisters 80 für den Formatsteuerpuffer 79 um drei Positionen bei der angenommenen und in F i g. 3 gezeigten Adreßzeigerstellung »LETZTE ZEILE ÜBERTRAGEN«, erhöht werden, um den Kanal 6 zu
erreichen. Die Erhöhung auf Kanal 6 erzeugt gemäß Darstellung in Fig.3 unten links drei Leerzeilen im Seitenpuffer 78 durch die drei FE-Codes, die in den Seitenpuffer 78 eingeschoben werden, während der Inhalt des Adreßregisters 80 um drei Zeilen erhöht wird.
Hierzu 3 Blatt Zeichnungen

Claims (2)

Patentansprüche:
1. Zeilendrucker mit einer Strahlenquelle zur Erzeugung eines ablenkbaren und in der Intensität steuerbaren Energiestrahls, der für die Steuerung ein Kanalkommandowort erhält, das Informationen über das Vertikalformat der zu druckenden Seite erhält, wobei ein Kanal eine Gruppe von Zeilen bestimmter Höhe an beliebiger Stelle der zu druckenden Seite angibt, die in einen Formatpufferspeicher eingegeben wird, der weiterhin einen Seitenpufferspeicher für die zu druckenden Zeichen mit variabler Zeichenhöhe und -breite sowie Takt'/Abtastschaltungen zur Synchronisation umfaßt, bei dem jedem der zu druckenden Zeichen ein graphisches Codebyte entspricht und bei dem die graphischen Codebytes sequentiell mit der Abtastung des Strahls abgefragt werden, wobei ein dem adressierten graphischen Codebyte entsprechendes Zeichenbildbit oder ein Satz von Zeichenbildbits aus einem Zeichengenerator zur Steuerung der Intensitätsmodulation ausgewählt wird, dadurch gekennzeichnet, daß ein mit dem Seitenpuffer (78) und dem Formatsteuerpuffer (79) verbundenes Adreßregister (80) nacheinander die einzelnen Speicherplätze im Formatsteuerpuffer (79) ansteuert, daß eine Kanalzahl im Formatsteuerpuffer (70) eine Freilassung einer ihr zugeordneten Zeilenzahl auslöst, und zwar durch Einfügung von Codebytes (FE) in den Seitenpuffer (78), dem Zeilenpuffer (83 und 84) zur Aufnahme je einer Zeile nachgeschaltet sind, die mit Leerzeilenverriegelungen (180 bzw. 182) in Verbindung stehen, die dann verriegelt werden, wenn ein Codebyte (FE) an einen der Zeilenpuffer (83, 84) geleitet wird, und daß mit der Abfrage einer der Zeilenpuffer (83 oder 84) die entsprechende Leerzeilenverriegelung (180 oder 182) abgefragt wird, deren verriegelter Zustand den Zeichengenerator zur Bildung einer Leerzeile sperrt.
2. Zeilendrucker nach Anspruch i, dadurch gekennzeichnet, daß bei Adressensprüngen ein Codebyte (FE) in den Seitenpuffer (78) eingegeben wird, wobei der Inhalt des Adreßregisters (80) um Eins erhöht wird.
DE2548719A 1974-11-11 1975-10-31 Drucker mit Pufferspeicher Expired DE2548719C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/522,995 US4007442A (en) 1974-11-11 1974-11-11 Intermixed line heights and blank line formation in a buffered printer

Publications (3)

Publication Number Publication Date
DE2548719A1 DE2548719A1 (de) 1976-05-13
DE2548719B2 DE2548719B2 (de) 1981-01-08
DE2548719C3 true DE2548719C3 (de) 1981-08-27

Family

ID=24083232

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2548719A Expired DE2548719C3 (de) 1974-11-11 1975-10-31 Drucker mit Pufferspeicher

Country Status (7)

Country Link
US (1) US4007442A (de)
JP (1) JPS54364B2 (de)
CA (1) CA1044607A (de)
DE (1) DE2548719C3 (de)
FR (1) FR2290309A1 (de)
GB (1) GB1477430A (de)
IT (1) IT1042774B (de)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2559628C3 (de) * 1975-02-03 1980-08-14 Canon K.K., Tokio Infonnationsaufzeichnungsvorrichtung
JPS5232330A (en) * 1975-09-05 1977-03-11 Canon Inc Superposition recording device
JPS5942309B2 (ja) * 1975-09-12 1984-10-13 株式会社精工舎 画像形成方法
JPS52105734A (en) * 1976-03-01 1977-09-05 Canon Inc Signal coverter
JPS6031295B2 (ja) * 1977-03-09 1985-07-22 富士写真フイルム株式会社 レ−ザコム装置
CA1100644A (en) * 1977-06-30 1981-05-05 James G. Belleson Raster printer with sufficient printing flexibility
US4300206A (en) * 1977-06-30 1981-11-10 International Business Machines Corporation Flexible text and image generator for a raster printer
US4234931A (en) * 1977-08-11 1980-11-18 Canon Kabushiki Kaisha Information output apparatus for putting out a character dot pattern
US4254409A (en) * 1978-12-15 1981-03-03 Quality Micro Systems, Inc. Control system for full line variable height and width character and symbol printing
DE3138721A1 (de) * 1980-09-29 1982-05-06 Canon K.K., Tokyo Textverarbeitungsanlage
US5322376A (en) * 1980-10-31 1994-06-21 Canon Kabushiki Kaishi Serial printing apparatus including an error correcting capability and having a memory
JPS57101887A (en) * 1980-12-16 1982-06-24 Sony Corp Character display
US4412252A (en) * 1981-06-01 1983-10-25 Ncr Corporation Image reduction system
JPS5831785A (ja) * 1981-08-19 1983-02-24 Fuji Xerox Co Ltd プリンタ制御方式
JPS58101135U (ja) * 1981-12-28 1983-07-09 株式会社五世製作所 液面表示装置
GB2117151A (en) * 1982-03-19 1983-10-05 Ricoh Kk Method and apparatus for dot pattern print control
US4608664A (en) * 1983-02-23 1986-08-26 International Business Machines Corporation Automatically balancing and vertically justifying a plurality of text/graphics-columns
US4575813A (en) * 1983-02-23 1986-03-11 International Business Machines Corporation Automatically balancing and vertically justifying a plurality of text/graphics-columns
JPS6215628A (ja) * 1985-07-15 1987-01-24 Canon Inc 文書処理方法
US5016190A (en) * 1988-05-05 1991-05-14 Delphax Systems Development of raster scan images from independent cells of imaged data
US20080125712A1 (en) * 2006-09-26 2008-05-29 Alcon Manufacturing, Ltd. Ophthalmic injection system
TWI681310B (zh) * 2017-01-05 2020-01-01 三緯國際立體列印科技股份有限公司 圖檔轉換方法與立體列印系統

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1205744B (de) * 1963-06-20 1965-11-25 Ibm Deutschland Verfahren zur Schriftgroessenauswahl bei Elementdruckern
CA830119A (en) * 1963-10-16 1969-12-16 A. Cole Donald Digital storage and generation of video signals
GB1069037A (en) * 1964-05-26 1967-05-17 Bunker Ramo Data handling apparatus
US3332071A (en) * 1964-12-23 1967-07-18 Gen Precision Inc Data retrieval and display system
US3419322A (en) * 1965-08-03 1968-12-31 Zenith Radio Corp Ultrasonic transducer matching for bragg reflection scanning
FR1495480A (de) * 1966-06-08 1967-12-20
US3382963A (en) * 1966-08-17 1968-05-14 Ibm Printing apparatus with no-print feature
US3506779A (en) * 1967-04-03 1970-04-14 Bell Telephone Labor Inc Laser beam typesetter
DE1597773C3 (de) * 1967-08-26 1974-09-19 Dr.-Ing. Rudolf Hell Gmbh, 2300 Kiel Verfahren zum Setzen gerasteter Halbtonbilder
US3586120A (en) * 1968-07-16 1971-06-22 Zenith Radio Corp Sound propagating apparatus
GB1221366A (en) * 1968-08-15 1971-02-03 Standard Telephones Cables Ltd Character generation system
US3698006A (en) * 1969-05-29 1972-10-10 Energy Conversion Devices Inc High speed printer of multiple copies for output information
JPS4914372B1 (de) * 1969-08-25 1974-04-06
JPS4918414B1 (de) * 1969-10-25 1974-05-10
US3668687A (en) * 1969-11-17 1972-06-06 Sanders Associates Inc Raster scan symbol generator
US3701972A (en) * 1969-12-16 1972-10-31 Computer Retrieval Systems Inc Data processing system
US3626459A (en) * 1970-02-19 1971-12-07 Stromberg Datagraphix Inc Graphic arts printer
US3701999A (en) * 1970-08-21 1972-10-31 Ncr Co Computer output laser microform recording system
US3634828A (en) * 1970-08-26 1972-01-11 United Aircraft Corp Graphical data processing apparatus
US3815094A (en) * 1970-12-15 1974-06-04 Micro Bit Corp Electron beam type computer output on microfilm printer
US3760376A (en) * 1970-12-28 1973-09-18 Ibm System for controlling output lines with limited storage capacity
US3719781A (en) * 1971-03-19 1973-03-06 Extel Corp Control system for high speed printer
GB1343298A (en) * 1971-07-30 1974-01-10 Mullard Ltd Crt display systems
US3750189A (en) * 1971-10-18 1973-07-31 Ibm Light scanning and printing system
US3945480A (en) * 1971-12-28 1976-03-23 Realty & Industrial Corporation Justifying, text writing reproducing machine
DE2213953C3 (de) * 1972-03-22 1978-04-27 Siemens Ag, 1000 Berlin Und 8000 Muenchen Schaltungsanordnung zum Darstellen von Zeichen auf dem Bildschirm eines Sichtgerätes
US3893075A (en) * 1972-12-29 1975-07-01 Richard Orban Method and apparatus for digital scan conversion
US3868672A (en) * 1973-01-02 1975-02-25 Honeywell Inf Systems Cathode ray tube control apparatus for displaying upper and lower case characters using a single matrix
US3815104A (en) * 1973-01-18 1974-06-04 Lexitron Corp Information processing system
US3820123A (en) * 1973-04-04 1974-06-25 Quantor Corp Laser microfilm recorder
US3848232A (en) * 1973-07-12 1974-11-12 Omnitext Inc Interpretive display processor
US3886526A (en) * 1973-11-14 1975-05-27 Mobil Oil Corp Seismic trace annotation generator
US3895374A (en) * 1974-09-03 1975-07-15 Gte Information Syst Inc Display apparatus with selective test formatting

Also Published As

Publication number Publication date
FR2290309A1 (fr) 1976-06-04
CA1044607A (en) 1978-12-19
US4007442A (en) 1977-02-08
IT1042774B (it) 1980-01-30
DE2548719B2 (de) 1981-01-08
JPS5168729A (de) 1976-06-14
GB1477430A (en) 1977-06-22
JPS54364B2 (de) 1979-01-10
DE2548719A1 (de) 1976-05-13
FR2290309B1 (de) 1978-04-07

Similar Documents

Publication Publication Date Title
DE2548719C3 (de) Drucker mit Pufferspeicher
DE2550268C3 (de) Schnelldrucker für Datenverarbeitungssysteme
DE1961173C3 (de) Steuereinrichtung zum Festlegen bzw. Verändern der Textaufteilung einer Textdatenfolge mit Hilfe eines Bildanzeigegerätes
DE2835320C2 (de) Schaltungsanordnung für die Einstellung des linken Randes bei einem Textverarbeitungsgerät
DE68927396T2 (de) Schriftzeichendaten-Steuerung
DE3121503C2 (de) Dokumenten-Verarbeitungssystem
DE2549792A1 (de) Zeilendrucker mit gemischter zeichenteilung
DE2801750A1 (de) Wortprozessor
DE2818974A1 (de) Datenstation fuer datenverarbeitungsanlagen
DE2144596A1 (de) Video-Anzeigevorrichtung
DE2607842C2 (de)
DE2417923A1 (de) Videovorrichtung zur textgestaltung
DE2746807A1 (de) Wortprozessor
DE1296182B (de) Verfahren zur UEbertragung binaerkodierter Informationssignale sowie Kodierer zur Abgabe solcher Signale und mit diesem betreibbarer Dekodierer
DE1813324A1 (de) Elektronische Setzeinrichtung
DE2559628C3 (de) Infonnationsaufzeichnungsvorrichtung
EP0056948A1 (de) Bürokommunikationssystem
DE3248521A1 (de) Endgeraet zum aufbereiten einer vorlage und zum uebertragen von daten
DE2906883C2 (de)
DE2550212C3 (de) Drucker mit Pufferspeicher
DE2444326C2 (de) Vorrichtung zum aufzeichnen bzw. wiedergeben von daten bzw. informationen in arabischer schrift
DE1817804C3 (de)
DE1959232B2 (de) Elektronisches druckendes ein- ausgabewerk
DE1255961B (de) Steuervorrichtung fuer Druckwerk
DE69027659T2 (de) Punktdrucker

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee