DE69434371T2 - Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds - Google Patents

Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds Download PDF

Info

Publication number
DE69434371T2
DE69434371T2 DE69434371T DE69434371T DE69434371T2 DE 69434371 T2 DE69434371 T2 DE 69434371T2 DE 69434371 T DE69434371 T DE 69434371T DE 69434371 T DE69434371 T DE 69434371T DE 69434371 T2 DE69434371 T2 DE 69434371T2
Authority
DE
Germany
Prior art keywords
image
pasteboard
structured
attribute
component
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
DE69434371T
Other languages
English (en)
Other versions
DE69434371D1 (de
Inventor
Dennis L. Venable
Michael R. Campanelli
James E. Bollman
Takashi Ashigarakami-gun Nagao
William A. Fuss
Toshiya Ebina Yamada
Kazuya Ebina Yamada
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.)
Xerox Corp
Original Assignee
Xerox 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 Xerox Corp filed Critical Xerox Corp
Application granted granted Critical
Publication of DE69434371D1 publication Critical patent/DE69434371D1/de
Publication of DE69434371T2 publication Critical patent/DE69434371T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Document Processing Apparatus (AREA)

Description

  • Diese Erfindung betrifft einen Bildprozessor/-generator zum Darstellen eines Komplexfarbrasterbilds als eine Sammlung von Objekten in einem hierarchischen und vorrichtungsunabhängigen Format, und insbesondere einem Format eines strukturiertem Bilds (SI), das nicht nur Quelldaten, sondern auch die Bildverarbeitungsabläufe enthält, die zu ihrer Wiedergabe erforderlich sind, und erneute Bearbeitbarkeit, kundenspezifische Anpassung und Verbesserung, automatische Bildzusammensetzung und Hochleistungs-Bildaufbereitung unter Verwendung einer entsprechenden Benutzerschnittstelle unterstützt.
  • Im Handel erhältliche, heute verwendete Pakete erfordern zum Einsatz beträchtlichen Speicher. Beispielsweise speichert Adobe Photoshop® drei Kopien des Rasters in natürlicher Größe (full size rastet) beim interaktiven Bearbeiten. Somit kann ein typisches 24-Bit-Farbbild (216 × 279 mm bei 12 Punkten pro mm (81/2 × 11 Zoll bei 300 dpi)) 24 Megabyte Speicher für jede Bildkopie erfordern.
  • Des Weiteren weist handelsübliche Software beim Bearbeiten von umfangreichem Bildmaterial eine träge bis schlechte Leistung auf. Auch hier muss Photoshop®, wie oben erläutert, drei Kopien des Bilds speichern (unabhängig davon, wie groß es ist). Da jeder interaktive Vorgang das volle Bild verarbeitet, ist die Leistung extrem langsam.
  • Des Weiteren speichert die typische handelsübliche Software ausgegebenes Bildmaterial als vollständige Raster. Daher muss für jede neue Version eines Bilds ein vollständiges Raster ausgeschrieben werden, und die in diesen Versionen enthaltenen Vorgänge können nicht rückgängig gemacht werden. Bei 24 Megabyte pro Bild, wie oben erläutert, können die Plattenanforderungen sehr hoch sein. Das Archivieren von solchem Bildmaterial kann ebenfalls sehr großen Speicherplatz erfordern.
  • Des Weiteren besteht ein kritischer Bedarf an einem Bildprozessor im gewerblichen Druckbereich, der in der Lage ist, eine Auftragsvorlage zum Erstellen mehrerer kundenspezifischer Bilder zu erstellen. Falls überhaupt gibt es nur wenige Bildverarbeitungspa kete, mit denen die Erstellung von solchen Auftrags-Anwendungsvorlagen möglich ist. Des Weiteren verfügen handelsübliche Bildverarbeitungs-Softwarepakete, wie beispielsweise Photoshop®, über eine begrenzte Fähigkeit, das für die Ausgabevorrichtung optimierte Ausgabebild aufzubereiten. Normalerweise sind Farbkorrektur und einfache Auflösungsumwandlung alles, was angewendet werden kann.
  • Außerdem ist bei typischer handelsüblicher Bildverarbeitungs-Software die Fähigkeit, die Liste von Bildverarbeitungsvorgängen, die durch den Benutzer ausgeführt werden, zu bearbeiten, ebenfalls sehr eingeschränkt. Beispielsweise gestattet Photoshop® nur einen Rücksetzvorgang. Des Weiteren ermöglicht typische handelsübliche Software keine Optimierung der Bildverarbeitung. Das heißt, sobald ein Bild erstellt ist, geht die Fähigkeit zum Kombinieren von Vorgängen und Erhöhen der Leistung bei hochauflösendem Bildmaterial verloren.
  • Schließlich ist ein starkes Interesse der Industrie an der Theorie für strukturierte Dokumente und daran vorhanden, wie sich diese Technologie auf Produkte und Dienstleistungen auswirken kann. Die gegenwärtige Theorie für strukturierte Dokumente betrachtet ein Rasterbild als einen einfachen Inhaltsblock ohne hierarchische Natur oder damit verbundene Bildverarbeitungsvorgänge. In Bezug auf eine seitenorientierte Beschreibung siehe Zeitschrift IEEE Computer Graphics & Applications, März 1991, Seite 71-78, "Constructive Page Description" von J. Schonhut, H. Wiedling und V. Samara. In Bezug auf eine allgemeine Beschreibung von strukturierten Dokumenten siehe "Structured Documents" von J. Andre, R. Furuta und V. Quint, Cambridge Series in Electronic Publishing, 1989.
  • Ein benachbartes Gebiet, in dem eine Form von strukturierter Bildaufbereitung erstellt worden ist, sind grafische Benutzeroberflächen (GUI). Drei Beispiele für etablierte GUI-Dienstprogrammsammlungen sind Motif (siehe Heller und andere, "Motif Programming Manual", Band 6, O'Reilly & Associates, 1992), Tcl/Tk (siehe Ousterhout, "Tcl and the Tk Toolkit", Addison-Wesley, 1994) und Interviews (siehe Linton und andere, "Composing User Interfaces with Interviews", IEEE Computer, Band 22, Nr. 2, Seite 8 – 22, IEEE Press, 1989).
  • Es ist daher eine Aufgabe der Erfindung, die vorher genannten Nachteile zu verhindern, indem ein strukturiertes Bildformat bereitgestellt wird, das an Bildauflösungs-Bildmaterial mit minimalen Speicheranforderungen arbeiten kann und dennoch in der Lage ist, hochauflösende, hochwertige gedruckte Bilder zu erzeugen. Die strukturierte Bildaufbereitung ist eine grundlegende Technologie, die in der Lage ist, die gesamte Skala von Erfassen Speichern, Bearbeiten/Vorbereiten und Zuführen/Übertragen von Objekten, zur Ausgabe-Aufbereitung zu behandeln.
  • Gemäß einem ersten Gesichtspunkt der vorliegenden Erfindung wird eine elektronischer Bildgenerator bereitgestellt, umfassend:
    ein Erstellungsmodul, das in der Lage ist, eine strukturierte Bilddarstellung zu erstellen, wobei die Darstellung wenigstens ein Bildobjekt umfasst, das als wenigstens ein Raster aufbereitet werden kann, und wenigstens ein Pasteboard mit wenigstens einem Bildattribut, wobei jedes Pasteboard einen Bildrahmen aufweist, auf dem wenigstens eines von dem wenigstens einen Bildobjekt aufbereitet werden kann; und
    ein Aufbereitungsmodul in Verbindung mit dem Erstellungsmodul, wobei das Aufbereitungsmodul die Darstellung in ein sichtbares Bild aufbereiten kann; wobei das Aufbereitungsmodul das wenigstens eine Bildobjekt auf dem wenigstens einen Pasteboard mischen kann, um das sichtbare Bild in Übereinstimmung mit dem wenigstens einen Bildattribut des wenigstens einen Pasteboards zu bilden, und für jedes von den wenigstens einen Bildattributen wird das wenigstens eine Bildattribut mit einem von den wenigstens einen Pasteboards verknüpft statt mit irgendeinem von den wenigstens einen Bildobjekten;
    wobei wenigstens eines des wenigstens einen Bildobjekts und des wenigstens einen Bildattributs undefiniert bleibt, wenn die Darstellung durch das Erstellungsmodul erstellt wird, und das wenigstens eine des wenigstens einen Bildobjekts und des wenigstens einen Bildattributs während der Aufbereitung durch das Aufbereitungsmodul definiert wird.
  • Gemäß einem zweiten Gesichtspunkt der vorliegenden Erfindung wird ein Prozess zum elektronischen Generieren einer Darstellung eines strukturierten Bilds bereitgestellt, wobei der Prozess umfasst:
    Auswählen eines Bildobjekts, das als ein Raster aufbereitet werden kann, aus einem Speicher;
    Definieren eines Pasteboards, einschließlich wenigstens eines Bildattributs, wobei das Pasteboard einen Bildrahmen aufweist, auf den die Daten aufbereitet werden;
    Erstellen der Darstellung, die das Bildobjekt und das Pasteboard in Übereinstimmung mit dem wenigstens einen Bildattribut des Pasteboards umfasst, und
    Aufbereiten der Darstellung in ein Format, das angezeigt oder gedruckt werden kann, wobei das wenigstens eine Bildattribut mit dem Pasteboard und nicht mit dem Bildobjekt verknüpft ist;
    wobei das wenigstens eine des Bildobjekts und das wenigstens eine Bildattribut undefiniert bleiben, wenn die Darstellung erstellt wird, und das wenigstens eine des Bildobjekts und das wenigstens eine Bildattribut während der Aufbereitung definiert werden.
  • Die Erfindung stellt ein strukturiertes Bildformat bereit, das in der Lage ist, an Bildauflösungs-Bildmaterial interaktiv zu arbeiten und daher eine gute interaktive Leistung aufweist. Des Weiteren kann eine hochauflösende Ausgabe generiert werden, indem einfach angefordert wird, dass ein strukturiertes Bild mit hoher Auflösung aufbereitet oder gerastert wird. Der Aufbereitungsprozess verwendet automatisch geeignetes Quellenbildmaterial und vorrichtungsabhängige Informationen, um eine Aufbereitung für bestimmte Vorrichtungen vorzunehmen. Obwohl andere Bildeditoren Bildauflösungs-Bildmaterial verwenden können, wählt die strukturierte Bildaufbereitung die Auflösung des Bilds der Aufgabe entsprechend.
  • Es ist ein Merkmal der strukturierten Bildaufbereitung, Bildmaterial als eine Textdatei zu speichern, die Adressenverweise auf Komponentenobjekte enthält. Ausgaberaster werden erst generiert, wenn sie zum Anzeigen oder Drucken erforderlich sind. Daher können Hunderte von Versionen eines strukturierten Bilds in derjenigen Menge von Plattenspeicherplatz existieren, die normalerweise für ein Rasterbild erforderlich ist. Da eine strukturierte Bildaufbereitung die Raster der Komponentenobjekte in dem strukturierten Bild nicht speichert, wird die Verwendung von archiviertem Bildmaterial, wie beispielsweise Clip-Art, viel effizienter, da nur eine Kopie der Quelle erforderlich ist.
  • Die Erfindung stellt strukturierte Bilder bereit, die so erstellt werden können, dass sie nicht definierte Verweise auf Komponentenobjekte und Bildverarbeitungs-Parameter enthalten. Ein solches strukturiertes Bild kann aufbereitet werden, indem die nicht definierten Informationen beispielsweise als Befehlszeilen-Argumente bereitgestellt werden. Das strukturierte Bild kann viele Male mit verschiedenen Eingabedaten aufbereitet werden, um kundenspezifische Ausgaberaster zu generieren. Die Fähigkeit, über gültige strukturierte Bilder zu verfügen, die nicht definierte Verweise enthalten, ermöglicht kundenspezifische Anpassung und automatische Bildzusammensetzung.
  • Es ist ein weiteres Merkmal der Erfindung, strukturierte Bilder alle Komponentendaten in "nativer" Form speichern zu lassen (d.h. Text wird als ASCII gespeichert, Grafik wird im CGM-Format oder einem anderen geeigneten Format gespeichert usw.). Entsprechende Aufbereitungsprozeduren wandeln die native Form in Raster um, indem vorrichtungsabhängige Merkmale verwendet werden, um die Aufbereitung zu optimieren. Die richtige Skalierung ist der Aufbereitung von strukturierten Bildern inhärent.
  • Schließlich stellt die Erfindung strukturierte Bilder bereit, die Adressenverweise auf ursprüngliche Komponentendaten und eine Beschreibung aller Bildverarbeitungsvorgänge enthalten, die auf das Bild angewendet wurden. Das Bearbeiten von früheren Vorgängen kann genau so einfach sein wie das Bearbeiten einer Textdatei. Interaktive Editoren, die auf einem strukturierten Bild basieren, können das Bearbeiten der Vorgänge interaktiv entweder durch Textbearbeitung oder durch einen Editor für strukturierte Bilder gestatten. Bildverarbeitungsvorgänge können mit entsprechenden Benutzerbefehlen hinzugefügt, gelöscht oder modifiziert werden.
  • Um das Ziel der Erfindung zu erreichen und die oben erläuterten Nachteile zu überwinden, wird ein strukturiertes Bild definiert, das in seiner einfachsten Form durch eine Gruppe von Darstellungen und ein Pasteboard beschrieben wird, wobei das Pasteboard den "Bildrahmen" des strukturierten Bilds spezifiziert. Das Konzept von mehreren Rasterdarstellung wird in der Fachwelt verstanden und wird derzeit in einigen verfügbaren Anwendungen eingesetzt. Mit dem strukturierten Bild wird das Konzept von mehreren Darstellungen jedoch so erweitert, dass Nicht-Rasterdaten enthalten sind, wie beispielsweise Text, Grafik und Bildzusammensetzungen, welche die Bildverarbeitung und das Mischen von mehrere Komponentenobjekten umfassen. Komponentenobjekte, wie beispielsweise Text und Grafik, sind zur Bearbeitbarkeit in ihrem nativen Format gespeichert. Die Anforderungen an eine gültige Darstellung sind, dass sie in Rasterform aufbereitbar sein muss, und dass alle Darstellungen eines einzelnen strukturierten Bilds das gleiche "Aussehen" haben müssen, wenn sie aufbereitet wurden, d.h. alle Darstellungen müssen ein im Wesentlichen ähnliches Aufsehen aufweisen. Sie können unterschiedliche Maße oder Verschlüsselungen aufweisen, müssen aber deutliche Aufbereitungen des gleichen Bilds sein.
  • Andere Aufgaben, Vorteile und herausragende Merkmale der Erfindung werden aus der detaillierten Beschreibung offenkundig, die in Verbindung mit den Zeichnungen im Anhang die bevorzugten Ausführungsformen der Erfindung offenbart.
  • Im Folgenden wird auf die Zeichnungen Bezug genommen, die Bestandteil dieser ursprünglichen Offenbarung sind:
  • 1 ist ein Blockschaltbild, das allgemeine Komponenten zeigt, die mit dieser Erfindung verwendet werden können;
  • 2 ist eine grafische Darstellung, welche die Vielfalt von Datentypen zeigt, die ein strukturiertes Bildobjekt ergeben;
  • 3 ist eine grafische Darstellung, die ein Beispiel der Mehrfachdarstellungen (MR) (Multiple Representations) zeigt, die ein strukturiertes Bildobjekt ausmachen;
  • 4 ist eine grafische Darstellung, die eine Aufbereitung zum Aufrechterhalten des Seitenverhältnisses (AspectRatio) zeigt;
  • 5 stellt die verfügbaren Passungsmodus- (FitMode) Modelle grafisch dar, die definieren, wie Raster in den Maßen, die durch das Pasteboard definiert werden, in Übereinstimmung mit der Erfindung aufbereitet werden;
  • 6 und 7 stellen das Ausrichtungs- (Justification) Attribut der Erfindung grafisch dar, wobei 6 zeigt, wie das Ausrichtungsattribut verwendet wird, um anzugeben, dass das aufbereitete Raster innerhalb des Pasteboards an einer von neuen möglichen Stellen positioniert wird, und 7 drei Beispiele des Ausrichtungsattribut zeigt;
  • 8 stellt das Winkel- (Angle) Attribut der Erfindung grafisch dar, wobei die (a)-Seite von 8 das nicht gedrehte Pasteboard zeigt, und die (b)-Seite das gedrehte Pasteboard zeigt (Anmerkung: das Objekt wird um den Kontrollpunkt (Control-Point) gedreht);
  • 9 ist eine grafische Darstellung, die eine Aufbereitungskorrektur des Kontrollpunkts in Übereinstimmung mit der Erfindung zeigt;
  • 10 ist eine grafische Darstellung einer Bildverarbeitungsdefinition (IPD) (Image Processing Definition), wie sie sich auf das ausgegebene strukturierte Bild bezieht, die eine strukturierte Beschreibung von Verweisen auf Komponentenobjekte und Bildverarbeitungsvorgänge (IPOs) (Image Processing Operations) darstellt, die auf diese Komponentenobjekte angewendet werden;
  • 11 stellt den Fluss von Rasterdaten während der Aufbereitung eines strukturierten Bilds dar;
  • 12 ist eine grafische Darstellung, die zeigt, dass alle untergeordneten Objekte in dem übergeordneten Pasteboard an der Stelle gemischt werden, die vom Mischpunkt (MergePoint) (in Bezug auf das Objekt-Pasteboard) und vom Kontrollpunkt (in Bezug auf das untergeordnete Pasteboard) angegeben wird;
  • 13 ist eine grafische Darstellung, welche die Initialisierungsfunktion des Pasteboards zeigt, in diesem Falls das Initialisieren eines Pasteboards mit einem abgetasteten Textbild;
  • 14 ist eine grafische Darstellung, die ein (in Bezug auf Eingabe-Objekte) ungebundenes strukturiertes Bild in Übereinstimmung mit der Erfindung zeigt;
  • 15 ist eine grafische Darstellung, die ein (in Bezug auf die Bildverarbeitungsvorgänge und/oder Attribute) unvollständiges strukturiertes Bild in Übereinstimmung mit der Erfindung zeigt;
  • 16 ist eine grafische Darstellung, die eine objektorientierte Aufbereitung in Übereinstimmung mit der Erfindung zeigt;
  • 17 ist eine grafische Darstellung, die eine Verarbeitungsbaum-Aufbereitung (Processing-tree rendering) in Übereinstimmung mit der Erfindung zeigt;
  • 18 stellt ein beispielhaftes strukturiertes Bild mit dazugehöriger SID-Datei bereit, die in Übereinstimmung mit der Erfindung grafisch dargestellt ist;
  • 19ac stellen die SID-Dateien bereit, die mit dem in 18 gezeigten strukturierten Bild der obersten Ebene verknüpft sind;
  • 20ab stellt eine beispielhafte Mehrfachdarstellungs- (MR) Datei und eine grafische Darstellung davon dar;
  • 21 stellt die Interaktion zwischen Festpunkt (FixedPoint) und Kontrollpunkt in Übereinstimmung mit der Erfindung grafisch dar.
  • A. Systemübersicht
  • Die strukturierte Bildaufbereitung (SI) ist eine hierarchische Beschreibung eines zusammengesetzten Rasterbilds, das sich aus Komponentenbildern (d.h. untergeordneten Objekten) und den Bildverarbeitungsvorgängen (IPOs) zusammensetzt, die erforderlich sind, um das ausgegebene Rasterbild aufzubereiten. Jeder Datentyp, der als ein Raster aufbereitet werden kann, ist eine potenzielle Komponente einer strukturierten Bildaufbereitung. Die strukturierte Bildaufbereitung ist eine Voraussetzung für die einfache und schnelle Erstellung und Manipulation von komplexen Bildern, die in gedruckte Dokumente aufgenommen werden sollen.
  • Die strukturierte Bildaufbereitung kann in ein herkömmliches Hardware-System 100 (siehe 1) implementiert werden, das einen Mikroprozessor 110 zum Empfangen von Signalen von verschiedenen anderen Komponenten des Systems 100 und zum Ausgeben von Signalen an dieses gemäß einem oder mehreren Software-Programmen umfasst, die auf einem Mikroprozessor 110 gefahren werden. Eine Benutzer-Eingabevorrichtung 120, wie beispielsweise eine Maus, eine Tastatur, ein Berührungsbildschirm und/oder Kombinationen davon, wird bereitgestellt, um es einem Benutzer zu gestatten, mit der strukturierten Bildaufbereitung eine Schnittstelle herzustellen, beispielsweise durch Zuführen von Steuersignalen zu dieser. Eine Bild-Ausgabevorrichtung 130, wie beispielsweise ein Video-Anzeigebildschirm oder ein Drucker, kann zum Ausgeben von strukturierten Bilddaten vorgesehen sein. Eine Eingabevorrichtung 140 für strukturierte Bilder, wie beispielsweise eine Abtastvorrichtung, kann zum Abtasten von Bildern bereitgestellt werden, die dann im Speicher als Bildquellen gespeichert werden. Bildquellen können beispielsweise auch von Platten zugeführt werden.
  • Der Mikroprozessor 110 umfasst einen Festspeicher (ROM) 150 zum Speichern von Betriebsprogrammen und Bilddaten, die von der strukturierten Bildaufbereitung zum Konstruieren und Bearbeiten von Bildern verwendet werden. Ein Arbeitsspeicher (RAM) 160 wird zum Fahren der verschiedenen Betriebsprogramme bereitgestellt, und zusätzliche Dateien 170 können für RAM-Überlauf bereitgestellt werden.
  • Es ist jedoch wichtig, dass die strukturierte Bildaufbereitung auch in (nicht gezeigte) eingebettete Systeme sowie vernetzte Systeme implementiert werden kann, wo die verschiedenen Hardware-Komponenten vernetzt sind und sich am gleichen Ort befinden können oder nicht (ebenfalls nicht dargestellt). Es ist nicht erforderlich, dass das Hardware-System festverdrahtet ist. Das oben beschriebene herkömmliche Hardware-System ist nur als Beispiel angegeben und wird nicht mehr bevorzugt als die eingebetteten oder vernetzten Systeme.
  • A1. Definition der strukturierten Bildaufbereitung
  • Ein strukturiertes Bild wird definiert durch ein "Objekt", das eine Darstellung von Daten ist, die in ein Rasterbild aufbereitet werden können, und ein "Pasteboard", das einen "Bildrahmen" für das darauf aufzubereitende Objekt darstellt. Ein strukturiertes Bild hat keine absolute Größe, die in der Beschreibung des strukturierten Bilds spezifiziert ist. Die Größe jedes untergeordneten Objekts wird in dem Pasteboard als eine Größe bezüglich des dem untergeordneten Objekt übergeordneten Objekts (parent) gespeichert.
  • Zum Umwandeln eines strukturierten Bildobjekts in ein Rasterbild wird die ReadObject()-Aufbereitungsprozedur, siehe unten, über entsprechende Befehlsanweisungen aufgerufen, wobei beispielsweise die Benutzer-Eingabevorrichtung 120 mit dem Objekt, dem Pasteboard und den absoluten Maßen des übergeordneten Objekts als Parameter verwendet wird. Das strukturierte Bildobjekt und alle untergeordneten Objekte werden automatisch auf die richtige Ausgabegröße aufbereitet. Ein strukturiertes Bild wird durch eine strukturierte Bilddefinitions- (SID) (Structured Image Definition) Datei beschrieben.
  • Es sollte klar sein, dass ein strukturiertes Bildobjekt automatisch in die strukturierte Bilddefinition abgetastet werden kann, indem die entsprechende Abtast-Software für strukturierte Bildaufbereitung verwendet wird. Daher ist die interaktive Bearbeitung keinesfalls das einzige Verfahren zum Erstellen oder Vorbereiten einer strukturierten Bilddefinition für den Druck.
  • A2. Strukturiertes Bildobjekt
  • Ein strukturiertes Bildobjekt ist eine Darstellung von Daten (siehe 2), die in ein Rasterbild aufbereitet werden können. Diese Daten können einfache Rasterbilder darstellen, wie beispielsweise TiFF-Dateien, oder kompliziertere Daten, wie beispielsweise eine hierarchische Sammlung von untergeordneten Objekten und damit verknüpften Raster-Verarbeitungsvorgängen. Zu möglichen Objekt-Datentypen gehören:
    • 1) Rasterbild – TiFF, RES oder andere digitale Anzeige,
    • 2) Toy-Text - einfache Textanmerkung,
    • 3) CGM-Grafik - einfacher grafischer Vermerk,
    • 4) IPD – Bildverarbeitungsdefinition von strukturierten Bildern,
    • 5) MR-Datei - Datei mit einer Beschreibung von Mehrfach-Bilddarstellungen.
  • Ein wichtiges Merkmal der strukturierten Bildaufbereitungs-Technologie ist die Fähigkeit, Bildverarbeitungsvorgänge (IPOs) in der strukturierten Bilddefinition zu speichern. Der Objektdatentyp Bildverarbeitungsdefinition (IPD) stellt den Mechanismus zum Speichern von Bildverarbeitungsvorgängen bereit, wie im Folgenden ausführlicher erläutert wird.
  • Ein einzelnes strukturiertes Bildobjekt kann mehr als einen Datentyp und/oder eine Datendatei aufweisen. Beispielsweise (siehe 3) kann ein einzelnes strukturiertes Bildobjekt auf ein Verzeichnis verweisen, das mehrere TiFF-Dateien enthält, die mit unterschiedlichen Auflösungen gespeichert sind. Jede TiFF-Datei stellt das gleiche Bild dar, weist aber unterschiedliche absolute Pixelmaße und Fotometrie auf. Dieses Konzept ist als Mehrfachdarstellungen (MR) bekannt. Die strukturierte Bildaufbereitung spezifiziert mehrere Darstellungen, die dynamisch festzulegen sind, doch das MR-Dateiformat wird für diejenigen Anwendungen definiert, die explizite Spezifikationen von Mehrfachdarstellungen erfordern (wie im Folgenden beschrieben wird).
  • Das Objekt der obersten Ebene in einem strukturierten Bild, d.h. das Objekt, das kein übergeordnetes Objekt aufweist, wird als das Wurzelobjekt (root object) bezeichnet. Dieses wird in der Erläuterung des Objekt-Aufbereitungsprozesses im Folgenden ausführlicherbeschrieben.
  • A3. Pasteboard
  • Das Pasteboard ist der Bildrahmen, in den strukturierte Bildobjekte aufbereitet werden. Im Pasteboard können mehrere Attribute spezifiziert werden (3):
    • 1) Relative Größe (RelativeSize);
    • 2) Winkel (Angle);
    • 3) Passungsmodus (FitMode);
    • 4) Ausrichtung (Justification); und
    • 5) Kontrollpunkt (ControlPoint).
  • Das Pasteboard gibt die Größe des aufbereiteten Bilds relativ zu seinem übergeordneten Objekt an. Beispielsweise kann das auf ein untergeordnetes Objekt angewendete Pasteboard eine Größe wie (1,0, 0,5) in Bezug auf das übergeordnete Objekt angeben, wobei (1,0, 0,5) Breiten- und Höhenverhältnisse sind. Zum Aufbereitungszeitpunkt, wenn das übergeordnete Objekt so angegeben ist, dass es mit (1000 × 2000) Pixeln aufbereitet wird, würde das untergeordnete Objekt mit (1000 × 1000) Pixeln aufbereitet, weil durch das Pasteboard-Maß spezifiziert ist, dass das untergeordnete Objekt mit der vollen Breite, aber der halben Höhe aufzubereiten ist. Die standardmäßige relative Größe ist (1,0, 1,0).
  • Beim Aufbereiten eines strukturierten Bilds wird die relative Größe verwendet, um die absolute Größe des Pasteboards basierend auf der absoluten Größe des übergeordneten Objekts zu ermitteln (siehe 4). Aus Gründen einer Aufbereitung mit optimaler Qualität ist es jedoch unter Umständen vorzuziehen, das untergeordnete Objekt auf andere absolute Maße aufbereiten zu lassen als die Maße, die durch das Pasteboard und die Größe des übergeordneten Objekts festgelegt sind. Beispielsweise angenommen, das untergeordnete Objekt ist eine TiFF-Datei mit abgetastetem Text mit einem Seitenverhältnis von 10 zu 1 (Breite zu Höhe). Angenommen, das zugehörige Pasteboard weist eine relative Größe von (0,67, 0,33) auf. Das übergeordnete Objekt soll auf eine absolute Größe von (450 × 300) Pixel aufbereitet werden. Deshalb weist das untergeordnete Pasteboard eine absolute Größe von (300 × 100) auf. Würde die TiFF-Datei so skaliert, dass sie in dieses Fenster passt, würde sie in der y-Richtung um den Faktor 3 gestreckt, was den Text in hohem Maße verzerren würde. In diesem Fall könnte es vorzuziehen sein, den Text in dem ursprünglichen Seitenverhältnis aufzubereiten, um ihn in das gewünschte Pasteboard einzupassen, die TiFF-Datei könnte auf die Maße (300 × 30) skaliert werden, um das Seitenverhältnis von 10 zu 1 (Breite zu Höhe) beizubehalten.
  • Zum Unterstützen dieser Aufbereitungsart definiert die strukturierte Bildaufbereitung Passungsmodus- (FitMode) Attribute (siehe 5), um zu definieren, wie Raster in den Maßen aufbereitet werden, die durch das Pasteboard definiert sind. Diese Passungsmodi sind in 5 definiert. Alle Modi, ausgenommen Gesamtpassung (FitAII), behalten das Seitenverhältnis des Objekts bei. Allerdings wird das tatsächlich aufbereitete Rasterbild immer durch die Pasteboard-Größe begrenzt. Daher wird die eigentliche Größe des aufbereiteten Rasters durch die Überschneidung der Pasteboard-Größe und der Größe des aufbereiteten Objekts gemäß dem spezfizierten Passungsmodus definiert. In 5 ist das für den Außenpassungs- (FitOutside) Modus aufbereitete Objekt beträchtlich größer als das Pasteboard, aber das eigentliche aufbereitete Raster wird durch das Pasteboard begrenzt. Für den Innenpassungs- (FitInside) Modus) wird das Objekt so aufbereitet, dass es in das Pasteboard passt, wobei das Seitenverhältnis beibehalten wird. Deswegen kann das eigentliche aufbereitete Raster kleiner sein als das Pasteboard-Maß, wenn das Seitenverhältnis des Objekts nicht mit dem des Pasteboards übereinstimmt. Der standardmäßige Passungsmodus ist FitInside.
  • Strukturierte Bildobjekte können unter Verwendung der oben definierten Passungsmodi aufbereitet werden, doch kann es für einige Anwendungen wünschenswert sein, eine Kontrolle hinsichtlich der Stelle des aufbereiteten Rasters in Bezug auf die Größe des Pasteboards bereitzustellen. Das Ausrichtungs- (Justification) Attribut wird verwendet, um anzugeben, wo das aufbereitete Raster innerhalb des Pasteboards an einer von neun möglichen Stellen zu positionieren ist, wie in 6 gezeigt, wobei Beispiel in 7 dargestellt sind. Die standardmäßige Ausrichtung ist Mitte (Center). Das Ausrichtungs-Attribut wird ignoriert, wenn der Passungsmodus Gesamtpassung (FitAII) ist.
  • Jedes Attribut kann ein Winkel- (Angle) Attribut aufweisen, das zum Drehen des aufbereiteten Objekts verwendet wird. Das Ergebnis ist, dass das Objekt in das spezifizierte Pasteboard aufbereitet wird, und anschließend das Pasteboard um den Kontrollpunkt (ControlPoint) (siehe unten) um den in Grad angegebenen Winkel gedreht wird (siehe 8). Danach ist das verwendete Objekt-Aufbereitungsprogramm für die korrekte Ausführung der Aufbereitung des Objekts mit dem spezifizierten Winkel zuständig. Einige Aufbereitungsprogramme sind in der Lage, Objekte mit dem entsprechenden Winkel optimal aufzubereiten; andere Renderer können ein Rasterdrehungsprogramm nach der ersten Objektaufbereitung aufrufen. Diese Wahlmöglichkeit hängt von der Implementierung ab. Die tatsächliche Größe des aufbereiteten Rasters ist eine grafische Begrenzungslinie des gedrehten aufbereiteten Rasters, wie in 8b gezeigt. Der standardmäßige Drehwinkel ist 0,0 Grad.
  • Im Fall eines übergeordneten Objekts, das sich aus einer Gruppe von untergeordneten Objekten zusammensetzt, wird jedes untergeordnete Objekt aufbereitet und auf dem übergeordneten Pasteboard an einer Stelle gemischt, die als Mischpunkt (MergePoint) bekannt ist. Der Mischpunkt wird in Bezug auf das Pasteboard des übergeordneten Objekts spezifiziert. Der Kontrollpunkt ist der entsprechende Punkt in Bezug auf das Pasteboard des untergeordneten Objekts. Der Kontrollpunkt des untergeordneten Objekts muss mit dem Mischpunkt des übergeordneten Objekts in Deckung gebracht werden.
  • Beispielsweise führt ein Kontrollpunkt von (0,5; 0,5) dazu, dass das untergeordnete Objekt auf dem Mischpunkt zentriert wird. Der standardmäßige Kontrollpunkt-Wert ist (0,5; 0,5).
  • Der Kontrollpunkt (zusammen mit dem Mischpunkt) kontrolliert, wo ein aufbereitetes untergeordnetes Objekt auf dem Pasteboard eines übergeordneten Objekts gemischt wird. Innerhalb der strukturierten Bilddefinition werden der Kontrollpunkt und das mit dem untergeordneten Objekt verknüpfte Pasteboard in Koordinaten in Bezug auf das Pasteboard des untergeordneten Objekts angegeben. Allerdings füllt ein aufbereitetes untergeordnetes Objekt das angegebene Pasteboard nicht notwendigerweise, was von den Passungsmodus- und den Winkel-Attributen abhängt. Daher müssen die Aufbereitungsprogramme für jedes Objekt den Kontrollpunkt automatisch justieren, um die gleiche relative Position in Bezug auf das aufbereitete untergeordnete Objekt beizubehalten.
  • Als nächstes wird auf das Beispiel in 9 Bezug genommen. Der Kontrollpunkt befindet sich anfänglich in der Mitte des untergeordneten Objekts (0,5, 0,5) Nach der Aufbereitung mit dem Passungsmodus Passung wie vorgegeben (FitAsls), wobei das untergeordnete Objekt nach Oben rechts (TopRight) ausgerichtet wird, wird der Kontrollpunkt automatisch auf den absoluten Wert (–15, 30) ausgerichtet. Dadurch wird veranlasst, dass der Mischvorgang das aufbereitete Raster an der erwarteten Position positioniert. Um das Beispiel verständlich zu machen, ist für das untergeordnete Objekt in der strukturierten Bilddefinition die Größe (0,3, 0,6) angegeben. Die Aufbereitung gibt an, dass die Größe des übergeordneten Objekts (200 × 100) ist, somit ist die geforderte untergeordnete Größe 60 × 60. Der Passungsmodus gibt jedoch FitAsls an. Das eigentliche untergeordnete Objekt wird mit 15 × 45 gespeichert, somit ist das aufbereitete Raster 15 × 45. Die Ausrichtung gibt TopRight an, damit wird das 15 × 45-Raster oben rechts der geforderten 60 × 60-Größe positioniert, so dass der Anfang des aufbereiteten Rasters bei (45, 0) in Bezug auf das geforderte Raster legt. Da die Rastergröße, die sich den Pfad nach oben bewegt, die Größe des aufbereiteten untergeordneten Objekts aufweist und nicht die 60 × 60-Größe des geforderten untergeordneten Objekts, muss der Kontrollpunkt justiert werden, um die Verschiebung in Bezug auf das eigentliche aufbereitete untergeordnete Objekt widerzuspiegeln. Der Kontrollpunkt wird in Bezug auf die geforderte Größe des untergeordneten Objekts zu (30, 30) zugewiesen. Da der Anfang des aufbereiteten untergeordneten Objekts in Bezug auf den Anfang der geforder ten Größe bei (45, 0) liegt, ist leicht zu erkennen, dass der Kontrollpunkt bei (30 – 45, 30 – 0) = (–15, 30) in Bezug auf das aufbereitete untergeordnete Objekt liegt (siehe 9).
  • Kontrollpunkt-Informationen werden in den Kopfdaten des aufbereiteten Rasterbilds gespeichert. Auf diese Weise stehen Kontrollpunkt-Informationen für alle Bildverarbeitungsvorgänge zur Verfügung, die davon Kenntnis haben müssen. Insbesondere der Bildverarbeitungsvorgang Räumliche Transformation (SpatialTransform) muss den Kontrollpunkt gemäß der spezifizierten Transformation richtig justieren, wie in den folgenden Beispielen gezeigt wird.
  • A4. ReadObject
  • ReadObject() ist eine Prozedur (Objektleseprozedur), die ein strukturiertes Bildobjekt in ein Rasterbild umwandelt, das zur weiteren Verarbeitung geeignet ist. ReadObject() verwendet ein Pasteboard, ein strukturiertes Bildobjekt, (gleichgültig, ob erstellt oder abgetastet), und die absolute Größe des übergeordneten Objekts als Parameter. In dem Fall des Wurzelobjekts (RootObject) ist die angegebene Größe das gewünschte Ausgabebildmaß und das Feld für relative Größe des Pasteboards ist normalerweise leer, was den Standardwert von (1,0, 1,0) impliziert. Andere Informationen können an ReadObject() übergeben werden, wenn solche Informationen verwendet werden können, um die Qualität der Objektaufbereitung zu verbessern.
  • ReadObject() führt mehrere Vorgänge aus, um das entsprechende Rasterbild aufzubereiten:
    • 1) Festlegen der absoluten Pasteboard-Größe;
    • 2) Festlegen aller Darstellungen, auf die durch das Objekt verwiesen wird;
    • 3) auf der Basis verfügbarer Informationen Auswählen einer entsprechenden Darstellung zum Aufbereiten;
    • 4) Aufbereiten von Daten in Raster gemäß Passungsmodus, Ausrichtung und (möglicherweise) Winkel, indem eine entsprechende Aufbereitungsprozedur aufgerufen wird;
    • 5) Drehen des aufbereiteten Rasters in dem durch das Winkel-Attribut angegebenen Winkel, (falls nicht in Schritt 4 durchgeführt); und
    • 6) Justieren der Kontrollpunkt-Position. Die Ausgabe der ReadObject()-Prozedur ist ein Rasterbild des aufbereiteten Objekts.
  • Der Kontrollpunkt wird in den Kopfdaten des Rasterbilds in dem Koordinatensystem des Rasterbilds angegeben.
  • ReadObject() ermittelt die absolute Pasteboard-Größe, indem die Maße des übergeordneten Objekts mit der im Pasteboard angegebenen relativen Größe multipliziert werden. Wenn keine Pasteboard-Größe angegeben ist, wird eine relative Größe von (1, 1) angenommen. Wenn beispielsweise die angegebene Größe (1000 × 2000) und die relative Größe (1,0, 0,5) war, ist die absolute Größe des Pasteboards (1000 × 1000). Es kann sein, dass das eigentliche aufbereitete Objekt, abhängig von den oben erläuterten Attributen von Passungsmodus und Winkel, diese Größe nicht aufweist.
  • Ein strukturiertes Bildobjekt arbeitet als ein Verweis auf eine Datendatei oder Darstellung, die in ein Rasterbild aufbereitet werden können. Die Darstellung kann eine von mehreren Arten aufweisen, wie beispielsweise Raster, Text und/oder Vektorgrafik. Ein Objekt kann des Weiteren auf mehrere Darstellungen verweisen, von denen jede das gleiche Bild darstellt, das sich aber in dem Speicherformat, der Größe und/oder Auflösung unterscheidet. Wenn ReadObject() aufgerufen wird, muss ermittelt werden, welche Darstellung die "beste" Darstellung zum Aufbereiten ist, indem die Finder()-Prozedur (Suchprozedur) aufgerufen wird. Finder() sucht alle Darstellungen, auf die durch das Objekt verwiesen wird und wählt aus, welche Darstellung zum Aufbereiten am geeignetsten ist.
  • Sobald eine Darstellung ausgewählt worden ist, muss sie in ein Rasterbild aufbereitet werden. Jeder unterstützte Datentyp muss eine damit verknüpfte Aufbereitungsprozedur aufweisen, um die Darstellung in ein Rasterbild umzuwandeln. Diese Aufbereitungsprozeduren müssen die Attribute von Passungsmodus und Winkel unterstützen. Vorzugsweise werden die folgenden Datentypen unterstützt:
  • Figure 00160001
  • Figure 00170001
  • Die Render()-Prozedur (Aufbereitungsprozedur) kann die Drehwinkel direkt in die Objekt-Aufbereitung aufnehmen oder einen Rasterdrehungsvorgang auf das gerasterte Objekt anwenden. Beispielsweise weisen verfügbare Textaufbereitungsprogramme die Fähigkeit auf, Text direkt in einem angegebenen Winkel aufzubereiten, was zu einer besseren Qualität führt als eine horizontale Aufbereitung mit anschließender Rasterdrehung.
  • Wie vorher erläutert, muss der Kontrollpunkt justiert werden, um die gleiche relative Position des aufbereiteten Objekts und des Mischpunkts abhängig von Passungsmodus, Ausrichtung und Winkel beizubehalten. Für diese Justierung und das Einfügen des justierten Kontrollpunkts in die Rasterbild-Kopfdaten ist ReadObject() zuständig, um ihn damit allen Bildverarbeitungsvorgängen zur Verfügung zu stellen, die ihn ebenfalls justieren können (wie beispielsweise SpatialTransform).
  • A5. Finder
  • Die ReadObject()-Prozedur ruft die Finder()-Funktion auf, um Objektdaten zum Aufbereiten in ein Ausgaberasterbild zu suchen und zurückzugeben. Die Finder()-Prozedur führt sechs Aktionen in Übereinstimmung mit der Aufbereitung eines strukturierten Bilds aus:
    • 1) Suchen aller Darstellungen des Objekts;
    • 2) Identifizieren der Art jeder Darstellung (TiFF, Text, Grafik);
    • 3) Festlegen von Attributen für jede Darstellung, die zum Auswählen der besten Darstellung notwendig sind;
    • 4) Anwenden einer Vorzugsfunktion (merit function) auf jede verfügbare Darstellung und Auswählen der Darstellung mit dem höchsten Vorzugswert;
    • 5) Zurückgeben eines Adressenverweises auf die Darstellungsdaten; und
    • 6) Zurückgeben des Darstellungs-Datentyps.
  • Der Finder()-Mechanismus ist notwendigerweise abhängig von der speziellen Implementierung. Einige Feststellungen hinsichtlich der Funktionalität lassen sich jedoch treffen.
  • In der aktuellen Syntax der strukturierten Bilddefinitionssprache (Structured Image Definition Language) (SIDL) kann ein strukturiertes Bildobjekt in einer von drei Arten beschrieben werden (der folgende Quellcode unterliegt dem Copyright-Schutz und kann auf dem vorher beschriebenen Hardware-System ausgeführt werden):
  • Figure 00180001
  • Ein als Extern (External) definiertes Objekt ist derart, dass Daten, auf die durch das Objekt verweisen wird, nicht in der aktuellen strukturierten Bilddefinition gespeichert werden. Normalerweise werden die eigentlichen Daten in einer getrennten Datei gespeichert. Das Feld System ist eine Beschreibung, das der Finder() verwendet, um zu ver stehen, wie die Daten zu finden sind. Die Eingabe für Name ist eine Gruppe von Schlüsselbegriffen, die der Finder() verwendet, um die gewünschten Daten tatsächlich zu suchen. In dem obigen Beispiel wird der Finder() implementiert, um vorauszusetzen, dass eine Eingabe für System von "UNIX®" angibt, dass die eigentlichen Daten gefunden werden, indem ein entsprechender UNIX®-Datei-Systempfad nach einer Datei mit der Eingabe "bird.TiF" durchsucht wird. Hätte die Eingabe für System "SYBASE®" gelautet, würde der Finder() die Schlüsselbegriffe im Feld Name als Schlüsselbegriffe zum Durchsuchen einer SYBASE®-Datenbank nach den Daten verwenden.
  • Ein als Intern (Internal) definiertes Objekt enthält die Daten, die direkt in der strukturierten Bilddefinition gespeichert sind. Dies ist nützlich, um kleine Objekte, wie beispielsweise Rastersymbole oder einfache Textdateien direkt in der strukturierten Bilddefinition zu speichern, wodurch kein externen Speicher erforderlich wird.
  • Die Bildverarbeitungsdefinition ist ein Objektdatentyp für strukturierte Bilder, der es ermöglicht, dass ein strukturiertes Bild aus anderen strukturierten Bildobjekten und Bildverarbeitungsvorgängen zusammengesetzt werden kann. Basierend auf den Informationen, die in dem strukturierten Bildobjekt gespeichert sind, muss der Finder() alle verfügbaren Darstellungen suchen und den Datentyp und alle Attribute festlegen, die zum Auswählen der "besten" Darstellung" für die Aufbereitung erforderlich sind. Die zum Implementieren dieser Funktionen verwendeten Mechanismen/Protokolle sind in der strukturierten Bildaufbereitung nicht definiert, aber es ist klar, dass solche Mechanismen vorhanden sind und zum Einsatz hierin zur Verfügung stehen.
  • Sobald alle Darstellungen ermittelt sind, muss der Finder() die geeignetste Darstellung zum Aufbereiten in das Ausgabe-Rasterbild auswählen. Der Mechanismus wird durch Anwenden einer Vorzugsfunktionsberechnung auf jede Darstellung implementiert. Die genaue Vorzugsfunktion ist implementierungsabhängig und ist in der strukturierten Bildaufbereitung nicht definiert; sie sollte jedoch auf Attributen der Darstellungen, den gewünschten Ausgabebild-Attributen, der Ziel-Ausgabevorrichtung (z.B. Schwarz/Weiß-Drucker, Farbanzeige) und der Verarbeitungskomplexität beruhen. Sobald eine Darstellung ausgewählt worden ist, gibt der Finder() einen Adressenverweis auf die eigentlichen Daten und den Datentyp an ReadObject() zurück, damit die Verarbeitung beginnen kann.
  • A6. Bildverarbeitungsdefinition (IPD)
  • Wie oben erläutert ist die Bildverarbeitungsdefinition eine strukturierte Bildobjektart, die es ermöglicht, dass ein strukturiertes Bild aus anderen strukturierten Bildobjekten und Bildverarbeitungsvorgängen zusammengesetzt werden kann. Die Bildverarbeitungsdefinition stellt eine strukturierte Beschreibung von Verweisen auf Komponentenobjekte und Bildverarbeitungsvorgänge dar, die auf diese Komponentenobjekte angewendet werden. 10 ist eine grafische Darstellung einer Bildverarbeitungsdefinition.
  • Eine Bildverarbeitungsdefinition besteht aus Verweisen auf die folgenden Deskriptoren:
    • 1) Standardgröße;
    • 2) ReadObject;
    • 3) Pfad;
    • 4) Bildverarbeitungsvorgang;
    • 5) Mischen;
    • 6) Pasteboard;
    • 7) Initialisierungsprogramm; und
    • 8) Komponenten-Pasteboard.
  • In 10 ist jede vertikale Linie, die als Pfad bezeichnet wird, eine Sammlung von Bildverarbeitungsvorgängen. ReadObject stellt eine Prozedur dar, die ein strukturiertes Bildobjekt in eine Rasterbild umwandelt, das zum Verarbeiten durch den Bildverarbeitungsvorgang in dem Pfad geeignet ist. Das aufbereitete Objekt fließt durch den Pfad und wird nacheinander von jedem Bildverarbeitungsvorgang verarbeitet. In jedem Pfad wird ein Pasteboard gespeichert, das von ReadObject zum Definieren eines "Bildrahmens" verwendet wird, in den das strukturierte Bildobjekt aufbereitet wird. Dieses Pasteboard wird als Komponenten-Pasteboard bezeichnet. Die horizontale Linie ist das Pasteboard des Bildverarbeitungsdefinitions-Objekts und stellt ein "leeres" Rasterbild dar, auf das die Komponenten-Pasteboards gemischt werden. Die schwarzen Dreiecke stellen Misch- (Merge) Vorgänge dar, in denen Komponenten-Pasteboards auf das Pasteboard des Objekts kombiniert werden. Die Mischreihenfolge von Komponenten-Pasteboards ist explizit, wodurch eine Richtung von "oberen" und "unteren" Bildern un terstützt wird. 11 stellt den Fluss von Rasterdaten während der Aufbereitung eines strukturierten Bildes dar (d.h. den Kontrollfluss von ReadObject zu Merge).
  • Jede Bildverarbeitungsdefinition muss Informationen enthalten, die eine Standardgröße für die Bildverarbeitungsdefinition angeben. Diese Informationen werden für die Aufbereitungsprogramme als ein Hinweis in der aktuellen Sprache der Bildverarbeitungsdefinition in Bezug auf die Größe verwendet, in die das Bild aufbereitet werden sollte, wobei diese Informationen vorzugsweise als eine Seitenverhältnis- und Standardbreite-Zeichenfolge gespeichert werden. Zum Beispiel:
  • Figure 00210001
  • Das Feld Seitenverhältnis (AspectRatio) wird durch das Verhältnis von Höhe zu Breite definiert. Das Feld Standardbreite (DefaultWidth) ist eine Zeichenkette, die eine Breite und eine Maßeinheit definiert. Mögliche Maßeinheiten sind: Zoll, cm, mm, m, Punkt und Pixel.
  • Bildverarbeitungsvorgänge sind vorrichtungsunabhängige Beschreibungen von Bildverarbeitungsbefehlen. Nur ein Bildverarbeitungsvorgang wird gegenwärtig in der strukturierten Bildaufbereitung spezifiziert: der Bildverarbeitungsvorgang Räumliche Transformation (SpatialTransform), der in den folgenden Beispielen ausführlicher erläutert wird. Es ist jedoch klar, dass zusätzliche Bildverarbeitungsvorgänge implementierungsabhängig sind. Von diesen werden gewisse grundlegende Funktionen als wesentlich betrachtet und sind bevorzugte Bildverarbeitungsvorgänge, wie folgt:
    • 1) Übertrager: übertragt räumlich die Größe oder Form eines Bilds (z.B. affin, verzogen);
    • 2) Formatierer: wandelt Pixel von einem Format in ein anderes um (z.B. Convert, Interleave, Cspace);
    • 3) Filter: wendet verschiedene Filtervorgänge an (z. B. Convolve, Median, morphologisch);
    • 4) Colorizer: stimmt den Farbwert von Bildern ab (z.B. relativ, absolut, Kontrast, Weißpunkt);
    • 5) Maske: wendet Maskenvorgänge an (z.B. hinzufügen, extrahieren, umwandeln, anwenden); und
    • 6) Sonstige: wenden andere sonstige Vorgänge an.
  • Ein Bildverarbeitungsvorgang kann den Auswahlbereich seines Vorgangs spezifizieren. Eine Auswahl ist eine Beschreibung dessen, welche Pixel in einem Bild in einem speziellen Vorgang verarbeitet werden sollen. Beispielsweise kann die Auswahl Bitmaps oder eine mathematische Beschreibung von Bereichen umfassen. Normalerweise sind die Auswahlwerte binärer Natur, d.h. ein Pixel wird entweder verarbeitet oder nicht verarbeitet. Ein "grauer" Auswahlwert verursacht, dass der Ausgabepixelwert zwischen dem ursprünglichen Pixelwert und dem verarbeiteten Pixelwert skaliert wird.
  • Wie in 12 gezeigt wird, werden alle untergeordneten Objekte in einer Bildverarbeitungsdefinition in das übergeordnete Pasteboard an der Stelle gemischt, die vom Mischpunkt (in Bezug auf das übergeordnete Pasteboard) und vom Kontrollpunkt (in Bezug auf das untergeordnete Pasteboard) angegeben wird. Die Mischreihenfolge ist in der Bildverarbeitungsdefinition explizit.
  • Normalerweise weist das Pasteboard eines Bildverarbeitungsdefinitions-Objekts ein "leeres" Raster auf, auf das Komponenten-Pasteboards gemischt werden. Es ist möglich, ein Pasteboard mit einer Farbe, einem Muster oder sogar einem Rasterbild unter Verwendung des Initialisierungsprogramms (siehe 13) zu initialisieren. Ein Initialisierungsprogramm ist eigentlich ein Pfad, der ein ReadObject() und Bildverarbeitungsvorgänge enthält. Die Einschränkung ist, dass die relative Größe (1,0, 1,0) betragen muss, und dass keine Bildverarbeitungsvorgänge für räumliche Transformation in dem Pfad vorhanden sind. Das Pasteboard hat die Größe des aufbereiteten Initialisierungsprogramms. Normalerweise wird das Initialisierungsprogramm zum Verändern der Farbschemata (colorize) des Pasteboards oder zum Initialisieren des Pasteboards mit einem Hintergrund-Rasterbild verwenden.
  • B. Ungebundene/unvollständige strukturierte Bilder
  • Die Erfindung ermöglicht es des Weiteren, dass strukturierte Bilder definiert werden können, die Felder in der strukturieren Bilddefinition aufweisen, die als undefiniert gekennzeichnet sind. Solche Felder sind Platzhalter für Daten, die dynamisch an das strukturierte Bild gebunden werden und laufzeit- (aufbereitungszeit-) spezfisch sind. Es gibt zwei Klassifizierungen für undefinierte Felder:
    • 1) ungebundene (Unbound) strukturierte Bilder; und
    • 2) unvollständige (Incomplete) strukturierte Bilder.
  • B1. Ungebundenes strukturiertes Bild
  • Im Allgemeinen sind Komponentenobjekte eines strukturierten Bilds nicht in der strukturierten Bilddefinition selbst enthalten, sondern es wird auf sie durch Felder von strukturierten Bildobjekten verwiesen (wie beispielsweise die Felder System und Name eines externen Objekts). In der gegenwärtigen Syntax der strukturierten Bilddefinitionssprache können dieses Felder als undefiniert gekennzeichnet werden. Dies ermöglicht die dynamische Bindung von Daten an das strukturierte Bild.
  • Angenommen eine interaktive Bearbeitungssitzung, in der ein Benutzer ein strukturiertes Bild zum Drucken erstellt. Das strukturierte Bild soll nur einmal verwendet und dann verworfen werden. Der Benutzer erstellt das strukturierte Bild unter Verwendung eines interaktiven Editors für strukturierte Bilder, (wobei dies wiederum nur eine beispielhafte Möglichkeit zum Erstellen eines strukturierten Bilds ist, und sie ist nicht notwendigerweise bevorzugter als die Erstellung mit einer Vortage oder automatische Erstellung unter Verwendung einer geeigneten Abtast-Software). Alle Komponenten des strukturierten Bilds sind bekannt und definiert. Nach der Beendigung druckt der Benutzer das strukturierte Bild und der Auftrag ist abgeschlossen. Die strukturierte Bilddefinition, die zum Beschreiben dieses strukturierten Bilds generiert wurde, ist als vollständig gebunden bekannt, was bedeutet, dass alle Komponenten vor der Aufbereitung definiert wurden. Das heißt, dass vollständig gebunden bedeutet, dass alle Objekte in der Bildverarbeitungsdefinition auf definierte Dateneinheiten verweisen, bevor die Ausgabe des strukturierten Bildrasters aufbereitet wird.
  • In vielen Anwendungen sind vollständig gebundene Bilder für den Auftrag jedoch nicht angemessen. Angenommen, beispielsweise ein Werbefachmann generiert eine Broschüre, in der eine Komponente des Bilds abhängig vom geografischen Verkaufsort verändert werden muss. Alle möglichen Bilder dieser Komponente sind in einer Datenbank gespeichert. Der Werbefachmann kann die Eingabe für System in einem externen Objekt definieren, um das Datenbanksystem zu identifizieren, z.B. SYBASE®, aber das Feld Name wird als undefiniert gekennzeichnet. Zur Laufzeit kann der korrekte Schlüsselbegriff dynamisch an das Objekt gebunden werden, um für jeden ein gefordertes Ausgabebild zu generieren. Unter Verwendung dieses Verfahrens kann ein einzelnes strukturiertes Bild verwendet werden, um viele verschiedene Ausgabebilder zu generieren. Ungebundene Bilder sind gültige strukturierte Bilder, aber sie erfordern zusätzliche Informationen zur Laufzeit, die aufbereitet werden müssen.
  • Insbesondere weist das strukturierte Bild keine Präferenz von Gebundenen oder Ungebundenen Bildern auf, die Auswahl hängt von der Anwendung ab (siehe 15 hinsichtlich einer repräsentativen Benutzer-Anzeigevorrichtung, wobei ungebundene strukturierte Bildaufbereitung verwendet wird.
  • B2. Das unvollständige strukturierte Bild
  • Ähnlich wie beim Konzept der ungebundenen Bilder ermöglicht es die Erfindung, dass Parameter von Bildverarbeitungsvorgängen undefiniert sind. Auch ein Bildverarbeitungsvorgang selbst kann undefiniert sein. Beispielsweise angenommen, ein Werbefachmann erstellt eine Broschüre, die Bilder von Fahrzeugen enthält, wobei die Farbe eines Fahrzeugs zwischen den Druckvorgängen geändert werden muss. Der Werbefachmann kann separate Bilder des Fahrzeugs mit allen möglichen Farben haben und eine dynamische Bindung der strukturierten Bilddefinition verwenden. Der Werbefachmann kann sich aber auch dafür entscheiden, ein einzelnes Fahrzeugbild zu verwenden und die gewünschte Farbe als ein Argument an die Aufbereitungsprozeduren zur dynamischen Bindung an den Bildverarbeitungsvorgang zu übergeben. Wenn der Farbwert zur Laufzeit nicht bereitgestellt wird, kann die Aufbereitung des Ausgaberasters nicht erfolgen. Dies ist als "unvollständiges" strukturiertes Bild bekannt (siehe 15). Ein unvollständiges strukturiertes Bild ist eines, in dem irgendein Teil der strukturierten Bilddefinition nicht definiert ist und zur Laufzeit gebunden werden muss. Unvollständige strukturierte Bilder sind gültige strukturierte Bilder, aber sie können ohne zusätzliche Informationen nicht aufbereitet werden.
  • B3. Aufbereiten von ungebundenen/unvollständigen strukturierten Bildern
  • Beim Aufbereiten eines ungebundenen strukturierten Bilds sind zwei wichtige Gesichtspunkte offenkundig:
    • 1) Bindungsmechanismus; und
    • 2) Aufbereitungsmodell.
  • Der Mechanismus, mit dem ungebundene strukturierte Bilder dynamisch gebunden werden, hängt von der Implementierung ab. Vier mögliche Mechanismen werden hier identifiziert, doch können andere möglich sein:
    • 1) Anforderung, dass das strukturierte Bild immer ein "vollständiges Bild" darstellt; wenn das strukturierte Bild ungebunden/unvollständig ist, Durchführen eines Vorfiltervorgangs zum Modifizieren der strukturierten Bilddefinition.
    • 2) Verwenden des aktuellen Verweis-Bindungsmechanismus. Die strukturierte Bilddefinitions-Datei kann urdefinierte Verweise und Bindungsinformationen wie beschrieben in einer anderen Datei als "Tag"-Definitionen enthalten, die undefinierten Verweisen in der strukturierten Bilddefinitionssprache entsprechen. Die Bindung wird ausgeführt, indem die strukturierte Bilddefinitions-Datei und die Bindungsinformationen verkettet werden, um eine vollständige strukturierte Bilddefinition zu erstellen;
    • 3) Spezifizieren der Bindungsinformationen als Parameter für den Renderer des strukturierten Bilds; oder
    • 4) Aufnehmen eines dynamischen Bindungsverfahrens, das automatisch aufgerufen wird, in die Finder()-Prozedur, um für jedes ungebundene/unvollständige Feld in der strukturierten Bilddefinition eine Entsprechung zu erstellen.
  • Zu Erfindungszwecken werden alle der oben beschriebenen Bindungsmechanismen bevorzugt, doch ist klar, dass die Wahl zwischen den verschiedenen Mechanismen von der Implementierung abhängt.
  • Für bestimmte Anwendungen kann ein strukturiertes Bild Felder aufweisen, die zur Aufbereitungszeit nicht vollständig gebunden werden können. Beispielsweise angenommen ein Dokument, in dem jede Seite ein strukturiertes Bild ist, das sechs identische untergeordnete Objekte enthält, die zur Aufbereitungszeit gebunden werden müssen, z.B. eine Immobilienauflistung, in der jedes untergeordnete Objekt einem zum Verkauf stehenden Haus entspricht. Angenommen, das Dokument soll insgesamt neun Häuser anzeigen. Dies würde zwei Dokumentseiten erfordern, doch sind nur drei der untergeordneten Objekte auf der zweiten Seite erforderlich. Der Renderer des strukturierten Bilds kann in drei Modellen arbeiten, obwohl andere möglich sein können:
    • 1) Fehlschlag mit einem ungebundenen Fehler;
    • 2) ungebundene Objekte ignorieren, unvollständige Bildverarbeitungsvorgänge als Nicht-Vorgänge behandeln; und
    • 3) nur das Pasteboard von ungebundenen Objekten aufbereiten, unvollständige Bildverarbeitungsvorgänge als Nicht-Vorgänge behandeln.
  • Alle drei Modelle werden für den Einsatz mit der Erfindung bevorzugt, doch wird anerkannt, dass die Wahl von der Anwendung abhängt.
  • C. Aufbereitung
  • Obwohl das Aufbereiten in der strukturierten Bilddefinitionssprache nicht speziell definiert wird, wird hierin aus Klarheitsgründen eine kurze Erläuterung bereitgestellt. In echten Aufbereitungsprozessen können einige Aufbereitungsverfahren ausgewählt werden entsprechend den Umständen, wie beispielsweise Zweck, Priorität, Ressourcen und so weiter. Die Aufbereitung ist ein implementierungsspezifischer Vorgang, doch ist klar, dass alle Implementierungen von Aufbereitungsprogrammen von strukturierten Bildern eine gleichwertige Ausgabe eines vorgegebenen strukturierten Bilds und eine vorgegebene Ausgabevorrichtung erzeugen müssen. Es wird nicht erwartet, dass die Ergebnisse genau identisch sind, weil leichte Unterschiede bei den Bildverarbeitungsprogram men unterschiedliche Ergebnisse erzeugen; die Ausgaben müssen jedoch angemessen sein. Diese Feststellung ist ungefähr so, als sagte man, das verschiedene C-Compiler zwar keinen identischen Maschinencode generieren müssen, dass aber alle Compiler einen funktionierenden Maschinencode generieren müssen Zum Aufbereiten von strukturierten Bildern wurden zwei Vorgehensweisen untersucht:
    • 1) objektoientiertes Aufbereiten; und
    • 2) Verarbeitungsbaum-Aufbereitung.
  • C1. Objektorientierte Aufbereitung
  • Objektorientierte Aufbereitung (siehe 16) ist ein Verfahren zum direkten Analysieren eines Objektbaums von oben nach unten (top-down parsing) und entsprechendem fortlaufendem Aufbereiten jedes Objekts (strukturierten Bilds). Wenn ein strukturiertes Bild eine Nachricht "Aufbereiten" empfängt, wird es mit vorgegebenen Größen- und Auflösungsattributen oder Maßattributen aufbereitet. Wenn andere Komponenten zur Erstellung des strukturierten Bilds benötigt werden, sendet das Objekt die Nachricht "Aufbereiten" an die Komponentenobjekte und ruft die Ausgabebilder ab. Objektorientierte Aufbereitung ist die direkte Ausführung eines Objektbaums, den man sich am besten als "Interpretation" eines Objektbaums vorstellt. Objektorientierte Aufbereitung ist am besten für Aufbereitung in interaktiven Bearbeitungssituationen geeignet.
  • C2. Verarbeitungsbaum-Aufbereitung
  • Ein Verarbeitungsbaum ist eine gezielte azyklische grafische Darstellung von Bildverarbeitungsbefehlen, die vorrichtungsabhängig und auflösungsabhängig sind (siehe 17). Ein Verarbeitungsbaum entwickelt sich durch Erweitern der strukturierten Bilddefinition, die mit allen verschachtelten strukturierten Bildern verknüpft ist, zu einem einzigen strukturierten Bild und wendet dann vorrichtungsabhängige Informationen an, um alle Koordinaten und Maße in absolute, vorrichtungsabhängige Werte umzuwandeln. Dateninhalte, auf die durch Darstellungseingaben verwiesen wird, werden in Raster aufbereitet. Da der Verarbeitungsbaum vorrichtungsabhängig und auflösungsabhängig ist, lassen sich die Bildverarbeitungsvorgänge in Bezug auf die Verarbeitungsgeschwindigkeit durch eine Reihe von Optimierungstechniken verbessern, die von Fachleuten verstanden werden. Beispielsweise kann der Benutzer zwei Skalierungs- und einen Drehungsvorgang in einen affinen Vorgang kombinieren, wodurch übereinstimmende kaskadierte Vorgänge in affine kombiniert werden. Im Wesentlichen heißt das, warum drei getrennte Vorgänge ausführen, wenn sie zum Verbessern der Arbeitsgeschwindigkeit in einen kombiniert werden können.
  • Das Ausgabebild wird dann durch ein einfaches Abarbeiten des sich daraus ergebenden Verarbeitungsbaums aufbereitet. Diesen kann man sich als eine "Kompilierung" eines Objektbaums vorstellen. Die Verarbeitungsbaum-Aufbereitung ist besonders geeignet zum Aufbereiten von sehr großen Bildern, die typisch für den Dokumentdruck sind. Durch die Bildverarbeitungs-Optimierung lässt sich die zum Aufbereiten erforderliche Zeit beträchtlich reduzieren.
  • D. Beispiel für strukturierte Bildaufbereitung
  • Das in 18 gezeigte strukturierte Bild wird im Folgenden kurz beschrieben. Dieses Beschreibungsbeispiel wird unter Verwendung der oben beschriebenen strukturierten Bilddefinitionssprache beschrieben.
  • Das strukturierte Bild der obersten Ebene in dieser Zusammensetzung umfasst vier Komponenten:
    • 1) Bergbild - Rasterbildobjekt (Berg1);
    • 2) "Beispiel..." - Textobjekt (Text1);
    • 3) Baum und Haus - Bildverarbeitungsdefinition (Haus1); und
    • 4) Vogelbild – Bitmapraster (Vogel1)
  • Das strukturierte Bild der zweiten Ebene umfasst zwei Komponenten:
    • 1) Baumgrafik - Grafikobjekt (Baum2); und
    • 2) Hausbild - Rasterobjekt (Haus2)
  • Die strukturierte Bilddefinitionsdatei, die mit dem strukturierten Bild der obersten Ebene verknüpft ist, ist in den 19ac dargestellt. Strukturierte Bilder, (wiederum unterliegt der folgende Quellcode dem Copyright-Schutz und kann auf dem vorher beschriebenen Hardware-System ausgeführt werden), werden als eine Gruppe von "Tags" in der strukturierten Bilddefinitionssprache beschrieben, die durch den Namen des Tag-Typs und Tag-Hauptteils, der von "{" und "}" umschlossen ist, angegeben werden. Tags müssen einen Namen unter Verwendung der ":name"-Syntax erhalten. Der Tage-Name kann als Verweis auf andere Tags verwendet werden durch Voranstellen von "Dollarzeichen". Das Objekt-Tag ist die oberste Tag-Ebene des strukturierten Bilds. In diesem Beispiel stellt das Objekt-Tag ein Bildverarbeitungsdefinitions-Objekt dar, und seine Beschreibung befindet sich in dem als Verweis angegebenen Tag "ipdl". Das Bildverarbeitungsdefinitions-Tag "ipol" definiert die Tags Seitenverhältnis (AspectRatio) und Standardbreite (DefaultWidth), die Pasteboard-Attribute Anpassungsmodus (FitMode), Ausrichtung (Justification) und Winkel (Angle) und vier Misch- (Merge) Tags, deren Abfolge die Mischreihenfolge von "merge1" bis "merge4" angibt. Jedes Misch-Tag gibt einen Mischpunkt in Bezug auf das Pasteboard mit dem Mischpunkt- (MergePoint) Tag und eine Bildverarbeitungsabfolge mit einem Pfad- (Path) Tag an. Das Pfad-Tag bezeichnet das untergeordnete Objekt mit einem anderen Objekt-Tag, die relative Größe mit einem Größe- (Size) Tag, die Position des Kontrollpunkts (in Bezug auf das untergeordnete Objekt) mit dem Kontrollpunkt- (ControlPoint) Tag und die Bildverarbeitungsvorgänge mit einer Liste von Bildverarbeitungsvorgangs- (IPO) Tags. Dabei ist zu beachten, dass path1, path2 und path4 alle auf Raster-, Text- oder Grafikdateien verweisen. Path3 verweist auf eine andere strukturierte Bilddefinitions-Datei, die ein Rasterbild aus der Kombination eines Grafikbaums mit einem Rasterbild eine Hauses erstellt.
  • D1. Mehrtachdarstellungs- (MR) Dateiformat
  • Bei einigen Anwendungen werden explizite Beschreibungen von verfügbaren Darstellungen bevorzugt. Aus diesem Grund wird das MR-Dateiformat definiert. Dieses Dateiformat verwendet derzeit eine Syntax, die derjenigen der strukturieren Bilddefinitionssprache ähnlich ist. Die 20ac sind Beispiele des MR-Dateiformats. Jede Darstellung wird mit einem Feld Format (Format), das den Dateityp kennzeichnet, und einem Feld Daten (Data) aufgeleistet, um die Daten explizit zu definieren. Bei dateibasierten Daten, wie beispielsweise einer TiFF-Datei, enthält das Feld Daten einen UNIX®- Pfad zu der Datei. Bei einfachem Text enthält das Feld Daten die Text-Zeichenfolge.
  • Das MR-Format ermöglicht es, dass für jede Darstellung explizit eine Gruppe von Attributen definiert werden kann, welche die Daten beschreiben. Bei Rasterdaten können die Attribute Maß-, Fotometrie- oder andere Attribute enthalten. Bei Text-Objekten können die Attribute Schriftart, Formatierung usw. enthalten. Die Verwendung des MR-Formats wird bei dieser Erfindung jedoch nicht bevorzugt.
  • D2. Bildverarbeitungsvorgang (IPO) Räumliche Transformation (SpatialTransform)
  • Der einzige Bildverarbeitungsvorgang, der im Format des strukturierten Bilds angegeben ist, ist der Bildverarbeitungsvorgang Räumliche Transformation (SpatialTransform), der dazu dient, eine lineare räumliche Transformation an Rasterbildinhalten durchzuführen.
  • Beispiele umfassen Drehung, Skalierung und Scheiden (Shearing). Im Allgemeinen führt der Bildverarbeitungsvorgang Räumliche Transformation alle affinen Transformationen durch, ausgenommen die Umsetzung (die durch die Mischpunkt- und Kontrollpunkt-Attribute kontrolliert wird).
  • Die Parameter für SpatialTransform sind wie folgt:
    Parameter Wert
    Skalierung (Scale) 1 Wert für XY-Skalierung (Seitenverhältnis beibehalten) oder 2 Werte für frei wählbare Skalierung (Interpolation ist von der Anwendung abhängig – zu beachten: sollte wahrscheinlich ein Argument sein)
    Drehung (Rotate) Winkel (in Grad)
    Schneiden (Shear) Schneidewinkel (in Grad)
    Spiegel (Mirror) "X" oder "Y"
    Transformationspunkte (TransformPoints) 3 Paare von Eckpunkten
    Affin (Affine) Affine Koeffizienten
    Festpunkt (FixedPoint) (x, y) in Bezug auf transformiertes untergeordnetes Objekt -Standardwert ist die Kontrollpunkt-Position
  • Der Festpunkt-Parameter gestattet die Anwendung von räumlichen Transformationen um einen Verweispunkt. Beispielsweise ermöglicht es die Angabe eines Festpunkts dem Benutzer, das Objekt um den Festpunkt anstatt um die Mitte des Objekts zu drehen. Im Allgemeinen kann jede unterstützte räumliche Transformation so definiert werden, dass sie um den Festpunkt wirkt. Da der Festpunkt ein Parameter für die räumliche Transformation und kein Bestandteil des Pasteboards ist, justiert der Bildverarbeitungsvorgang den Kontrollpunkt automatisch, um sicherzustellen, dass das untergeordnete Objekt in das übergeordnete Pasteboard an der richtigen Stelle gemischt wird. Ein Beispiel, wie der Kontrollpunkt justiert wird, wird im Folgenden beschrieben.
  • Beispielsweise (siehe 21ab) weist das Objekt einen Kontrollpunkt C von (0,5, 0,5) und einen Festpunkt von (2,0, 0,0) in Bezug auf die obere linke Ecke P des untergeordneten Objekts auf. Angenommen, die Aufbereitung gibt an, dass das untergeordnete Objekt die Größe 50 × 50 besitzt. Der Festpunkt in Bezug auf das untergeordnete Objekt beträgt (–100, 0). Der Kontrollpunkt ist anfänglich (25, 25) in Bezug auf P und (125, 25) in Bezug auf den Festpunkt. Das Drehen des untergeordneten Objekts um 45 Grad um den Festpunkt generiert ein untergeordnetes Objekt mit einer neuen Größe von 71 × 71 (grafische Begrenzungslinie) mit einem Ursprung von (71, 107) in Bezug auf den Festpunkt. Es sei daran erinnert, dass der ursprüngliche Kontrollpunkt (125, 25) in Bezug auf den Festpunkt war. Daher wird der Kontrollpunkt so justiert, dass er (125, 25) – (71, –107) = (54, 132) in Pixelgröße beträgt, d.h. (0,76, 1,86) in Bezug auf den Ursprung Q des gedrehten untergeordneten Objekts. Daher wird der Kontrollpunkt so justiert, das sichergestellt ist, dass die Drehung um einen Festpunkt dazu führt, dass ein untergeordneter Punkt an der richtigen Position in das Pasteboard gemischt wird.
  • Alternativ kann ein interaktiver Editor die Mitte der Drehung usw. während der Erstellung des strukturierten Bilds bearbeiten und den Mischpunkt richtig justieren, wenn das strukturierte Bild geschrieben wird. Das heißt, der Benutzer kann die Drehungsmitte beispielsweise an einer gewünschten Position einstellen, und die strukturierte Bilddefinition muss sich damit nicht mehr befassen.
  • E. Ein zweites Beispiel einer Erstellung eines strukturierten Bilds
  • Die strukturierte Bildaufbereitung ist wesentlich mehr als nur ein interaktiver Editor. Beispielsweise muss ein Drucker für Schulabschluss-Jahrbücher viele einzelne Bilder elektronisch für den Druck des fertigen Jahrbuchs vorbereiten. Insbesondere müssen Fotos in die Datenbank eingescannt werden, entweder einzeln, (was äußerst zeitaufwändig ist), oder es ist eine Technologie vorhanden, mit der bis zu zwölf Fotos gleichzeitig eingescannt werden können. Leider, ungeachtet der bemühten Versuche des Benutzers, die einzelnen Bilder zum Scannen exakt aufzureihen, sind immer geringfügige Abweichungen auf Grund des Scannens vorhanden. Normalerweise weist jedes Bild einen Strichcode oder ein anderes Identifizierungsmerkmal auf, um das Bild dem Namen zuzuordnen, der darunter gedruckt wird.
  • Es gibt Software, die in der Lage ist, ein strukturiertes Bild in der oben beschriebenen Scan-Situation automatisch zu erstellen. Das heißt, es wird ein strukturiertes Bild erstellt, das jedes einzelne untergeordnete Objekt identifiziert, (d.h. die einzelnen Bilder), und Bildverarbeitungsvorgänge umfasst, um jede Fehlausrichtung zu korrigieren und jedes Bild auf der Seite mit dem richtigen Text darunter (Strichcode-Verweis) exakt zu konfigurieren. Eine solche Software kann viele Objekte gleichzeitig scannen, und jedes untergeordnete Objekt wird beim Drucken zur korrekten Aufbereitung gedreht oder die Drehung rückgängig gemacht. Daher kann der Jahrbuch-Drucker nach Belieben nur die untergeordneten Objekte aussuchen, die zur Positionierung auf der bestimmten Seite gewünscht werden, sie wie gewünscht aufreihen, entsprechenden Text hinzufügen und drucken. Wie oben erläutert, wird auf die untergeordneten Objekte durch einen Strichcode zum Aufrufen verwiesen.
  • Zusätzlich möchte der Jahrbuch-Drucker eventuell ein weiteres strukturiertes Bild erstellen, indem er eine Vorlage mit "ungebundenen" Lücken für die Bilder und den gewünschten Text erstellt. Der Jahrbuch-Drucker bindet die entsprechende Anzahl von untergeordneten Objekten zum Drucken an diese Vorlage. Wesentlich ist, dass die Vorlage aber auch eine integrierte intelligente Verarbeitung aufweisen kann, (d.h. Hintergrund usw.), die automatisch Farbe, Abschneiden, Spezialeffekte usw. ändert.
  • F. Schlussfolgerung
  • Das oben genannte erfinderische Konzept gestattet die Darstellung von komplexen Farbrasterbildern als eine Sammlung von Objekten in einem hierarchischen und vorrichtungsunabhängigen Format. Objekte, die zu dem Ausgaberaster beitragen, können aus Text, Grafik, anderen Rastern oder anderen strukturierten Bildern stammen und ihre übernommenen Werte zur Aaswählbarkeit und Modifizierung beibehalten. Ein strukturiertes Bild enthält nicht nur die Quellendaten, sondern auch Bildverarbeitungsvorgänge, die zu ihrer Aufbereitung erforderlich sind. Die Technologie für strukturierte Bilder unterstützt nicht nur erneute Bearbeitbarkeit, kundenspezifische Anpassung und Verbesserung, automatische Bildzusammensetzung und Hochleistungs-Bildaufbereitung (d.h. parallel, verteilt, mit Cache usw.). Sie stellt einen sehr leistungsfähigen Rahmen zum Beschreiben von Bildern zur späteren Bearbeitung und erneuten Bearbeitung bereit. Die strukturierte Bildaufbereitung ist also eine grundlegende Technologie, die in der Lage ist, die gesamte Skala von Erfassen Speichern, Bearbeiten/Vorbereiten und Zuführen/Übertragen von Objekten zur Ausgabe-Aufbereitung zu behandeln.

