DE69120458T2 - Steuersignale für Datenstromverarbeitung in einen Datenaustauschsystem - Google Patents

Steuersignale für Datenstromverarbeitung in einen Datenaustauschsystem

Info

Publication number
DE69120458T2
DE69120458T2 DE69120458T DE69120458T DE69120458T2 DE 69120458 T2 DE69120458 T2 DE 69120458T2 DE 69120458 T DE69120458 T DE 69120458T DE 69120458 T DE69120458 T DE 69120458T DE 69120458 T2 DE69120458 T2 DE 69120458T2
Authority
DE
Germany
Prior art keywords
data stream
data
block
command
text
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69120458T
Other languages
English (en)
Other versions
DE69120458D1 (de
Inventor
David L Ehnebuske
Robert A Pascoe
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 DE69120458D1 publication Critical patent/DE69120458D1/de
Application granted granted Critical
Publication of DE69120458T2 publication Critical patent/DE69120458T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G1/00Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/117Tagging; Marking up; Designating a block; Setting of attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/149Adaptation of the text data for streaming purposes, e.g. Efficient XML Interchange [EXI] format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Remote Sensing (AREA)
  • Computer Hardware Design (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Multimedia (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

  • Diese Erfindung bezieht sich auf Datenverarbeitungssysteme im allgemeinen und insbesondere auf ein System und eine Technik, in denen Text, Vektorgrafiken und Rasterbuddaten in ein Standarddarstellungsformat formatiert werden, das anschließend von mehreren Anwendungen und Darstellungseinheiten gemeinsam benutzt wird.
  • Hintergrund der Erfindung
  • Innerhalb herkömmlicher Informationsverarbeitungssysteme kann die Information von einer Anwendung in ein Darstellungsformat formatiert werden, das ein Datenstrom genannt wird. Wie hierin verwendet, ist ein Datenstrom eine Gruppe strukturierter Felder und wird durch die Syntax und Semantik der strukturierten Felder definiert. Der Darstellungsdatenstrom kann dann auf einem Bildschirm, Plotter oder Drucker dargestellt werden, er kann auf einem Speichermedium gespeichert oder elektronisch zu einem anderen Computersystem weitergeleitet werden, wo er gespeichert, verarbeitet oder von den lokalen Anwendungen oder Einheiten dargestellt werden kann. In einer Umgebung, in der die Darstellungsdaten von mehreren Anwendungen und Systemen gemeinsam benutzt oder auf mehreren verschiedenen Darstellungseinheiten dargestellt werden sollen, ist es eine Anforderung, daß resultierende Darstellungen identisch aussehen, ungeachtet der Einheit oder Anwendung, die Sie verarbeitet. Ein Datenstrom, der diese Anforderung unterstützt, wird gerätenunabhängig genannt. Der geräteunabhängige Datenstrom stellt sicher, daß die Informationen von allen empfangenden Anwendungen und Einheiten mit voraussagbaren Ergebnissen ungeachtet der empfangenden Anwendung oder Einheit zu verarbeiten sind.
  • Eine andere Anforderung an das Definieren gemeinsam benutzter Darstellungsdatenströme besteht darin, den Inhalt auf einen kleinen allgemeinen zu Satz reduzieren. Zum Beispiel können Textdarstellungen in einem Vektorgrafikdatenstrom unter Nutzung der Zeichenkettengrafikkommandos dargestellt werden. Es ist nicht notwendig, sowohl einen Datenstrom für Darstellungstext als auch einen Datenstrom für Darstellungsvektorgrafiken zu verwenden, wenn es möglich ist, eine einzige Datenstromdefinition zu verwenden, die beide Definitionen unterstützt. Der Nutzen dieser kombinierten Definition besteht in einer Verringerung der Codemenge, die durch empfangende Anwendungen und Darstellungseinheiten zum Interpretieren des Darstellungsdatenstroms erforderlich ist. Dies kann die Entwicklungs-, Wartungs- und Produktkosten verringern.
  • Beispiele des geräteunabhängigen Datenstroms mit verringertem Inhalt sind International Standard Computer Graphics Metafile (CGM) und IBM Graphics Object Content Architecture (GOCA). Implementierungen wie z.B. Presentation Manager von IBM und Post- Script von Adobe zeigen, daß die Definition von Text- und Rasterbilddaten in einer Grafikbasis untergebracht werden kann. Eine Anwendung erzeugt ein Beispiel des Datenstroms unter Verwendung eines begrenzten Satzes der verfügbaren Befehle. Die verwendeten Einschränkungen basieren auf dem Fokus der generierenden Anwendung. Wie oben betont, kann eine Textanwendung die Grafikdatenstrom-Kommandos verwenden, um ihre Ausgabe darzustellen, indem Sie den Satz der verwendeten Kommandos auf die begrenzt, die benötigt werden, um den Text darzustellen (d.h. Zeichenkettenkommandos).
  • Jedoch weisen Datenströme, die geräteunabhängig und zur Darstellung mit verringertem Inhalt geeignet sind, Nachteile auf. Diese Datenströme neigen dazu, der kleinste gemeinsame Nenner der Funktionen zu sein, die von allen bestehenden Anwendungen oder Einheiten unterstützt werden. Daher ist die in dem Datenstrom beschriebene Funktion auf nur die Funktionen beschränkt, die gemeinsam von allen Anwendungen und Einheiten unterstützt werden. Dies unterstützt nicht die Geräteanpassungsfähigkeit, das heißt die Fähigkeit, die gerätespezifische Leistung und funktionelle Erweiterungen zu unterstützen. Das Ergebnis sind verringerter Durchsatz, verringerte Darstellungsflexibilität und -qualität oder das Absinken der gesamten Leistung.
  • Betrachtet wird das früher verwendete Beispiel des Darstellens von Anzeigetext in einem Vektorgrafikdatenstrom unter Verwendung von Zeichenkettengrafikkommandos. Es ist offensichtlich, daß eine Nurtext-Darstellungsseite mit diesen grafischen Kommandos dargestellt werden kann. Da Sie jedoch in einem Grafikdatenstrom dargestellt ist, ist sich der Empfänger nicht bewußt, daß Sie von einer Textfunktion erzeugt wurde. Der Empfänger muß den Datenstrom als Grafik verarbeiten. Das Ergebnis wird eine genaue Darstellung der Originaldarstellung der Textanwendung sein, es kann jedoch ein Zusatzaufwand mit dem Verarbeiten dieser Kommandos als Grafik verbunden gewesen sein. Zum Beispiel gibt es viele Druckeinheiten, die sowohl Text- als auch Grafikmodi aufweisen. Infolge der Einfachheit der Verarbeitung der eingeschränkten Textfunktionen, verglichen mit den inhaltsreicheren Grafikfunktionen, sind diese Drucker im Textmodus schneller als im Grafikmodus. Ohne Kenntnis des Bezugs des Erzeugers kann der geeignete Modus nicht ausgewählt werden.
  • Es wurde vorgeschlagen, daß die empfangende Anwendung oder Einheit den eingehenden Darstellungsdatenstrom befragt, um festzustellen, ob bestimmte Einschränkungen bei der Erzeugung des Darstellungsdatenstroms verwendet wurden, die zum Vorteil der empfangenden Anwendung oder Einheit verwendet werden können. Falls z.B. eine Seite der Darstellungsdaten nur Zeichenkettenkommandos enthält, dann kann für die Ausgabe dieser Seite der Textmodus angenommen und somit die Leistung erhöht werden. Dieser Ansatz könnte außerdem erweitert werden, so daß Blöcke von Zeichenketteninformationen, die in einer Grafikdarstellung einer einzelnen Seite enthalten sind, isoliert und diese Blöcke in dem Textmodus mit höherer Leistung dargestellt werden könnten. Dieser Probieransatz ist als ein heuristisches Verfahren bekannt und zeigt die folgenden Nachteile.
  • Erstens ist die Textinformation nicht nur auf Zeichendaten beschränkt. Zum Beispiel können unterstrichene Textzeichen unter Verwendung von Grafikzeichenkommandos spezifiziert werden, die mit entsprechender Beziehung zu den Zeichenkettenkommandos ausgegeben werden. Diese und andere eingeschränkte Kombinationen von Grafikdaten durch erzeugende Anwendungen verkomplizieren das heuristische Verfahren, indem Sie Wissen und eine Möglichkeit zum Behandeln mehrfacher Kommandokombinationen erfordern.
  • Zweitens können wegen der Kompliziertheit von Darstellungen zusammengesetzter Dokumente Fälle auftreten, bei denen die Einschränkung bezüglich der Nutzung der Grafikdatenstrom-Kommandos nicht garantiert werden kann und die Ergebnisse des heuristischen Verfahrens nicht voraussagbar sind. Zum Beispiel kann ein Teil eines Datenstroms auf Zeichenkettenkommandos begrenzt sein und daher kann festgestellt werden, daß es ein Textblock ist. Ein verknüpfter Teil desselben Datenstroms kann Zeichenkettenkommandos aufweisen, die über eine grafische Zeichnung gelegt wurden. Da dieser letztere Anteil Zeichenketten ebenso wie andere Grafikkommandos enthält, welche die Hintergrundzeichnung darstellen, erfüllt er nicht die eingeschränkte Definition des heuristischen Verfahrens und wird daher nicht als Text behandelt werden. Dies wird nicht zu maximaler Leistung führen, da ein Anteil der Darstellung, der im Textmodus verarbeitet werden könnte, nicht so verarbeitet wird. Außerdem können verschiedene Schriftdrehungs- und Schriftersetzungsregeln zwischen Text- und Grafikmodi in Darstellungseinheiten vorliegen, die weiterhin die eingeschränkten Definitionsanforderungen eines heuristischen Verfahrens ungültig machen. Dieses Problem wird weiter verschlimmert, wenn verknüpfte Zeichenkettendaten in unverknüpften Schriftbildern oder -orientierungen dargestellt werden können. Daher gibt es gültige Kombinationen von Grafikkommandos, die einen heuristischen Ansatz ungültig machen. Dies führt dazu, daß der heuristische Algorithmus ungenau wird, oder es erhöht die Kosten der heuristischen Implementierung so sehr, daß Sie nicht durchführbar ist.
  • Drittens erfordert der heuristische Ansatz, daß der Darstellungsdatenstrom vorverarbeitet wird, um festzustellen, wo Einschränkungen des Erzeugers angewendet wurden. Dies ist nur für Geräte möglich, die eine Seitenpuffermöglichkeit haben, um den eingehenden Darstellungsdatenstrom zu speichern, während der heuristische Algorithmus verarbeitet wird. Daher kännen Einheiten ohne Seitenpufferung den heuristischen Ansatz nicht unterstützen.
  • Abschließend gesagt, ist der heuristische Ansatz kompliziert, hat fragwürdige Genauigkeit und ist nicht in alle Einheiten- und Anwendungsklassen zu implementieren. Benötigt wird eine Technik, durch die eine erzeugende Anwendung explizit kennzeichnen kann, daß die Darstellungsdaten oder Segmente der Darstellungsdaten unter Nutzung eines speziellen Prozesses erzeugt wurden. Die sich ergebende eingeschränkte Folge der Inhalte des Darstellungsdatenstroms könnte durch ein gerätespezifisches Verfahren oder eine Funktion ohne Verlust der Integrität der Darstellung ausgeführt werden.
  • Zusammenfassung der Erfindung
  • Diese Erfindung, wie in Anspruch 1 definiert, bezieht sich auf ein Verfahren zum Bereitstellen von Kommandos (Hinweisen) in einem grafischen Darstellungsdatenstrom, wie z.B. IBM Graphics Object Content Architecture, das einem Generierungsprozeß gestattet, zu kennzeichnen, wo bestimmte Einschränkungen bei der Generierung spezieller Fälle des Darstellungsdatenstroms verwendet wurden. Diese Kommandos (Hinweise) modifizieren nicht die Beschreibung der Darstellung. Statt dessen liefern Sie einem Empfänger ein Mittel, um explizit festzustellen, wo durch den Generierungsprozeß Einschränkungen verwendet wurden, und somit, welcher aus einem Satz von Darstellungsprozessen effektiv auf den Darstellungsdatenstrom angewendet werden kann, um die höchste Leistung und die größte Genauigkeit in Verbindung mit der Verarbeitung der Darstellungsdaten zu sichern.
  • Ein Anfang-Datenmerkmale-Kommando und ein Ende-Datenmerkmale- Kommando werden in dem Darstellungsdatenstrom während des Generierungsprozesses bereitgestellt. Die Anfang-Datenmerkmale- und Ende-Datenmerkmale-Kommandos werden in dem Darstellungsdatenstrom angeordnet, um den Teil des Datenstroms abzugrenzen, der ein spezielles Merkmal aufweist. Jedes Anfang-Datenmerkmale-Kommando und Ende-Datenmerkmale-Kommando wird mit einem Kennzeichnungsfeld (ID-Feld) versehen. Das ID-Feld wird verwendet, um den speziellen Prozeß zu definieren, der zum Erzeugen des begrenzten Anteils des Datenstroms verwendet wird. Die empfangende Anwendung oder Einheit (Empfänger) kann den Darstellungsprozeß modifizieren, falls Sie ein spezielles Anfang-Datenmerkmale-Kommando erkennt. Der Modifikationsprozeß wird andauern, bis das zugeordnete Ende-Datenmerkmale-Kommando angetroffen wird. Eine Empfangseinheit kann die Anfang-Datenmerkmale- und Ende- Datenmerkmale-Kommandos ignorieren und sicher sein, daß die sich ergebende Darstellung genau und entsprechend der Festlegung des Erzeugers sein wird. Die Kommandos beseitigen den Bedarf nach Heuristiken, weil Sie explizit kennzeichnen, wo Erzeugereinschränkungen angewendet wurden. Zusätzlich wird Geräteunabhängigkeit erreicht, weil die Kommandos keinen speziellen Prozeß oder eine Gerätefunktion kennzeichnen. Weiterhin wird eine Geräteanpassungsfähigkeit erreicht, weil die Kommandos dem empfangenden Prozeß gestatten, den Darstellungsprozeß zu ändern, um gerätespezifische Funktionalität zu berücksichtigen.
  • Die Anfang-Datenmerkmale- und Ende-Datenmerkmale-Kommandos verändern die sich ergebende Darstellungsansicht nicht. Ein Prozeß, der keine Hinweise unterstützt, wird dieselbe Ausgabe erzeugen, wie ein Prozeß, der alle und jeden Hinweis unterstützt. Der Unterschied zwischen diesen zwei Prozessen wird in der Geschwindigkeit und der Qualität bestehen, mit denen die Darstellung an der Ausgabeeinheit erzeugt wird.
  • Die Unterstützung von Anfang-Datenmerkmale- und Ende- Datenmerkmale-Kommandos ist wahlfrei, da sich dieselbe physikalische Darstellung mit oder ohne Unterstützung ergeben wird. Die Unterstützung durch eine Empfangseinheit ist abhängig von den Fähigkeiten dieser Einheit, ihren Darstellungsprozeß basierend auf den Erzeugungseinschränkungen anzupassen, die durch die Anfang-Datenmerkmale- und Ende-Datenmerkmale-Kommandos gekennzeichnet sind und durch Sie begrenzt werden.
  • Die ID der Anfang-Datenmerkmale- und Ende-Datenmerkmale-Kommandos ermöglicht Flexibilität beim Zuordnen von Hinweisen für die Interpretation des Datenstroms. Ein Verzeichnis der IDs wird vorausgesetzt. Wenn neue Erzeuger neue Einschränkungen am Ausgabedatenstrom feststellen und neue Einheiten Wege finden, sich an diese Einschränkungen anzupassen, können Anfang- Datenmerkmale-und Ende-Datenmerkmale-Kommandos mit neuen IDs durch den Erzeuger hinzugefügt werden. Bestehende Einheiten wer- den diese neuen Anfang/Ende-Datenmerkmale ignorieren. Die Darstellungsergebnisse werden identisch sein, nur Ausführung und Qualität werden beeinflußt.
  • Kurze Beschreibung der Zeichnungen
  • Figur 1 ist eine Darstellung der Anzeige, die von einem Textprozessor erzeugt wurde.
  • Figur 2 ist eine Darstellung des Darstellungsdatenstroms, der von dem Textprozessor unter Nutzung der Anfang/Ende- Datenmerkmale-Kommandos erzeugt wurde.
  • Figur 3 ist ein Flußdiagramm des Generierungsprozesses eines Anfang/Ende-Datenmerkmale-Kommandos.
  • Figur 4 ist eine Fortsetzung des Flußdiagramms des Generierungsprozesses von Figur 3.
  • Figur 5 ist ein Flußdiagramm des Empfangsprozesses eines Anfang/Ende-Datenmerkmale-Kommandos.
  • Figur 6 ist eine Fortsetzung des Flußdiagramms des Empfangsprozesses von Figur 5.
  • Figur 7 ist eine Fortsetzung des Flußdiagramms des Empfangsprozesses von Figur 6.
  • Ausführliche Beschreibung
  • In einer Textverarbeitungsanwendung gibt es eine Anforderung, die Ergebnisse der Textverarbeitungsanwendung unter Verwendung eines grafikbasierten Darstellungsdatenstroms, wie z.B. IBM Graphics Object Content Architecture, darzustellen. Es ist eine weitere Anforderung, daß die Textverarbeitungsanwendung nur eine Untergruppe der Grafikkommandos benutzt, die in dem Datenstrom verfügbar sind. Die Textverarbeitungsanwendung hat drei Funktionen; Sie stellt Textinformationen dar, Sie kann Textinformationen durch Unterstreichen hervorheben und Sie kann Textinformationen durch Zeichnen eines Rahmens hervorheben. Text wird durch Zeichenkettenkommandos dargestellt und Informationen zum Unterstreichen werden durch Grafiklinienkommandos dargestellt, die geeignet unter dem zu unterstreichenden Text angeordnet sind. Die Rahmenfunktion wird in dem Datenstrom wieder unter Benutzung von Grafiklinienkommandos dargestellt, die in Beziehung zu den zugeordneten Zeichenkettenkommandos geeignet angeordnet sind. Ein Beispiel einer Ausgabe, die von diesem Textprozessor erzeugt werden kann, wird in Figur 1 gezeigt.
  • Es wird festgestellt, daß es drei Druckerklassen gibt, welche die Ausgabe des Textprozessors empfangen werden. Die Druckerklasse 'A' unterstützt einen Grafikmodus und einen Hochleistungstextmodus. Die Druckerklasse 'B' weist Grafik- und Textmodi auf und stellt zusätzlich eine Unterstreichungsfunktion als einen integralen Bestandteil der Schriftdefinition des Druckers bereit. Schließlich weist die Druckerklasse 'C' nur einen Crafikmodus auf. Um maximale Leistung und Qualität zu erreichen, ist es wünschenswert, daß Drucker der Klasse 'A' zur Verarbeitung von Zeichenkettenkommandos in den Textmodus umschalten, Grafiklinienkommandos aber als eine Funktion des Crafikmodus verarbeiten. Es ist weiterhin wünschenswert, daß Drucker der Klasse 'B' die Zeichenkettenkommandos und die Grafiklinienkommandos, die dem Unterstreichen zugeordnet sind, im Textmodus verarbeiten. Es ist weiterhin wünschenswert, daß die Ausgabe des Textprozessors 'wie vorhanden' durch Drucker der Klasse 'C' verarbeitet wird.
  • Figur 2 zeigt den Datenstrom, den der Textprozeß unter Verwendung der Anfang/Ende-Datenmerkmale erzeugen kann, um Anteile abzugrenzen, die einen eingeschränkten Satz von Grafikkommandos und Kommandofolgen verwenden. In Figur 2 ist der Datenstrom symbolisch in vom Menschen lesbarer Form dargestellt. Der Datenstrom ist zwischen den viereckigen Klammern enthalten []. Die einzelnen Kommandos des Datenstroms sind innerhalb der runden Klammern () enthalten. Parameter der Kommandos sind innerhalb der geschweiften Klammern {} enthalten. Figur 2 beschreibt den Darstellungsdatenstrom zur Darstellung der Textanzeige in Figur 1.
  • Der Datenstrom beginnt mit einem Anfang-Datenmerkmale-Kommando mit einer ID von {Text}. Dieses Kommando wird von dem Textprozessor erzeugt, da er aus internen Steuerstrukturen erkennt, daß der nachfolgende Datenstrominhalt auf die Kommandos und Kommandofolgen eingeschränkt ist, die Textdaten darstellen. Der Textprozessor erzeugt dann ein Zeichenkettenkommando an der ersten Textdarstellung an Position {x=1,y=l}. Dieses Kommando kennzeichnet die Zeichen für die erste Textzeile. Das nächste von dem Textprozessor erzeugte Kommando ist ebenfalls ein Zeichenkettenkommando. Es kennzeichnet die Textzeichen, die am Anfang der zweiten Zeile der Ausgabe {x=1,y=3} auftreten. Der Textprozessor erkennt aus internen Steuerstrukturen, daß das letzte Wort der zweiten Zeile unterstrichen ist. Daher erzeugt er einen Anfang-Datenmerkmale-Kommando-Auftrag der ID {Unterstreichen}. Darauffolgt ein Zeichenkettenauftrag, der die zu unterstreichenden Zeichen darstellt. Schließlich wird ein Grafiklinienauftrag erzeugt, der kennzeichnet, daß eine Linie zwischen Punkten gezeichnet werden soll, die unter der Position der Zeichen ausgerichtet sind, die in dem vorherigen Zeichenkettenkommando gekennzeichnet wurden. Nachdem alle Elemente der Unterstreichungsfolge in grafischen Ausdrücken spezifiziert wurden, erzeugt der Textprozessor ein Ende-Datenmerkmale-Kommando der ID {Unterstreichen}. Das nächste Kommando ist ein Zeichenkettenkommando, das die Zeichen der dritten Zeile der Textdarstellung angibt. Darauffolgt ein Ende-Datenmerkmale-Kommando der ID {Text}. Dies kennzeichnet, daß der spezielle Auftrag für Textdaten beendet ist. Darauffolgen die Grafiklinienkommandos, welche die Grafikliniensegmente kennzeichnen, welche die Darstellung des Hervorhebens durch Einrahmung in Figur 1 beschrieben. Dies beendet den Beispieldatenstrom.
  • Figuren 3 und 4 zeigen die Flußdiagramme für die Generierung des Datenstroms in Figur 2. Diese Figuren stellen eine Steuerprozeßroutine dar, die Zugriff auf das interne Format des Textprozessors hat und die wiederum die Merkmale dieses internen Formats testet und einen grafischen Darstellungsdatenstrom erzeugt. Beginnend mit Block 31 in Figur 3 wurde ein Textprozessor durch eine Anwenderschnittstelle oder ein anderes Anforderungsmittel aufgefordert, einen grafischen Darstellungsdatenstrom für die Informationen zu erzeugen, die durch Tastenbetätigungen oder andere Mittel erfaßt wurden. Die Informationen sind in einem internen Format enthalten, das dem Textprozessor bekannt ist. In Block 31 wird ein Anteil des internen Formates von dem Textprozessor geprüft, um festzustellen, ob der Datenstrom in einer der vordefinierten Untergruppen für Text oder Unterstreichung erzeugt werden kann. Sobald die Merkmale des Anteils des internen Formates festgestellt sind, prüft der Prozeß in Block 32, ob die Unterstreichungs- oder Textuntergruppe vorher gekennzeichnet wurde und zur Zeit erzeugt wird. Im Fall eines Anfangsinitialisierens des Prozesses wird diese Bedingung nicht erfüllt und die Steuerung geht zu Block 34. In Block 34 werden die Ergebnisse der Analyse in Block 31 geprüft. Falls festgestellt wird, daß das interne Format den Texttyp unterstützt, wird an Block 35 das Anfang-Datenmerkmale-Kommando mit der ID von {Text} in den grafischen Datenstrom eingefügt und der Kontrollfluß geht zu Block 37, wo die grafischen Kommandos, die das interne Format darstellen, in den grafischen Datenstrom eingefügt werden. Falls an Block 34 festgestellt wird, daß das interne Format den Unterstreichungsmodus unterstützt, wird an Block 36 das Anfang- Datenmerkmale-Kommando mit der ID von {Unterstreichen} in den grafischen Datenstrom eingefügt und der Kontrollfluß geht zu Block 37, wo die grafischen Kommandos, die das interne Format darstellen, in den grafischen Datenstrom eingefügt werden. Falls an Block 34 festgestellt wird, daß weder Text- noch Unterstreichungsmodi von den internen Daten angezeigt werden, geht der Kontrollfluß direkt zu Block 37, wo die grafischen Kommandos, die das interne Format darstellen, in den grafischen Datenstrom eingefügt werden. Daher wird der grafische Datenstrom mit Anfang-Datenmerkmale-Kommandos wie erforderlich erzeugt. Folgt man der Generierung des grafischen Datenstroms in Block 37, kehrt der Kontrollfluß zu Block 31 zurück, wo ein anderer Anteil des internen Datenstroms analysiert wird.
  • Falls an Block 32 festgestellt wird, daß die Unterstreichungsoder Textuntergruppe des grafischen Datenstroms zur Zeit erzeugt wird, wie in Block 34 erstellt, dann geht der Prozeß zu Figur 4, Block 41. An Block 41 werden die Ergebnisse der Analyse in Block 31 geprüft. Falls festgestellt wird, daß der nächste Anteil des internen Formates im Unterstreichungsmodus fortfährt, geht der Kontrollfluß zu Block 43. An Block 43 werden die Ergebnisse der Analyse in Block 31 geprüft. Falls festgestellt wird, daß der nächste Anteil des internen Formates im Textmodus fortfährt, geht der Kontrollfluß zu Block 45, der die Steuerung zu Figur 3, Block 37, zurücksendet, wo die grafischen Kommandos, die das interne Format darstellen, in den grafischen Datenstrom eingefügt werden. Falls an Block 41 festgestellt wird, daß das interne Format nicht länger einen Unterstreichungsmodus erfordert, wird an Block 42 das Ende-Datenmerkmale-Kommando der ID {Unterstreichen} in den grafischen Datenstrom eingefügt und der Kontrollfluß geht an Block 43. Falls an Block 43 festgestellt wird, daß das interne Format nicht länger einen Textmodus erfordert, wird an Block 44 das Ende-Datenmerkmale-Kommando der ID {Text} in den grafischen Datenstrom eingefügt und der Kontrollfluß geht an Block 45. Wie vorher gibt Block 45 die Steuerung zurück an Figur 3, Block 37, wo die grafischen Kommandos, die das interne Format darstellen, in den grafischen Datenstrom eingefügt werden. Somit wird der grafische Datenstrom mit Ende-Datenmerkmale- Kommandos wie erforderlich erzeugt. Nach der Generierung des grafischen Datenstroms in Block 37 kehrt der Kontrollfluß zu Block 31 zurück, wo ein anderer Anteil des internen Datenstroms analysiert wird. Dieser Zyklus dauert an, bis alle Anteile des internen Formats analysiert worden sind.
  • Die Figuren 5 bis 7 zeigen die Flußdiagramme für die Interpretation des Datenstroms in Figur 2. Diese Figuren stellen eine Steuerprozeßroutine dar, die Zugriff auf den grafischen Darstellungsdatenstrom hat, der durch den in den Figuren 3 und 4 gezeigten Prozeß erzeugt wurde und die wiederum die Merkmale dieses Datenstroms testet und ein sichtbares Ergebnis durch einen Zeichenprozeß erzeugt, der typisch für eine vektorgrafische Dateninterpretation ist. Beginnend in Figur 5 erfolgt an Block 61 eine Feststellung der Merkmale der Einheit, auf der die Darstellung, die in dem Datenstrom beschrieben wird, angesehen werden soll. Falls die Einheit besondere Verarbeitungsmodi nicht unterstützt, wie im Fall von Druckern der Klasse 'C', geht der Kontrollfluß weiter zu Block 62. An Block 62 wird aus dem Datenstrom ein Kommando extrahiert. An Block 63 wird das Kommando geprüft, um festzustellen, ob es ein Anfang- oder ein Ende- Datenmerkmale-Kommando ist. Falls es keines davon ist, wird an Block 65 der Zeichenprozeß aufgerufen, um das Grafikkommando auszuführen, und der Kontrollfluß geht zu Block 66. Falls das Kommando ein Anfang- oder Ende-Datenmerkmale-Kommando ist, wird dieses Kommando an Block 64 ignoriert, da es keine Wirkung auf das Gerät der Klasse 'C' hat, und der Kontrollfluß geht zu Block 66. An Block 66 wird der Datenstrom abgefragt, um festzustellen, ob das letzte Kommando verarbeitet wurde. Falls das letzte Kommando verarbeitet wurde, ist der Prozeß abgeschlossen. Falls nicht, kehrt der Kontrollfluß zurück zu Block 62, wo das nächste Kommando in dem Datenstrom verarbeitet wird. Daher steht ein Prozeß zur Verfügung, um die Anfang/Ende-Datenmerkmale-Kommandos zu ignorieren.
  • Falls in Block 61 festgestellt wurde, daß eine Empfangseinheit besondere Verarbeitungsmodi hat, geht der Kontrollfluß zu Figur 6. In Figur 6, Block 72, wird ein Kommando aus dem Datenstrom extrahiert. An Block 73 wird das Kommando geprüft, um festzustellen, ob das Kommando ein Anfang-Datenmerkmale-Kommando ist. Falls ja, wird an Block 74 die ID des Anfang-Datenmerkmale-Kommandos festgestellt. Falls Sie vom Typ (Text} ist, geht die Steuerung an Block 75, wo festgestellt wird, ob die aktuelle Einheit einen Textmodus unterstützt. Falls nicht, geht der Kontrollfluß zu Block 71, wo der Datenstrom abgefragt wird, um festzustellen, ob das letzte Kommando verarbeitet wurde. Falls an Block 75 festgestellt wird, daß die Einheit den Textmodus unterstützt, wird an Block 76 ein Indikator gesetzt, der anzeigt, daß in den Textmodus eingetreten wurde, und der Kontrollfluß geht zu Block 71. Falls an Block 74 festgestellt wird, daß der Typ {Unterstreichen} ist, geht der Kontrollfluß zu Block 77 weiter. Falls an Block 77 festgestellt wird, daß die Einheit einen Unterstreichungsmodus nicht unterstützt, geht der Kontrollfluß zu Block 71. Dies wäre der Kontrollfluß für Drucker der Klasse 'A', da diese Klasse einen Unterstreichungsmodus nicht unterstützt. Falls an Block 77 festgestellt wird, daß die Einheit einen Unterstreichungsmodus unterstützt, wird an Block 78 ein Indikator gesetzt, der anzeigt, daß in den Unterstreichungsmodus eingetreten wurde, und der Kontrollfluß geht an Block 71. Dies wäre der Kontrollfluß für Drucker der Klasse 'B', da diese Klasse einen Unterstreichungsmodus unterstützt. An Block 71 wird der Datenstrom abgefragt, um festzustellen, ob das letzte Kommando verarbeitet wurde. Falls ja&sub1; ist der Prozeß abgeschlossen. Falls nicht, kehrt der Kontrollfluß zurück zu Block 72, wo das nächste Kommando in dem Datenstrom verarbeitet wird. Somit steht ein Prozeß zur Verfügung, um Verarbeitungsmodi abhängig von den Verarbeitungsmöglichkeiten der Verarbeitungseinheit und dem Inhalt des Datenstroms zu setzen.
  • Falls an Block 73 festgestellt wird, daß das geprüfte Kommando kein Anfang-Datenmerkmale-Kommando ist, geht der Kontrollfluß zu Block 79. Falls an Block 79 festgestellt wird, daß das Kommando ein Ende-Datenmerkmale-Kommando ist, dann wird an Block 701 der Modus, der durch die ID des Ende-Datenmerkmale-Kommandos bestimmt wird, zurückgesetzt und der Kontrollfluß geht zu Block 71. Falls an Block 79 das Kommando kein Ende-Datenmerkmale-Kommando ist, geht der Kontrollfluß zu Figur 7. Somit steht ein Prozeß zur Verfügung, um die Verarbeitungsmodi abhängig vom Inhalt des Datenstroms zurückzusetzen
  • In Figur 7 an Block 80 wird der Status des Textmodus geprüft. Falls er nicht eingeschaltet ist, geht die Kontrolle zu Block 85, wo der Zeichenprozeß aufgerufen wird, um das grafische Kommando auszuführen, und der Kontrollfluß geht zu Block 86, der eine Rückkehr zu Figur 6, Block 71, veranlaßt. Falls der Textmodus eingeschaltet ist, dann wird an Block 81 der Status des Unterstreichungsmodus geprüft. Falls er nicht eingeschaltet ist, geht der Kontrollfluß zu Block 84 weiter, wo festgestellt wird, ob das Kommando ein Zeichenkettenkommando ist. Falls nicht, erfolgt keine spezielle Verarbeitung und die Steuerung geht zu Block 85, wo der Zeichenprozeß aktiviert wird, um das grafische Kommando auszuführen. Falls Block 84 ein Zeichenkettenkommando feststellt, dann wird das Kommando in dem Prozeß des Textmodus in Block 87 statt in dem Grafikzeichenprozeß in Block 85 interpretiert. Der Prozeß in Block 87 ermöglicht die höhere Leistung und Qualität der Interpretation der Zeichenkettendaten. Dies ist bei Druckern der Klasse 'A' der Fall, wo nur die Textfunktionen besonders verarbeitet werden und andere Kommandos im Grafikmodus verarbeitet werden.
  • Falls an Block 81 festgestellt wird, daß der Unterstreichungsmodus gesetzt ist, geht die Kontrolle an Block 82, wo festgestellt wird, ob das Kommando ein Grafiklinienkommando ist. Falls ja, dann wird die Verarbeitung in Block 86 fortgesetzt, der zu Figur 6, Block 71, zurückkehrt Diese Operation veranlaßt das Ignorieren des Grafiklinienkommandos, weil im Unterstreichungsmodus das tatsächliche Unterstreichen durch alternative Mittel dargestellt wird. D.h. falls an Block 82 das Kommando kein Crafiklinienkommando ist, kann angenommen werden, daß es ein Zeichenkettenkommando ist, da der Textmodus in Block 80 festgelegt wurde. Daher wird an Block 83 das Zeichenkettenkommando in dem Textmodusprozeß unter Nutzung einer Schrift interpretiert, die im Entwurf das Unterstreichen als einen integralen Bestandteil des Abbilds der Zeichen der Schrift hat. Von Block 83 geht der Kontrollfluß durch Block 86 zu Figur 6, Block 71. Dies ist der Fall bei Druckern der Klasse 'B', wo die Textfunktion die Fähigkeit einschließt, das Unterstreichen als einen integralen Bestandteil des Textmodus zu behandeln.
  • Zusammenfassend ermöglicht diese Erfindung ein Verfahren des Erzeugens eines grafischen Darstellungsdatenstroms mit speziellen Kommandos/Hinweisen, die einem Empfänger gestatten, zu bestimmen, wo bestimmte Einschränkungen während der Generierung des Datenstroms verwendet wurden. Die Kommandos/Hinweise bestehen aus einem Anfang-Datenmerkmale-Kommando und einem Ende- Datenmerkmale-Kommando. bie Anfang-Datenmerkmale- und Ende- Datenmerkmale-Kommandos werden in dem Darstellungsdatenstrom angeordnet und durch eine Empfangsanwendung oder -einheit empfangen und verarbeitet. Der Empfänger kann den Darstellungspro- zeß für eine spezielle Ausgabeeinheit modifizieren, wenn er ein spezielles Anfang-Datenmerkmale-Kommando erkennt. Der Modifikationsprozeß wird wirksam bleiben, bis das zugeordnete Ende- Datenmerkmale-Kommando angetroffen wird. Ein Kennzeichnungs- (ID-) Feld ist Teil jedes Anfang-Datenmerkmale-Kommandos und Ende-Datenmerkmale-Kommandos. Das ID-Feld wird verwendet, um den speziellen Prozeß zu definieren, der verwendet wird, um den eingeschränkten Anteil des Datenstroms zu erzeugen. Ein Verzeichnis der ID-Felder wird vorausgesetzt. Zukünftige Datenstromerzeuger, die neue Einschränkungen an dem Ausgabedatenstrom definieren, und neue Einheiten, die sich an diese Einschränkungen anpassen, können dem Verzeichnis ihre neuen ID-Felder hinzufügen lassen.
  • Während die Erfindung mit Bezug auf eine spezielle Ausführungsform davon gezeigt und beschrieben wurde, wird es für den Fachmann zu verstehen sein, daß die vorgehenden und andere Anderungen in Form und Details erfolgen können, ohne von dem Bereich der Erfindung abzuweichen, wie in den anhängigen Ansprüchen definiert.

Claims (3)

1. Verfahren des Generierens eines Darstellungsdatenstroms durch ein emittierendes Datenverarbeitungssystem für ein Empfangsdatenverarbeitungssystem, das die folgenden Schritte umfaßt:
-an dem emittierenden Datenverarbeitungssystem in einem Datenstrom, der eine Gruppe strukturierter Felder ist, Kennzeichnen (31, 32, 34) eines speziellen Abschnitts des Datenstroms mit einer speziellen Generierungseinschränkung und Generieren (37) eines Darstellungsdatenstroms aus dem Datenstrom durch Einleiten (35, 36) des speziellen Abschnitts in dem Datenstrom mit einem Anfang-Datenmerkmale-Kommando, die mit einem ersten Kennzeichnungsfeld versehen ist, und durch Anschließen (42, 44) einem Ende-Datenmerkmale-Kommando an den speziellen Abschnitt in dem Datenstrom, die mit einem zweiten Kennzeichnungsfeld versehen ist, und Wiederholen des Generierungsschrittes für jeden speziellen Abschnitt in dem Datenstrom,
-an dem Empfangsdatenverarbeitungssystem:
- falls besondere Darstellungsprozesse (61) unterstützt werden, Erkennen (73) des Anfangs-Datenmerkmale-Kommandos in dem Darstellungsdatenstrom und Ändern (76, 78) des Darstellungsprozesses gemäß der speziellen Cenerierungseinschränkung bis das Ende-Datenmerkmale-Kommando erkannt wird (79),
- falls keine besonderen Darstellungsmodi unter stützt werden (61), Ignorieren (64) des Anfang- Datenmerkmale-Kommandos und des Ende-Datenmerkmale-Kommandos in dem Darstellungsdatenstrom.
2. Verfahren nach Anspruch 1, wobei der Darstellungsprozeß an dem Empfangsdatenverarbeitungssystem ein Textmodus für die spezielle Generierungseinschränkung ist.
3. Verfahren nach Anspruch 1 oder 2, das weiterhin das Speichern der ersten und zweiten Kennzeichnungsfelder in einem Verzeichnis innerhalb des Empfangsdatenverarbeitungssystems umfaßt.
DE69120458T 1990-04-13 1991-03-07 Steuersignale für Datenstromverarbeitung in einen Datenaustauschsystem Expired - Lifetime DE69120458T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/509,261 US5535319A (en) 1990-04-13 1990-04-13 Method of creating and detecting device independent controls in a presentation data stream

Publications (2)

Publication Number Publication Date
DE69120458D1 DE69120458D1 (de) 1996-08-01
DE69120458T2 true DE69120458T2 (de) 1997-01-23

Family

ID=24025899

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69120458T Expired - Lifetime DE69120458T2 (de) 1990-04-13 1991-03-07 Steuersignale für Datenstromverarbeitung in einen Datenaustauschsystem

Country Status (4)

Country Link
US (1) US5535319A (de)
EP (1) EP0452244B1 (de)
JP (1) JP2577512B2 (de)
DE (1) DE69120458T2 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5506983A (en) * 1992-07-06 1996-04-09 Microsoft Corporation Method and system for transactioning of modifications to a tree structured file
US5717922A (en) * 1995-07-31 1998-02-10 International Business Machines Corporation Method and system for management of logical links between document elements during document interchange
US6161107A (en) * 1997-10-31 2000-12-12 Iota Industries Ltd. Server for serving stored information to client web browser using text and raster images
US20040166912A1 (en) * 2001-05-14 2004-08-26 Stienstra Marcelle Andrea Device for interacting with real-time streams of content
US7305649B2 (en) * 2005-04-20 2007-12-04 Motorola, Inc. Automatic generation of a streaming processor circuit
US20060265485A1 (en) * 2005-05-17 2006-11-23 Chai Sek M Method and apparatus for controlling data transfer in a processing system
US7603492B2 (en) * 2005-09-20 2009-10-13 Motorola, Inc. Automatic generation of streaming data interface circuit
US20080120497A1 (en) * 2006-11-20 2008-05-22 Motorola, Inc. Automated configuration of a processing system using decoupled memory access and computation
US9766906B2 (en) 2011-12-29 2017-09-19 International Business Machines Corporation Efficient sharing of artifacts between collaboration applications

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4388696A (en) * 1980-07-14 1983-06-14 Texas Instruments Incorporated Data processing system having dual output modes
US4644401A (en) * 1984-10-29 1987-02-17 Morris K. Mirkin Apparatus for combining graphics and video images in multiple display formats
US4651278A (en) * 1985-02-11 1987-03-17 International Business Machines Corporation Interface process for an all points addressable printer
US4872054A (en) * 1988-06-30 1989-10-03 Adaptive Video, Inc. Video interface for capturing an incoming video signal and reformatting the video signal

Also Published As

Publication number Publication date
DE69120458D1 (de) 1996-08-01
EP0452244B1 (de) 1996-06-26
EP0452244A2 (de) 1991-10-16
EP0452244A3 (en) 1993-08-11
US5535319A (en) 1996-07-09
JP2577512B2 (ja) 1997-02-05
JPH04227577A (ja) 1992-08-17

Similar Documents

Publication Publication Date Title
DE60207593T2 (de) Ein druckersystem
DE68928190T2 (de) Dynamische Wiederbestimmung einer Rahmenstruktur
DE10027222B4 (de) Verfahren und zentrales Drucksystem zum Verarbeiten eines Druckauftrags in einem Netzwerk unter Verwendung von ausgewählten Druckerattributen
DE3382691T2 (de) Bildschirmverwaltungssystem.
DE3587501T3 (de) Gerät, Verfahren und Struktur zur Umwandlung eines Dokumentes einer Struktur in ein Dokument einer anderen Struktur.
DE69024881T2 (de) Drucker-Initialisierungssystem
DE19842688B4 (de) Verfahren zum Filtern von Daten, die von einem Datenanbieter stammen
DE69133362T2 (de) Dokumentenverarbeitungs-verfahren und -gerät, entsprechende Program und Speichereinheit
DE60018306T2 (de) System und verfahren zum regressionstesten von druckerausgabe mit darstellungslisten
DE69907287T2 (de) Rechnersysteme
DE60219048T2 (de) Sektionsextrahierungswerkzeug für pdf-dokumente
DE68923569T2 (de) Verfahren und Apparat zum Formatieren eines Dokumentes.
DE68914046T2 (de) Verfahren zur Einschachtelung und Verarbeitung von gemischten Datenobjekten in einem Datenfluss mit selektiver Erbschaft der Umgebung.
DE10309241A1 (de) Drucken mit variablen Daten unter Verwendung einer dynamischen Ausschießvorlage
EP1213644A2 (de) Drucksystem und Verfahren zur Individualisierung eines Druckauftrags
DE10105941A1 (de) System und Verfahren zum automatischen Zuweisen eines Dateinamens zu einem gescannten Dokument
DE19800423A1 (de) Rechnerverfahren und -vorrichtung zur Vorabansicht von Dateien außerhalb eines Andwendungsprogramms
DE4313959C2 (de) Einrichtung und Verfahren zum Steuern der Darstellung eines Dokuments
DE19953608A1 (de) Vorrichtung und Verfahren zum genauen Erkennen eines Textfonts in einem Dokumentenverarbeitungssystem
DE19610759A1 (de) Verfahren zum Codieren eines Dokumentes und Verfahren zum Senden eines Dokumentes von einem Sendecomputersystem zu einem Empfangscomputersystem
DE3855063T2 (de) Datenverarbeitungseinheit und Verfahren zur Anzeige von graphischen Symbolen
DE69120458T2 (de) Steuersignale für Datenstromverarbeitung in einen Datenaustauschsystem
EP1161731B1 (de) Verfahren, computerprogrammprodukt und system zur übertragung von computerdaten an ein ausgabegerät
EP1211099A2 (de) Verfahren zum digitalen Drucken von zusammengesetzten Dokumenten
DE4313958A1 (de) Einrichtung und verfahren zum steuern der darstellung einer vorlage

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8330 Complete renunciation