-
GEBIET DER ERFINDUNG
-
Diese
Erfindung betrifft Methoden und Systeme zur Erstellung und Anzeige
skalierbarer Vektorgrafikentwürfe.
-
HINTERGRUND
DER ERFINDUNG
-
Da
die Unternehmen eine immer größere Vielfalt
an Produkten mit zunehmender Komplexität an eine immer größere Zahl
von Märkten
liefern, wachsen die Ansprüche
an das in der Industrie so genannte "Enterprise Content Management" ("Verwaltung von Inhalten"). Um ein bestimmtes
Produkt erfolgreich zu vermarkten, muss eine lange Liste von Dokumenten
auf koordinierte Art und Weise generiert und verteilt werden. Um beispielsweise
ein Automobil erfolgreich zu verkaufen, muss der Automobilproduzent
zuerst eine große
Anzahl von Wartungsunterlagen erstellen und verteilen. Zudem muss
der Automobilproduzent, will er das Automobil in ganz Europa, Asien,
Afrika und Nord-/Südamerika
verkaufen, die gleichen Unterlagen in mehreren Sprachen bereitstellen.
-
Eine
weitere Herausforderung besteht darin, sicherzustellen, dass jedes
Dokument in jeder Sprache entsprechend aktualisiert wird. Sollte
etwa – um
beim Beispiel zu bleiben – das
Automobil einer mechanischen Neuerung unterzogen werden, müssen die
unterschiedlichen Änderungen
in allen diversen Wartungshandbüchen
so gleichförmig
wie möglich
durchgeführt
werden. Um ferner die Entwicklungskosten so gering wie möglich zu
halten, müssen
die Hilfsmittel zur Erstellung der Wartungshandbücher in einem praktikablen
Ausmaß extrem
benutzerfreundlich sein. Daraus folgt, dass neue Technologie bezüglich des
Management von Enterprise Content benötigt wird.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
In
einem Aspekt umfasst eine computergestützte Vorrichtung zum Erstellen
von Grafikentwürfen
auf Basis einer Delayed-Rendering-Technik (verzögerte Bildumsetzung) unter
Verwendung skalierbarer Vektorgrafiken eine Datenbank, die eine
Mehrzahl von Objekten enthält,
deren jedes eine skalierbare Vektorgrafik ist, und ein Editier-Tool,
das eine Mehrzahl von Grafik-Bedienelementen
enthält,
wobei die Manipulation der Grafik-Bedienelemente dem Editier-Tool
die Erstellung einer grafischen Szene unter Verwendung der Mehrzahl skalierbarer
Vektorgrafikobjekte durch Manipulation eines ersten Satzes von Befehlen
und Referenzzeigern ermöglicht,
wobei jeder Referenzzeiger auf ein entsprechendes skalierbares Vektorgrafikobjekts
verweist.
-
In
einem zweiten Aspekt umfasst ein Verfahren zur Erstellung von Grafikentwürfen auf
Basis einer Delayed-Rendering-Technik unter Anwendung skalierbarer
Vektorgrafiken die Durchführung
einer Mehrzahl von Editier-Operationen unter Anwendung eines Editier-Tools,
das eine Mehrzahl von Grafik-Bedienelementen besitzt, wobei die
Manipulation der Grafik-Bedienelemente dem Editier-Tool die Erstellung
einer Grafikszene unter Anwendung einer Mehrzahl von skalierbaren
Vektorgrafikobjekten durch Manipulation eines ersten Satzes von
Befehlen und Referenzzeigern ermöglicht,
wobei jeder Referenzzeiger auf ein entsprechendes skalierbares Vektorgrafikobjekt
verweist und die Mehrzahl von skalierbaren Vektorgrafikobjekten
in einer Datenbank abgelegt sind.
-
In
einem dritten Aspekt umfasst eine computergestützte Vorrichtung zum Erstellen
von Grafikentwürfen
auf Basis einer Delayed-Rendering-Technik unter Anwendung skalierbarer
Vektorgrafiken eine Datenbank, die eine Mehrzahl von Objekten enthält, deren
jedes eine skalierbare Vektorgrafik ist, und ein Editier-Mittel
zum Editieren einer Grafikszene unter Anwendung eines Satzes von
Befehlen und Referenzzeigern.
-
Damit
sind einige Ausführungsbeispiele
der Erfindung grob skizziert, um ein besseres Verständnis der hier
enthaltenen detaillierten Beschreibung zu ermöglichen und damit der vorliegende
Beitrag zum Fach besser eingeordnet werden kann. Es gibt natürlich andere
Ausführungsbeispiele
der Erfindung, die weiter unten beschrieben bzw. auf die nachstehend
Bezug genommen wird und welche den Gegenstand der angehängten Patentansprüche bilden.
-
In
dieser Hinsicht und vor Erklärung
mindestens eines Ausführungsbeispiels
der Erfindung im Detail ist darauf hinzuweisen, dass die Erfindung
in ihrer Anwendung nicht auf die Details der Konstruktion und die Anordnungen
der Bauteile beschränkt
ist, wie sie hier in der nachstehenden Beschreibung vorgegeben oder in
den Zeichnungen dargestellt sind. Die Erfindung ist neben den beschriebenen
auch anderen Ausführungsbeispielen
zugänglich
und kann in unterschiedlichen Arten praktiziert und ausgeführt werden.
Es ist zudem zu beachten, dass die hier und im Abstrakt benützte Phraseologie
und Terminologie nur beschreibenden Charakter haben und nicht einschränkend betrachtet
werden dürfen.
-
In
diesem Sinne ist es für
durchschnittliche Fachleute einleuchtend, dass das Konzept, auf
dem diese Offenbarung beruht, ohne weiteres als Grundlage für die Gestaltung
anderer Strukturen, Methoden und System dienen kann, um die verschiedenen
Ziele der vorliegenden Erfindung zu erreichen. Es ist deshalb wichtig, dass
die Ansprüche
so betrachtet werden, dass sie derartige äquivalente Konstruktionen einbeziehen,
sofern diese nicht vom Geist und Geltungsbereich der vorliegenden
Erfindung abweichen.
-
KURZE BESCHREIBUNG DER
ZEICHNUNGEN
-
1 ist
eine Vorrichtung zur Erstellung und zum verzögerten Rendern (Delayed Rendering)
von Grafikszenen mit skalierbaren Vektorgrafiken.
-
2 stellt
eine beispielhafte Grafikszene dar.
-
3 ist
ein Fließdiagramm,
in dem eine beispielhafte Operation zur Erstellung und zum Rendern
einer auf einer skalierbaren Vektorgrafik beruhenden Szene skizziert
ist.
-
DETAILLIERTE BESCHREIBUNG
-
Der
spezifische Ansatz der offenbarten Methoden und Systeme umfasst
eine Vielzahl neuartiger Elemente, die so konzipiert sind, dass
sie dergestalt zusammen wirken, dass sie einen verbesserten Ansatz
zum Management von Enterprise Content mit skalierbaren Vektorgrafiken
schaffen. Die Vorteile werden dem Leser nachstehend gewahr werden
und schließen
(ohne darauf beschränkt
zu sein) Folgendes ein (beliebige Reihenfolge):
Erstens, anstatt "rohe" Grafikdaten direkt
in ein Diagramm einzubauen, setzen die offenbarten Methoden und Systeme
Referenzen (auch als "Zeiger" oder "Referenzzeiger" bekannt) auf anderswo
gespeicherte Grafikobjekte ein. Anhand dieses Ansatzes können die
offenbarten Methoden und Systeme Grafikentwurfdateien sehr kleiner
Größe produzieren,
da in solchen Entwurfsdateien nur wenige oder gar keine eigentlichen
grafischen Informationen direkt eingesetzt werden müssen.
-
Zweitens,
angesichts der Tatsache, dass Referenzzeiger anstatt tatsächlicher
Grafikdaten in die Entwurfsdateien eingesetzt werden, kann jede
Entwurfsdatei automatisch aktualisiert werden, wenn ein konstituierendes
Grafikobjekt in einer Bibliothek/Datenbank aktualisiert wird.
-
Drittens,
in verschiedenen Ausführungsbeispielen
sind die offenbarten Methoden und Systeme offenen Standards zugänglich,
wie sie auf den meisten Computern frei verfügbar vorhanden sind. So können beispielsweise
vom Verarbeitungsstandpunkt aus betrachtet, wenn die offenbarten
Methoden und Systeme auf der eXtended Markup Language (XML – Erweiterte
Beschreibungssprache) basieren, eine große Vielfalt an Verarbeitungs-Tools,
z.B. XML Parser oder XML Transformation Tools wie XSLT, in den anschließenden Prozessen
zur Ausführung
zusätzlicher Änderungen
oder Datenextraktionen aus den generierten Grafiken benützt werden.
-
Viertens,
durch Erweiterung der offenbarten Methoden und Systeme in unterschiedlichen
Ausführungsbeispielen
mit gut konstruierten Sprach-Tools kann eine Bedienperson ein einzelnes
Grafikdesign produzieren, das buchstäblich auf Tastendruck jeder
bekannten menschlichen Sprache angepasst werden kann, die in die
Grafikobjekte codiert ist. Beispielsweise kann die Bedienperson
(während
oder nach der Gestaltung) nach Erstellung eines mechanischen Diagramms
mit unterschiedlichen Teilen und zugehörigen Labels, sicher sein,
dass – welche
Sprache auch immer verwendet wird – die Labels niemals ineinander übergehen
oder in ein Grafikobjekt eindringen.
-
Ein
weiterer Vorteil der offenbarten Methoden und Systeme besteht darin,
dass der Endbenutzer unabhängig
verschiedene Dinge gestalten kann, wie beispielsweise Produktlabels
und Wartungshandbücher,
unabhängig
von allfälligen
laufenden Versuchen, Systembibliotheken mit minimalen Problemen
zu aktualisieren. Dies kann sowohl die Dokumentveröffentlichungszeit
verkürzen
wie die Veröffentlichung
selbst für
unerfahrene Beschäftigte
vereinfachen.
-
Für die Zwecke
dieser Offenbarung kann der Ausdruck "Grafiksymbol" oder "Grafikobjekt" eine Datenstruktur bezeichnen, die
aktuelle Grafikdaten enthält,
d.h. Befehle und/oder Informationen, die erforderlich sind, eine
zwei- oder dreidimensionale geometrische Form zu beschreiben. Der
Ausdruck "Grafikdatenbank" oder "Grafikbibliothek" kann jeden Satz
von Grafikobjekten bezeichnen, der allgemein gespeichert ist.
-
Die
Ausdrücke "Referenzzeiger", "Referenz" und "Zeiger" können jedes
Datenelement bezeichnen, das geeignet ist, ein bestimmtes Grafikobjekt
in einer Grafikdatenbank zu identifizieren. Beispielsweise kann ein "Referenzzeiger" ein alphanumerisches
Label, eine Zahl in einem Zahlenbereich, ein Speicher-Offset usw. sein,
wie erforderlich oder sonstwie wünschenswert.
-
Eine "Grafikszene" kann jede Sammlung
von zwei oder mehr Grafikobjekten sein, die in einem definierbaren
gemeinsamen Sichtbereich platziert sind, und eine "Grafikdatei" oder "Entwurfdatei" kann jede Datei sein,
die einen Satz von Referenzzeigern und entsprechenden Befehlen enthält, die
zur Produktion einer entsprechenden Grafikszene verwendbar sind.
Für die
Zwecke dieser Offenbarung kann ein "Befehl" etwa X-Y-Koordinateninformationen,
Winkelinformationen, Skalierungsinformationen und jede andere Datenform umfassen,
die sich auf die Größe, Form,
Position, Farbe usw. eines Grafikobjekts in einer Grafikszene auswirken
könnte.
-
1 ist
ein Grafikeditor 100, der geeignet ist, einer Bedienperson
das Erstellen, Editieren, Rendern (Bildumsetzung) und Anzeigen von
Enterprise Content zu ermöglichen.
Wie in 1 dargestellt, umfasst der Grafikeditor 100 eine
Steuereinheit 110, einen Speicher 120, eine Scalable
Vector Graphics (SVG) Datenbank 130, eine Editiereinheit 140 mit
einem Satz Bedienelemente 142, eine Übersetzungseinheit 150,
eine Rendering-Einheit 160 mit Display 170, eine
Sprachkollisions-Feststellungseinheit 180 und eine Eingabe/Ausgabe-Einheit 190.
Die unterschiedlichen Komponenten 110-190 sind
mit dem Daten/Programm-Bus 102 aneinander gekoppelt.
-
Obwohl
der exemplarische Grafikeditor 100 der 1 eine
Busarchitektur benützt,
ist darauf hinzuweisen, dass auch jede andere Architektur verwendet
werden kann, wie durchschnittlichen Fachleuten wohlbekannt. Beispielsweise
können
in unterschiedlichen Ausführungsbeispielen
die diversen Komponenten 110-190 die Form separater
elektronischer Komponenten annehmen, die über eine Serie getrennter Busse
aneinander gekoppelt sind.
-
In
weiteren Ausführungsbeispielen
können
eine oder mehrere der unterschiedlichen Komponenten 110-190 die
Form separater Server annehmen, die über ein oder mehrere Netzwerke
aneinander gekoppelt sind. Außerdem
ist festzuhalten, dass jede der Komponenten 110-190 vorteilhafter
Weise unter Anwendung mehrerer Computergeräte realisiert werden kann,
die kooperativ eingesetzt werden. Wenn beispielsweise die SVG Datenbank
in einen Server gestellt wird und mehrere Kopien der restlichen
Komponenten aus einer Mehrzahl von vernetzten Computern vernetzt
werden, können
mehrere Workstations realisiert werden, die mehreren unabhängigen Bedienpersonen
die Gestaltung unterschiedlicher Dokumente mit Hilfe einer gemeinsamen Datenbank
erlauben (oder, wichtiger: die Speicher- und die Transformationsaufgaben
können
unter mehreren Servern aufgeteilt werden, von denen jeder einem
Aspekt des Speicher-/Abrufprozesses zugeteilt ist, wodurch eine
große
Zahl an Benutzern in die Lage versetzt wird, auf das System zuzugreifen,
aber auch das System in die Lage versetzt wird, große Bibliotheken
von Grafikobjekten und geschaffenen Grafikszenen/Diagrammen zu bewältigen).
-
Es
sollte auch beachtet werden, dass einige der oben aufgeführten Komponenten 130, 140, 150, 160 und 170 die
Form von Software/Firmware-Routinen annehmen können, die im Speicher 120 abgelegt
sind und von der Steuereinheit 110 ausgeführt werden
können,
oder auch Software-/Firmware-Routinen, die in separaten Speichern
in separaten Servern/Computer abgelegt sind und von unterschiedlichen
Steuereinheiten ausgeführt
werden. Ferner ist zu beachten, dass die Funktionen einzelner oder
aller der Komponenten 140, 150, 160 und 170 unter
Anwendung objektorientierter Software erreicht werden können, womit
eine Portabilität, Softwarestabilität und eine
Menge anderer Vorteile erreicht werden, die mit nicht objektorientierter
Software nicht erzielbar sind.
-
Im
Betrieb kann eine Bedienperson die Editiereinheit 140 abrufen,
und durch Betrachten des Displays 170 und Manipulieren
der Bedienelemente 142 eine Vielzahl unterschiedlicher
Editieroperationen ausführen, wie
sie in der Fachwelt grundsätzlich
bekannt sind, etwa ein Grafikobjekt aufrufen, die Form, den Ort
und die Ausrichtung des Grafikobjekts ändern, usw. Die Bedienelemente 142 des
vorliegenden Ausführungsbeispiels können jede
Anzahl gut bekannter oder später
entwickelter realer oder virtueller Computerbedienelemente umfassen,
wie Tastaturen, Tastenfelder (Keypads), eine Maus oder einen Trackball,
einen Stift mit berührungsintensivem
Bildschirm, virtuelle Tasten, Dateneingabefenster usw. Das Display 170 kann
jede bekannte oder später
entwickelte Vorrichtung sein, die zum Anzeigen computergestützter Informationen
geeignet ist, etwa ein Computerbildschirm oder ein TV-Bildschirm.
-
Wenn
die Bedienperson eine Grafikszene entwickelt, kann eine (in 1 nicht
dargestellte) Textdatei generiert und automatisch und – auf Wunsch – nahezu
gleichzeitig aktualisiert werden, die geeignet ist, die Grafikszene
zu beschreiben. Beispielsweise zeigt 2 eine exemplarische
Grafikszene 200, die eine Anzahl von (Darstellungen von)
Grafikobjekten 210-230 und Platzhaltern 250-260 enthält, die
in verschiedenen Positionen relativ zueinander ausgerichtet sind.
Der nachstehend aufgeführte
Computercode ist ein XML-basierter Text-Stream, der zum Rendern
der in 2 oben abgebildeten SVG Grafikszene verwendet
werden kann. Es ist zu beachten, dass der Code unten eigentlich
abgeleiteter Code ist, von dessen XML-Stream leere und irrelevante
Felder entfernt wurden, um ihn leichter lesbar zu machen. Jedoch
ist der resultierende Stream unten nach wie vor gültig und
würde die
Grafik der 2 erzeugen.
-
-
-
Wie
oben zu sehen, kann der Computercode im wesentlichen eine Anzahl
von Referenzzeigern auf Grafikobjekte und zugehörige Befehle ausmachen. Zwar
ist der vorliegende Code in XML geschrieben, es ist jedoch zu beachten,
dass jede bestehende oder später
entwickelte Computersprache, die Referenzzeiger (in den Beispielen
oben Dateinamen) und unterschiedliche Befehle (z.B. scale) integrieren
kann, ebenfalls verwendet werden könnte oder für eine Verwendung entsprechend
modifiziert bzw. angepasst werden könnte. Beispielsweise könnte der
Standard der Hyper Text Markup Language (html) dermaßen modifiziert
werden, dass er skalierbare Vektorgrafiken enthält, oder ein spezielles Vorverarbeitungs-Tool
oder -prozess könnte
im Zusammenhang mit html verwendet werden, um angemessen skalierte
Grafikobjekte und Text zu rendern, ehe der html-Code dann auf solche
vorverarbeiteten Objekte und Texte zur Anwendung kommt.
-
Neben
SVG Grafiken kann der Editor 140 einzelne "Bildsymbole"/"Bildobjekte" platzieren und manipulieren. Ein Bildsymbol/Objekt
kann einem SVG Symbol/Objekt sehr ähnlich sein, nur dass das Bildsymbol/Objekt
aus Raster- oder Bitmap-Informationen anstatt aus Vektordaten konstituiert
ist. Diese Funktionalität
kann einbezogen werden, um bestimmte Anwendungen – etwa Produktlabel-Publishing – weiter
zu verbessern, da viele der Elemente innerhalb bestimmter Produkt-Labels
(z.B. ein Babynahrungs-Label) mit größerer Wahrscheinlichkeit von
einem gerasterten Bitmap-Bild kommen würden als von einem Vektor.
Jegliche Raster-/Bitmap-Ojekte können
in der Datenbank 130 oder in einem separaten Speicher abgelegt
werden, und auf gleiche SVG-Objekte kann, anstatt sie zu speichern,
in einer Grafikdatei Bezug genommen werden.
-
Wir
kehren zurück
zu 1. Wenn die Bedienperson an einer Grafikszene
arbeitet und die entsprechende Grafikdatei in XML-Sprache generiert,
kann der Text in der Datei von der Übersetzungseinheit 150 so manipuliert
werden, dass die Textdaten in eine Datenform übersetzt werden, die die Steuereinheit 100 (oder ein
anderer lokaler Prozessor) versteht, etwa in einen binären Maschinencode.
Die Übersetzung
kann online stattfinden, oder je nach Bedarf auch später.
-
Als
nächstes
kann die Rendering-Einheit 160 die übersetzte Grafikdatei empfangen
und eine als "Delayed
Rendering" (verzögerte Bildumsetzung)
bezeichnete Aktion ausführen.
Von der grafisch neutralen XML-Darstellung einer Vorlage kann eine
SVG-basierte Datei für
Editierzwecke (was direkt in die Editiereinheit 140 eingespeist
würde)
oder für
Anzeige-/Druckzwecke geschaffen werden, wofür eine einfache, nicht-interaktive
Version umgesetzt werden kann. Diese einfachen gerenderten Versionen
können
an andere Systeme versendet und direkt für die elektronische Anzeige
oder den Ausdruck oder als Eingabe zur Erstellung von Bitmap-Versionen
der Grafiken benützt
werden.
-
Diese
Delayed-Rendering-Funktion ermöglicht
einfachere Downstream-Änderungen,
wenn festgestellt wird, dass eine systematische Änderung benötigt wird. Eine neue Rendering-Einheit
kann konstruiert/geschrieben werden, oder eine existierende angepasst,
und dann kann der Content einer Grafikdatei neu gerendert werden,
ohne dass menschliches Laden und Neubearbeiten der Vorlage Stück für Stück erforderlich
wäre. Solche Änderungen
könnten
umfassen: Ändern
der Schriftsätze
(Typen, Größe usw.), Ändern der
Pfeilspitzen an Angaben, Verwendung eines anderen Hintergrunds für die Vorlage,
Hinzufügen
eines Randes usw.
-
Die
möglichen
Vorteile sind erheblich. In der Vergangenheit würden solche systematischen Änderungen
eine manuelle Neubearbeitung jedes einzelnen Vorlagenelements bedeutet
haben, um derartige Effekte zu erzielen. Mit den offenbarten Editiersystemen
und Methoden lässt
sich dagegen ein Re-Rendering ohne menschliche Intervention auslösen.
-
Zusätzlich zu
den oben beschriebenen Prozessen kann es vorteilhaft sein, die oben
offenbarten Grafiksysteme und Methoden mit unterschiedlichen Sicherungen
zu erweitern, wofür
die Sprachkollisions-Feststellungseinheit 180 verwendet
wird. Die Sprachkollisions-Feststellung kann in Online/Echtzeit
oder Offline-Programm in einer Batch-Umgebung erfolgen. Die Sprachkollisions-Feststellungseinheit 180 ist
brauchbar zum Laden von mehrsprachigen Diagrammen und zur Festl
erleichtert den mehrsprachigen Proofing-Prozess ganz erheblich,
indem es herausfindet, welches Diagramm Optimierungsbedarf hat.
-
Es
ist zu beachten, dass diese Art von Tool und Verarbeitung wegen
der einzigartigen Natur dieser Anwendungsumgebung nützlich ist.
Beispielsweise kann ein Autor verantwortlich sein für die Erstellung
der englischen Versionen eines Diagramms, ist aber nicht interessiert,
die Sprachfunktionen des Systems dazu zu verwenden, die Diagramme
sogleich mehrsprachig-"freundlich" zu machen. Dem Autor
ist nur an der englischen Ausgangsversion gelegen; er/sie will sich
nicht mit der Positionierung für
mehr als diese eine Sprache "plagen". Das System würde das
Editieren in Englisch bei Einsicht in die Gesamtgröße oder
die Auswirkungen anderer Sprachen erlauben, jedoch bietet die Sprachkollisionsfunktion
eine zeitsparende Alternative. Ein Tool wie dieses dient der Prüfung der
in Englisch erstellten Originaldiagramme, könnte aber einige Identifizierungen in
Form wahrscheinlicher Kandidaten für Anpassungen in den letzten
Endes zu unterstützenden
Sprachen brauchen (die von einer anderen Gruppe als die Schöpfer der
Originalversion ausgeführt
werden).
-
Eine
weitere mögliche
Funktion der Sprachkollisions-Feststellungseinheit 180 sind "Einzel-Textanmerkungen", bei denen Textanmerkungen
auf Ebene der einzelnen Elemente sowie auf Diagramm-Ebene zugeordnet
werden können,
wodurch eine laufende Diskussion über den Inhalt eines Diagramms
möglich
wird. Diese Funktion kann das Speichern, Eingeben und Prüfen von
Textanmerkungen für
jedes Element in einem Diagramm erlauben. Wenn das Aufrufsystem
Benutzer-IDs mit den Editier-Anforderungen sendet, wird diese ID mit
allen Anmerkungen (und allen anderen Editiermaßnahmen) aufgezeichnet, wodurch
anhand der Anmerkungen nachprüfbar
wird, wer an einem Diagramm was ausgeführt hat, und ebenso wer darüber was
gesagt hat.
-
3 ist
ein Fließdiagramm,
in dem eine exemplarische Operation zum Generieren einer Grafikdatei und
Rendern einer entsprechenden Grafikszene dargestellt ist. Der Prozess
beginnt mit Schritt 302, wo eine Bedienperson eine Reihe
computergestützter
Bedienelemente manipuliert, um auf einem Display eine Grafikszene
zu erzeugen. Danach wird in Schritt 304 eine Textdatei
als Reaktion auf die Manipulation der Bedienelemente aus Schritt 302 generiert.
Die exemplarische Datei aus Schritt 304 ist zwar eine XML
Datei, doch kann – wie
oben bereits erwähnt – die im
einzelnen benützte
Sprache von Ausführungsbeispiel
zu Ausführungsbeispiel
variieren. Die Steuerung geht weiter zu Schritt 306.
-
In
Schritt 306 kann eine Reihe von Sprachkollisionsoperationen
ausgeführt
werden, um zu verhindern, dass Nicht-Text/Textkästen mit anderen Nicht-Text/Textkästen oder
mit einem Grafikobjekt kollidieren. Im Kontext des Fließdiagramms
der 3 wird der Schritt 306 als "online/Echtzeit" stattfindend dargestellt,
doch kann dieser Schritt auch offline ausgeführt oder überhaupt weggelassen werden.
Die Steuerung geht weiter zu Schritt 308.
-
In
Schritt 308 wird die in Schritt 304 generierte
XML Grafikdatei in eine lokale, maschinenabhängige Sprache übersetzt.
Als nächstes
werden in Schritt 310 die unterschiedlichen SVG Objekte,
auf die in der übersetzten
XML Grafikdatei verwiesen wird, von einer Datenbank abgerufen. Dann
wird in Schritt 312 an den abgerufenen Grafikobjekten ein
Delayed-Graphic-Rendering-Prozess
ausgeführt.
Die Steuerung geht dann zu Schritt 350 weiter, wo der Prozess
angehalten wird.
-
In
Bezug auf unterschiedliche Ausführungsbeispiele,
in denen die oben beschriebenen Systeme und/oder Methoden unter
Anwendung einer programmierbaren Vorrichtung, etwa eines computergestützten Systems
oder einer programmierbaren Logik, implementiert werden, ist darauf
hinzuweisen, dass die oben beschriebenen Systeme und Methoden auf
Basis jeder der bekannten oder später entwickelten Programmiersprachen
implementiert werden können,
wie beispielsweise "C", "C++", "FORTRAN", "Pascal", "VHDL" und dergleichen.
-
Dementsprechend
können
unterschiedliche Speichermedien, wie etwa magnetische Computerplatten, optische
Platten, elektronische Speicher und dergleichen, vorbereitet werden,
welche Informationen enthalten können,
die eine Vorrichtung, etwa einen Computer, anleiten können, die
oben beschriebenen Systeme und/oder Methoden zu implementieren.
Wenn eine geeignete Vorrichtung Zugang zu den Informationen und Programmen
hat, die auf dem Speichermedium vorhanden sind, kann das Speichermedium
der Vorrichtung die Informationen und Programme liefern, wodurch
die Vorrichtung in die Lage versetzt wird, die oben beschriebenen
Systeme und/oder Methoden auszuführen.
-
Wenn
beispielsweise eine Computerplatte mit geeignetem Material, etwa
einer Quelldatei, einer Objektdatei, einer ausführbaren Datei oder dergleichen,
einem Computer zur Verfügung
gestellt würde,
könnte der
Computer die Informationen empfangen, sich entsprechend konfigurieren
und die Funktionen der unterschiedlichen Systeme und Methoden ausführen, die
in den oben aufgeführten
Diagrammen und Fließdiagrammen
skizziert sind, um die unterschiedlichen Funktionen zu implementieren.
Das heißt,
der Computer könnte verschiedene
Teile von Informationen von der Platte mit Bezug auf unterschiedliche
Elemente der oben beschriebenen Systeme und/oder Methoden empfangen,
die einzelnen Systeme und/oder Methoden implementieren und die Funktionen
der verschiedenen offenbarten Systeme und/oder Methoden koordinieren.
-
Die
vielen Funktionen und Vorteile der Erfindung gehen aus der detaillierten
Spezifikation hervor; es liegt deshalb in der Absicht der angehängten Ansprüche, alle
diese Funktionen und Vorteile der Erfindung abzudecken, die unter
die Prinzipien und in den Geltungsbereich der Erfindung fallen.
Da einer durchschnittlichen Fachperson zahlreiche Modifikationen
und Variationen zugänglich
sind, besteht nicht die Absicht, die Erfindung auf die präzise Konstruktion
und Ausführung
zu beschränken,
wie diese illustriert und beschrieben sind, und entsprechend können alle
geeigneten Modifikationen und Äquivalente
einbezogen werden, die in den Geltungsbereich der Erfindung fallen.
-
ZUSAMMENFASSUNG
-
Methoden
und Systeme für
die Erstellung und das verzögerte
Rendering skalierbarer Vektorgrafikszenen werden offenbart. Durch
die Bereitstellung von Techniken für eine Datenbank, die eine
Mehrzahl von Objekten enthält,
wobei jedes Objekt eine skalierbare Vektorgrafik ist, kann ein Editier-Tool
mit einer Mehrzahl von Grafik-Bedienelementen dazu verwendet werden,
unter Anwendung der Mehrzahl von skalierbaren Vektorgrafikobjekten
eine Grafikszene zu schaffen, indem ein erster Satz von Befehlen
und Referenzzeigern manipuliert wird, wobei jeder Referenzzeiger
auf ein entsprechendes skalierbares Vektorgrafikobjekt verweist.