Claims (19)

  1. Elektronischer Bildgenerator, umfassend: ein Erstellungsmodul, das in der Lage ist, eine strukturierte Bilddarstellung zu erstellen, wobei die Darstellung wenigstens ein Bildobjekt umfasst, das als wenigstens ein Raster aufbereitet (rendered) werden kann, und wenigstens ein Pasteboard mit wenigstens einem Bildattribut, wobei jedes Pasteboard einen Bildrahmen (frame) aufweist, auf dem wenigstens eines von dem wenigstens einen Bildobjekt aufbereitet werden kann; und ein Aufbereitungsmodul in Verbindung mit dem Erstellungsmodul, wobei das Aufbereitungsmodul die Darstellung in einem sichtbaren Bild aufbereiten kann; wobei das Aufbereitungsmodul das wenigstens eine Bildobjekt auf dem wenigstens einen Pasteboard mischen kann, um das sichtbare Bild in Übereinstimmung mit dem wenigstens einen Bildattribut des wenigstens einen Pasteboards zu bilden, und für jedes von den wenigstens einen Bildattributen wird das wenigstens eine Bildattribut mit einem von den wenigstens einen Pasteboards verknüpft statt mit irgendeinem von den wenigstens einen Bildobjekten; wobei wenigstens eines des wenigstens einen Bildobjekts und des wenigstens einen Bildattributs urdefiniert bleibt, wenn die Darstellung durch das Erstellungsmodul erstellt wird, und das wenigstens eine des wenigstens einen Bildobjekts und des wenigstens einen Bildattributs während der Aufbereitung durch das Aufbereitungsmodul definiert wird.
  2. Elektronischer Bildgenerator nach Anspruch 1, wobei das Aufbereitungsmodul und das Erstellungsmodul auf Computerprogramm-Anweisungen und vom Benutzer eingegebene Befehle ansprechen, wobei wenigstens eines von einer Tas tatur, einer Maus, einem Berührungsbildschirm und einem elektronischen Stift verwendet wird.
  3. Elektronischer Bildgenerator nach Anspruch 1 oder Anspruch 2, wobei die Darstellung des Weiteren wenigstens einen Bildverarbeitungsvorgang umfasst.
  4. Elektronischer Bildgenerator nach irgendeinem der vorhergehenden Ansprüche, des Weiteren umfassend ein Druckmodul, das an das Aufbereitungsmodul und das Erstellungsmodul zum Drucken der Darstellung angekoppelt ist.
  5. Elektronischer Bildgenerator nach irgendeinem der vorhergehenden Ansprüche, wobei das Erstellungsmodul das wenigstens eine Pasteboard verändern kann, einschließlich des wenigstens einen Bildattributs, und auf Computerprogramm-Anweisungen und vom Benutzer eingegebene Befehle anspricht, wobei wenigstens eines von einer Tastatur, einer Maus, einem Berührungsbildschirm und einem elektronischen Stift verwendet wird.
  6. Elektronischer Bildgenerator nach irgendeinem der vorhergehenden Ansprüche, wobei die Darstellung des Weiteren wenigstens ein individuell manipulierbares Komponentenobjekt umfasst, das wenigstens ein Bildobjekt umfasst, das als wenigstens ein Raster aufbereitet werden kann, wobei das wenigstens eine Komponentenobjekt des Weiteren wenigstens ein Komponenten-Pasteboard mit wenigstens einem Komponenten-Bildattribut umfasst, und für jedes Komponenten-Pasteboard weist dieses Komponenten-Pasteboard einen Bildrahmen auf, auf dem eines von den wenigstens einen Objekten des Komponentenobjekts aufbereitet wird.
  7. Elektronischer Bildgenerator nach irgendeinem der vorhergehenden Ansprüche, wobei das Erstellungsmodul gleichzeitig die Darstellung und das wenigstens eine Bildattribut anzeigen kann.
  8. Elektronischer Bildgenerator nach irgendeinem der vorhergehenden Ansprüche, wobei das Erstellungsmodul und das Aufbereitungsmodul in der Lage sind, die Darstellung zu erstellen und aufzubereiten, um ihr Erscheinungsbild unabhängig von Auflösung und Größe des sichtbaren Bilds zu erhalten.
  9. Elektronischer Bildgenerator nach irgendeinem der vorhergehenden Ansprüche, des Weiteren umfassend ein Speichermodul, das an das Aufbereitungsmodul und das Erstellungsmodul zum Speichern der Darstellung angekoppelt ist, einschließlich des wenigstens einen Bildobjekts, das als wenigstens ein Raster aufbereitet werden kann.
  10. Elektronischer Bildgenerator nach Anspruch 9, wobei das wenigstens eine Bildobjekt in dem Speichermodul im Originalformat gespeichert wird, wobei das Originalformat wenigstens eines von einer Textdatei, einer Grafikdatei, einer Rasterdatei und einer individuell manipulierbaren Komponentenobjekt-Datei umfasst.
  11. Elektronischer Bildgenerator nach irgendeinem der vorhergehenden Ansprüche, wobei die Darstellung komplexe Farb- und Transparenzwerte darstellen kann.
  12. Prozess zum elektronischen Generieren einer strukturierten Bilddarstellung, wobei der Prozess Folgendes umfasst: Auswählen eines Bildobjekts, das als ein Raster aufbereitet werden kann, aus einem Speicher; Definieren eines Pasteboards, einschließlich wenigstens eines Bildattributs, wobei das Pasteboard einen Bildrahmen aufweist, auf dem die Daten aufbereitet werden; Erstellen der Darstellung, die das Bildobjekt und das Pasteboard in Übereinstimmung mit dem wenigstens einen Bildattribut des Pasteboards umfasst, und Aufbereiten der Darstellung in ein Format, das angezeigt oder gedruckt werden kann, wobei das wenigstens eine Bildattribut mit dem Pasteboard und nicht dem Bildobjekt verknüpft ist; wobei das wenigstens eine des Bildobjekts und das wenigstens eine Bildattribut undefiniert bleiben, wenn die Darstellung erstellt wird, und das wenigstens eine des Bildobjekts und das wenigstens eine Bildattribut während der Aufbereitung definiert werden.
  13. Prozess nach Anspruch 12, des Weiteren umfassend eines vom Anzeigen und Drucken der Darstellung durch Anprechen auf wenigstens eines von Computerprogramm-Anweisungen oder vom Benutzer eingegebenen Befehlen.
  14. Prozess nach Anspruch 12 oder Anspruch 13, des Weiteren umfassend das Definieren von wenigstens einem Bildverarbeitungsvorgang, der während des Erstellungsschritts durchzuführen ist.
  15. Prozess nach Anspruch 14, des Weiteren umfassend das Aufbereiten und Anzeigen eines grafischen Ablaufdiagramms auf einem Anzeigebildschirm, einschließlich Anzeigesymbolen, die das gewählte Bildobjekt, das Pasteboard, das wenigstens eine Bildattribut und den wenigsten einen Bildverarbeitungsvorgang darstellen.
  16. Prozess nach Anspruch 15, wobei Auswählen, Definieren, Erstellen, Aufbereiten und Anzeigen basierend auf Computerprogramm-Anweisungen und vom Benutzer eingegebenen Befehlen durchgeführt werden, die durch Manipulation eines Cursors auf dem Anzeigebildschirm eingegeben werden, wobei wenigstens eines von einer Tastatur, einer Maus, einem Berührungsbildschirm und einem elektronischen Stift verwendet wird.
  17. Prozess nach Anspruch 15, des Weiteren umfassend das gleichzeitige Anzeigen des sichtbaren Bilds und des grafischen Ablaufdiagramms auf dem Anzeigebildschirm.
  18. Prozess nach irgendeinem der Ansprüche 12 bis 17, wobei das ausgewählte Bildobjekt wenigstens ein individuell manipulierbares Komponentenobjekt umfasst, das wenigstens ein Bildobjekt, das als wenigstens ein Raster aufbereitet werden kann, und wenigstens ein Komponenten-Pasteboard mit wenigstens ei nem Komponenten-Bildattribut umfasst, und dieses Komponenten-Pasteboard für jedes Komponenten-Pasteboard einen Bildrahmen aufweist, auf dem eines von den wenigstens einen Bildobjekten des Komponentenobjekts aufbereitet wird.
  19. Prozess nach Anspruch 18, umfassend: Definieren wenigstens eines Bildverarbeitungsvorgangs, der während des Erstellen durchzuführen ist; und Aufbereiten und Anzeigen eines grafischen Ablaufdiagramms auf einem Anzeigebildschirm, einschließlich Anzeigesymbolen, die das gewählte Bildobjekt, das wenigstens eine Pasteboard, das wenigstens eine Komponenten-Bildattribut, den wenigsten einen Bildverarbeitungsvorgang, das Pasteboard und das wenigstens eine Bildattribut darstellen.
DE69434371T 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds Expired - Lifetime DE69434371T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/133,422 US5485568A (en) 1993-10-08 1993-10-08 Structured image (Sl) format for describing complex color raster images
US133422 1993-10-08

Publications (2)

Publication Number Publication Date
DE69434371D1 DE69434371D1 (de) 2005-06-16
DE69434371T2 true DE69434371T2 (de) 2005-11-17

Family

ID=22458559

Family Applications (4)

Application Number Title Priority Date Filing Date
DE69434370T Expired - Lifetime DE69434370T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69432235T Expired - Lifetime DE69432235T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69429488T Expired - Lifetime DE69429488T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69434371T Expired - Lifetime DE69434371T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds

Family Applications Before (3)

Application Number Title Priority Date Filing Date
DE69434370T Expired - Lifetime DE69434370T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69432235T Expired - Lifetime DE69432235T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69429488T Expired - Lifetime DE69429488T2 (de) 1993-10-08 1994-10-06 Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds

Country Status (6)

Country Link
US (2) US5485568A (de)
EP (4) EP0989522B1 (de)
JP (1) JP3630726B2 (de)
CA (1) CA2131439C (de)
DE (4) DE69434370T2 (de)
ES (4) ES2242349T3 (de)

Families Citing this family (114)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6336180B1 (en) 1997-04-30 2002-01-01 Canon Kabushiki Kaisha Method, apparatus and system for managing virtual memory with virtual-physical mapping
US5485568A (en) * 1993-10-08 1996-01-16 Xerox Corporation Structured image (Sl) format for describing complex color raster images
EP0686945B1 (de) * 1994-05-26 2001-12-19 Canon Kabushiki Kaisha Bildverarbeitungsverfahren und -vorrichtung
AU695002B2 (en) * 1994-07-25 1998-08-06 Canon Kabushiki Kaisha Method and apparatus for the creation of images
AUPM704194A0 (en) 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Efficient methods for the evaluation of a graphical programming language
AU733038B2 (en) * 1994-07-25 2001-05-03 Canon Kabushiki Kaisha Efficient methods for the evaluation of a graphical programming language
AUPM704494A0 (en) * 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Efficient methods for the interpretation of a graphical programming language
AU681963B2 (en) * 1994-07-25 1997-09-11 Canon Kabushiki Kaisha Optimization method for the efficient production of images
AUPM704294A0 (en) * 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Method and apparatus for the creation of images
AU694512B2 (en) * 1994-07-25 1998-07-23 Canon Kabushiki Kaisha Efficient methods for the interpretation of a graphical programming language
AUPM704394A0 (en) * 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Optimization method for the efficient production of images
US5666503A (en) * 1994-11-14 1997-09-09 Xerox Corporation Structured image (SI) image editor and method for editing structured images
TW367447B (en) * 1994-12-21 1999-08-21 Canon Kk Block selection review and editing system
US6651108B2 (en) * 1995-08-14 2003-11-18 Next Software, Inc. Method and apparatus for generating object-oriented world wide web pages
US6137589A (en) * 1995-09-20 2000-10-24 Hewlett-Packard Company Efficient storage of dithered raster image data in a printer or the like
US5710877A (en) * 1995-12-29 1998-01-20 Xerox Corporation User-directed interaction with an image structure map representation of an image
IT1281696B1 (it) * 1996-01-19 1998-02-26 Francesco Morelli Sistema elettronico per la memorizzazione manipolazione moltiplicazione e la stampa di immagini
US6538764B2 (en) * 1996-04-12 2003-03-25 Canon Kabushiki Kaisha Printing apparatus, information processing apparatus, data processing method for use in such an apparatus, and storage medium storing computer-readable program
US5751852A (en) * 1996-04-29 1998-05-12 Xerox Corporation Image structure map data structure for spatially indexing an imgage
US5884014A (en) * 1996-05-23 1999-03-16 Xerox Corporation Fontless structured document image representations for efficient rendering
JP3061765B2 (ja) * 1996-05-23 2000-07-10 ゼロックス コーポレイション コンピュータベースの文書処理方法
US5809179A (en) * 1996-05-31 1998-09-15 Xerox Corporation Producing a rendered image version of an original image using an image structure map representation of the image
US5978519A (en) * 1996-08-06 1999-11-02 Xerox Corporation Automatic image cropping
US6122634A (en) * 1996-11-12 2000-09-19 International Business Machines Corporation Fractal nested layout for hierarchical system
US5892854A (en) * 1997-01-21 1999-04-06 Xerox Corporation Automatic image registration using binary moments
US5767978A (en) * 1997-01-21 1998-06-16 Xerox Corporation Image segmentation system
US6738154B1 (en) * 1997-01-21 2004-05-18 Xerox Corporation Locating the position and orientation of multiple objects with a smart platen
AUPO478897A0 (en) * 1997-01-24 1997-02-20 Canon Information Systems Research Australia Pty Ltd Scan line rendering of convolutions
AUPO648397A0 (en) 1997-04-30 1997-05-22 Canon Information Systems Research Australia Pty Ltd Improvements in multiprocessor architecture operation
US6141012A (en) * 1997-03-31 2000-10-31 Xerox Corporation Image processing code generation based on structured image (SI) techniques
US6414687B1 (en) 1997-04-30 2002-07-02 Canon Kabushiki Kaisha Register setting-micro programming system
US6061749A (en) 1997-04-30 2000-05-09 Canon Kabushiki Kaisha Transformation of a first dataword received from a FIFO into an input register and subsequent dataword from the FIFO into a normalized output dataword
US6707463B1 (en) 1997-04-30 2004-03-16 Canon Kabushiki Kaisha Data normalization technique
AUPO647997A0 (en) 1997-04-30 1997-05-22 Canon Information Systems Research Australia Pty Ltd Memory controller architecture
US6272257B1 (en) 1997-04-30 2001-08-07 Canon Kabushiki Kaisha Decoder of variable length codes
US6289138B1 (en) 1997-04-30 2001-09-11 Canon Kabushiki Kaisha General image processor
EP0995171A1 (de) * 1997-07-14 2000-04-26 Quark, Inc., System zur verwaltung und kontrolle eines multimedialen projekts
US6741255B1 (en) * 1997-08-14 2004-05-25 Sun Microsystems, Inc. Method, apparatus and computer program product for using deferred execution for a tiling pull model in a tiled image processing architecture
WO1999019830A1 (en) * 1997-10-15 1999-04-22 Pixo Arts Corporation Method, apparatus and computer program product for object-based raster imaging
US6456779B1 (en) * 1997-10-31 2002-09-24 Sony Corporation Method and apparatus for providing a video editor
JPH11250272A (ja) * 1998-01-08 1999-09-17 Xerox Corp 自動イメ―ジレイアウト方法及びシステム
US6557017B1 (en) * 1998-02-06 2003-04-29 Xerox Corporation Image production system theme integration
AU4207199A (en) * 1998-05-27 1999-12-13 Visual Applications, Inc. System for visualizing items in user-provided environment
EP0975146B1 (de) * 1998-07-24 2006-08-30 Xerox Corporation Bestimmung der Lage und Orientierung einer Vielzahl von Objekten mittels einer intelligenten Bildeingangsplatte
GB2340361B (en) * 1998-07-31 2002-11-06 Sony Uk Ltd Digital video processing
GB2340360B (en) * 1998-07-31 2002-11-06 Sony Uk Ltd Animation of video special effects
GB2340362B (en) * 1998-07-31 2002-11-06 Sony Uk Ltd Digital video processing
EP0984396A3 (de) * 1998-09-03 2003-08-20 Canon Kabushiki Kaisha Anordnung und verfahren zum Optimieren der Bildzusammensetzung
KR100734964B1 (ko) * 1998-11-06 2007-07-03 더 트러스티스 오브 콜롬비아 유니버시티 인 더 시티 오브 뉴욕 비디오 디스크립션 시스템 및 방법
US6442507B1 (en) 1998-12-29 2002-08-27 Wireless Communications, Inc. System for creating a computer model and measurement database of a wireless communication network
US6496198B1 (en) * 1999-05-04 2002-12-17 Canon Kabushiki Kaisha Color editing system
US7068382B1 (en) * 1999-05-25 2006-06-27 Silverbrook Research Pty Ltd Interactive printer provider
US6850946B1 (en) * 1999-05-26 2005-02-01 Wireless Valley Communications, Inc. Method and system for a building database manipulator
US6493679B1 (en) * 1999-05-26 2002-12-10 Wireless Valley Communications, Inc. Method and system for managing a real time bill of materials
US6317599B1 (en) * 1999-05-26 2001-11-13 Wireless Valley Communications, Inc. Method and system for automated optimization of antenna positioning in 3-D
US6539420B1 (en) 1999-06-04 2003-03-25 International Business Machines Corporation Distribution mechanism for reuse of web based image data
US7243054B2 (en) 1999-07-14 2007-07-10 Wireless Valley Communications, Inc. Method and system for displaying network performance, cost, maintenance, and infrastructure wiring diagram
US6499006B1 (en) * 1999-07-14 2002-12-24 Wireless Valley Communications, Inc. System for the three-dimensional display of wireless communication system performance
US6647151B1 (en) 1999-08-18 2003-11-11 Hewlett-Packard Development Company, L.P. Coalescence of device independent bitmaps for artifact avoidance
AUPQ251999A0 (en) * 1999-08-27 1999-09-23 Canon Kabushiki Kaisha Run-based compositing
US6704456B1 (en) 1999-09-02 2004-03-09 Xerox Corporation Automatic image segmentation in the presence of severe background bleeding
US6839466B2 (en) * 1999-10-04 2005-01-04 Xerox Corporation Detecting overlapping images in an automatic image segmentation device with the presence of severe bleeding
US6704120B1 (en) 1999-12-01 2004-03-09 Xerox Corporation Product template for a personalized printed product incorporating image processing operations
US7146566B1 (en) 1999-12-14 2006-12-05 International Business Machines Corporation Method and system for multiformat presentation
US7062107B1 (en) * 1999-12-16 2006-06-13 Eastman Kodak Company Techniques for generating a distributed low-resolution digital image capable of viewing in any resolution
JP2001346031A (ja) * 2000-06-05 2001-12-14 Fuji Photo Film Co Ltd 画像合成方法及び装置
MXPA03000418A (es) 2000-07-13 2003-07-14 Belo Company Sistema y metodo para asociar informacion historica con datos sensoriales y distribucion de los mismos.
US6971063B1 (en) * 2000-07-28 2005-11-29 Wireless Valley Communications Inc. System, method, and apparatus for portable design, deployment, test, and optimization of a communication network
US7680644B2 (en) * 2000-08-04 2010-03-16 Wireless Valley Communications, Inc. Method and system, with component kits, for designing or deploying a communications network which considers frequency dependent effects
US7085697B1 (en) 2000-08-04 2006-08-01 Motorola, Inc. Method and system for designing or deploying a communications network which considers component attributes
US7096173B1 (en) 2000-08-04 2006-08-22 Motorola, Inc. Method and system for designing or deploying a communications network which allows simultaneous selection of multiple components
US6625454B1 (en) 2000-08-04 2003-09-23 Wireless Valley Communications, Inc. Method and system for designing or deploying a communications network which considers frequency dependent effects
US7246045B1 (en) 2000-08-04 2007-07-17 Wireless Valley Communication, Inc. System and method for efficiently visualizing and comparing communication network system performance
US7055107B1 (en) 2000-09-22 2006-05-30 Wireless Valley Communications, Inc. Method and system for automated selection of optimal communication network equipment model, position, and configuration
US6973622B1 (en) 2000-09-25 2005-12-06 Wireless Valley Communications, Inc. System and method for design, tracking, measurement, prediction and optimization of data communication networks
US6665587B2 (en) 2000-11-29 2003-12-16 Xerox Corporation Product template for a personalized printed product incorporating workflow sequence information
AU3072902A (en) * 2000-12-18 2002-07-01 Wireless Valley Comm Inc Textual and graphical demarcation of location, and interpretation of measurements
US7164883B2 (en) * 2001-02-14 2007-01-16 Motorola. Inc. Method and system for modeling and managing terrain, buildings, and infrastructure
US6992789B2 (en) * 2001-06-15 2006-01-31 International Business Machines Corporation Method, system, and program for managing a multi-page document
WO2003007236A2 (fr) * 2001-07-12 2003-01-23 Do Labs Procede et systeme pour produire la frequence des mises a jour de moyens
US7574323B2 (en) * 2001-12-17 2009-08-11 Wireless Valley Communications, Inc. Textual and graphical demarcation of location, and interpretation of measurements
US20030142113A1 (en) * 2002-01-30 2003-07-31 Xerox Corporation Hint data editor and method of editing hint data
US7509577B2 (en) * 2002-03-08 2009-03-24 Toshiba Corp Oration Method and system for implementing a clipboard
US20030226116A1 (en) * 2002-03-08 2003-12-04 Katie Kuwata Method and system for implementing a historical buffer
JP4227468B2 (ja) * 2002-06-24 2009-02-18 キヤノン株式会社 画像形成装置及び方法、並びに制御プログラム
US6672212B1 (en) * 2002-09-03 2004-01-06 Sharp Laboratories Of America, Inc. Single print job emulation of multiple TIFF files
US7295960B2 (en) * 2003-01-22 2007-11-13 Wireless Valley Communications, Inc. System and method for automated placement or configuration of equipment for obtaining desired network performance objectives
US7295119B2 (en) 2003-01-22 2007-11-13 Wireless Valley Communications, Inc. System and method for indicating the presence or physical location of persons or devices in a site specific representation of a physical environment
US20040259555A1 (en) * 2003-04-23 2004-12-23 Rappaport Theodore S. System and method for predicting network performance and position location using multiple table lookups
US20040259554A1 (en) * 2003-04-23 2004-12-23 Rappaport Theodore S. System and method for ray tracing using reception surfaces
US20050068582A1 (en) * 2003-09-30 2005-03-31 Ferlitsch Andrew R. Systems and methods for providing printing with document indicia
FR2868854B1 (fr) * 2004-04-08 2006-08-04 Herve Rostan Procede et systeme pour gerer des objets multimedia a diffuser, au moyen d'une unite de traitement associee a un accelerateur multimedia
US20060103677A1 (en) * 2004-11-18 2006-05-18 Lai Jimmy K L System and method for effectively performing arbitrary angle sprite rotation procedures
CA2489613A1 (en) * 2004-12-07 2006-06-07 Ibm Canada Limited - Ibm Canada Limitee Maximize data visibility using slated viewer
US7834876B2 (en) * 2004-12-28 2010-11-16 The Mathworks, Inc. Providing graphic generating capabilities for a model based development process
US20060209214A1 (en) * 2005-03-17 2006-09-21 Xerox Corporation Digital photo album systems and methods
US7773995B2 (en) * 2005-04-18 2010-08-10 Motorola, Inc. Method and apparatus for utilizing RF signals to create a site specific representation of an environment
CN1866264A (zh) * 2005-05-21 2006-11-22 华为技术有限公司 一种移动游戏的场景生成方法及系统
WO2007011748A2 (en) 2005-07-14 2007-01-25 Molsoft, Llc Structured documents for displaying and interaction with three dimensional objects
US20100254606A1 (en) * 2005-12-08 2010-10-07 Abbyy Software Ltd Method of recognizing text information from a vector/raster image
RU2309456C2 (ru) * 2005-12-08 2007-10-27 "Аби Софтвер Лтд." Способ распознавания текстовой информации из векторно-растрового изображения
US8194074B2 (en) * 2006-05-04 2012-06-05 Brown Battle M Systems and methods for photogrammetric rendering
US7711371B2 (en) * 2006-06-27 2010-05-04 Motorola, Inc. Method and system for analysis and visualization of a wireless communications network
US20080144066A1 (en) * 2006-10-26 2008-06-19 Andrew Rodney Ferlitsch Composition Print Method Using Translators
JP4971768B2 (ja) * 2006-12-07 2012-07-11 キヤノン株式会社 編集装置、編集方法、およびプログラム
US20080150962A1 (en) * 2006-12-20 2008-06-26 Bezryadin Sergey N Image display using a computer system, including, but not limited to, display of a reference image for comparison with a current image in image editing
US8296662B2 (en) * 2007-02-05 2012-10-23 Brother Kogyo Kabushiki Kaisha Image display device
US8884916B2 (en) 2010-12-09 2014-11-11 Synaptics Incorporated System and method for determining user input using polygons
US9411445B2 (en) 2013-06-27 2016-08-09 Synaptics Incorporated Input object classification
US10932103B1 (en) * 2014-03-21 2021-02-23 Amazon Technologies, Inc. Determining position of a user relative to a tote
US9804717B2 (en) 2015-03-11 2017-10-31 Synaptics Incorporated Input sensing and exclusion
JP2019067347A (ja) * 2017-10-05 2019-04-25 キヤノン株式会社 情報処理装置およびその制御方法、並びにプログラム
CN108921911B (zh) * 2018-08-01 2021-03-09 中国科学技术大学 结构化图片自动转换为源代码的方法
CN111047671B (zh) * 2019-12-24 2023-05-16 成都来画科技有限公司 一种手绘图片的绘画路径的优化方法及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4742558A (en) * 1984-02-14 1988-05-03 Nippon Telegraph & Telephone Public Corporation Image information retrieval/display apparatus
US4813013A (en) * 1984-03-01 1989-03-14 The Cadware Group, Ltd. Schematic diagram generating system using library of general purpose interactively selectable graphic primitives to create special applications icons
JPH063608B2 (ja) * 1984-06-30 1994-01-12 株式会社東芝 文書画像編集装置
US5021976A (en) * 1988-11-14 1991-06-04 Microelectronics And Computer Technology Corporation Method and system for generating dynamic, interactive visual representations of information structures within a computer
US5278950A (en) * 1989-09-20 1994-01-11 Fuji Photo Film Co., Ltd. Image composing method
US5181162A (en) * 1989-12-06 1993-01-19 Eastman Kodak Company Document management and production system
JP3092711B2 (ja) * 1990-09-11 2000-09-25 キヤノン株式会社 出力制御装置及び方法
US5416900A (en) * 1991-04-25 1995-05-16 Lotus Development Corporation Presentation manager
DE69225544T2 (de) * 1991-08-13 1998-12-03 Xerox Corp Elektronische Bilderzeugung
US5353388A (en) * 1991-10-17 1994-10-04 Ricoh Company, Ltd. System and method for document processing
US5437008A (en) * 1992-06-23 1995-07-25 Adobe Systems Incorporated Method of establishing constraints and links in a distribution frame between graphical elements and resolving the constaints
JPH08510851A (ja) 1993-03-25 1996-11-12 ライブ ピクチャー,インコーポレイテッド 画像処理方法及び装置
US5485568A (en) * 1993-10-08 1996-01-16 Xerox Corporation Structured image (Sl) format for describing complex color raster images

Also Published As

Publication number Publication date
ES2242349T3 (es) 2005-11-01
DE69434370D1 (de) 2005-06-16
CA2131439C (en) 2001-05-29
DE69429488D1 (de) 2002-01-31
ES2242348T3 (es) 2005-11-01
EP0989519B1 (de) 2003-03-05
EP0989522A3 (de) 2000-07-19
JP3630726B2 (ja) 2005-03-23
DE69429488T2 (de) 2002-08-01
US6326983B1 (en) 2001-12-04
EP0989523A2 (de) 2000-03-29
ES2194415T3 (es) 2003-11-16
EP0989519A1 (de) 2000-03-29
DE69432235D1 (de) 2003-04-10
EP0647921A3 (de) 1996-01-31
EP0989523B1 (de) 2005-05-11
EP0647921B1 (de) 2001-12-19
EP0989522B1 (de) 2005-05-11
EP0989522A2 (de) 2000-03-29
US5485568A (en) 1996-01-16
EP0647921A2 (de) 1995-04-12
ES2169063T3 (es) 2002-07-01
DE69432235T2 (de) 2003-11-20
CA2131439A1 (en) 1995-04-09
EP0989523A3 (de) 2000-07-19
DE69434371D1 (de) 2005-06-16
DE69434370T2 (de) 2006-02-02
JPH07282284A (ja) 1995-10-27

Similar Documents

Publication Publication Date Title
DE69434371T2 (de) Strukturiertes Bildformat zur Beschreibung eines Komplexfarbrasterbilds
DE69534558T2 (de) Effizientes Verfahren, Gerät und Rechnerprogramm zur Auswertung graphischer Programmiersprache
DE69830767T2 (de) Verfahren und Vorrichtung zum Zusammensetzen geschichteter synthetischer graphischer Filter
JP3836527B2 (ja) 構造的イメージの画像編集装置および方法
DE69831385T2 (de) Verfahren und Anordnung zum Mischen von graphischen Objekten mit Planarkarten
DE19852296B4 (de) Verfahren, Vorrichtung und System zum Vereinigen von Bild- und Formulardaten (Formularüberziehen) im Zusammenhang mit Computern
DE69133362T2 (de) Dokumentenverarbeitungs-verfahren und -gerät, entsprechende Program und Speichereinheit
DE69233037T2 (de) Automatisiertes neues Layout mit dimensionaler Verknüpfung
DE69434405T2 (de) Verfahren zur Erzeugung eines visuellen Entwurfs
DE60130595T2 (de) Verfahren und Vorrichtung zur Erzeugung von gemischten Bildern
DE69936603T2 (de) Automatisches Bildanordnungsverfahren und -system
DE602005001787T2 (de) Vorrichtung und Verfahren zum Editieren von Druckdaten
DE69629173T2 (de) Automatisches Plazieren eines graphischen Musters
DE69825851T2 (de) Bildverarbeitungsvorrichtung und Bildverarbeitungsverfahren
DE4014231A1 (de) Verfahren zum bearbeiten der steuerpunkte eines symbolbildes
DE3838740A1 (de) Dokumentationsverarbeitungsanlage
US6141012A (en) Image processing code generation based on structured image (SI) techniques
WO2002082362A2 (de) Verfahren, system und computerprogramm zum erstellen eines elektronischen dokuments aus gerasterten bilddaten
DE69830766T2 (de) Verfahren und Vorrichtung zum Bestimmen des Anwendungsumfangs geschichteter synthetischer graphischer Filter
DE102019005425A1 (de) Vereinheitlichtes Digitalcontentauswahlsystem für Vektor- und Rastergrafiken
DE69924592T2 (de) Hochauflösende Rasterpufferarchitektur zur Unterdrückung von Alias-Störungen
DE69930352T2 (de) Verfahren und Vorrichtung zur Animierung von Videospezialeffekten
DE19581872B4 (de) Dreidimensionales Graphikaufbereitungssystem
DE10335124B4 (de) Drucksystem, Druckdatenerzeugungsvorrichtung des Drucksystems, Druckverfahren, Programm zum Betreiben der Druckdatenerzeugungsvorrichtung
DE60218916T2 (de) Verfahren, Vorrichtung und Programmspeichermedium zur Bestimmung des Umrisses eines gescannten Bildes

Legal Events

Date Code Title Description
8364 No opposition during term of opposition