Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND APPARATUS FOR THE PAGE-BY-PAGE PROVISION OF AN ELECTRONIC DOCUMENT AS A COMPUTER GRAPHIC
Document Type and Number:
WIPO Patent Application WO/2009/103620
Kind Code:
A8
Abstract:
Method for providing at least one page of a virtual electronic document as a computer graphic, having the following steps: selection of at least one content data element for a virtual electronic document; determination of formatting data; calculation, for the content data element, of a page identification value and of an element position value on the page; storage of an association between content data element, page identification value and element position value in a database; evaluation of a request for a page of the virtual electronic document; determination, by accessing the database, of at least one contact data element and element position value of the content data element which correspond to the page identification value of the requested page; calculation of a computer graphic on the basis of the formatting data, the content data element determined for the requested page and the associated element position value; provision of the computer graphic as a page of the virtual electronic document for the purpose of display, and also an apparatus, an arrangement and a computer program product therefor.

More Like This:
Inventors:
RACIC ALEX (DE)
Application Number:
PCT/EP2009/051343
Publication Date:
October 15, 2009
Filing Date:
February 05, 2009
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BOOKRIX GMBH & CO KG (DE)
RACIC ALEX (DE)
International Classes:
G06F17/22
Attorney, Agent or Firm:
REININGER, J. (Schumannstraße 2, Berlin, DE)
Download PDF:
Claims:
Ansprüche:

1. Verfahren zur Bereitstellung mindestens einer Seite eines virtuellen elektronischen Dokumentes als Computergrafik (3) zum Abruf über ein Netzwerk, mit den folgenden Schritten:

Auswählen (100) mindestens eines Inhaltsdatenelementes (19, 19a) für ein virtuelles elektronisches Dokument;

Bestimmen (110) von Formatierungsdaten für das virtuelle elektronische Dokument;

- Berechnen (120), für das mindestens eine ausgewählte

Inhaltsdatenelement, eines Seitenidentifikationswertes (19', 19a') einer Seite des virtuellen elektronischen Dokumentes und eines Elementpositionswertes (19", 19a") auf der durch den Seitenidentifikationswert identifizierten Seite, abhängig von den Formatierungsdaten;

Speichern (130) einer Zuordnung (18, 18a) von ausgewähltem Inhaltsdatenelement, Seitenidentifikationswert des ausgewählten Inhaltsdatenelementes und Elementpositionswert des ausgewählten Inhaltsdatenelementes in einer Datenbank (16);

- Auswerten (140) einer Anforderung einer Seite des virtuellen elektronischen Dokumentes unter Bestimmung eines Seitenidentifikationswertes der angeforderten Seite;

Bestimmen (150), unter Zugriff auf die Datenbank, mindestens eines Inhaltsdatenelementes und Elementpositionswertes des bestimmten Inhaltsdatenelementes, die dem Seitenidentifikationswert der angeforderten Seite entsprechen;

Berechnen (160) einer Computergrafik auf Basis der Formatierungsdaten, des für die angeforderte Seite bestimmten Inhaltsdatenelements und des zugeordneten Elementpositionswertes;

- Zurverfügungstellen (170) der Computergrafik als Seite des virtuellen elektronischen Dokumentes zur Darstellung.

2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Auswerten der Anforderung einer Seite des virtuellen elektronischen Dokumentes unter Empfangen der Anforderung durch einen Web-Server (12) erfolgt.

3. Verfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, dass das Zurverfügungstellen der Computergrafik durch übermitteln einer Grafikdatei durch einen Web-Server (12) erfolgt.

4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass ein Zugriffsbefehl auf ein Inhaltsdatenelement der zur Verfügung gestellten Seite des virtuellen elektronischen Dokumentes auf Basis seines Elementpositionswertes ausgewertet wird.

5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass das zum Seitenidentifikationswert der zur Verfügung gestellten Seite und dem Elementpositionswert zugeordnete Inhaltsdatenelement unter Zugriff auf die Datenbank ermittelt wird.

6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass ein einem Suchbegriff zugeordneter Suchbefehl ausgewertet wird und Inhaltsdatenelemente des virtuellen elektronischen Dokumentes ermittelt werden, die dem Suchbegriff entsprechen.

7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass die Formatierungsdaten einen Seitenbreite-Wert und/oder einen Seitenhöhe-Wert und/oder einen Satzspiegelbreite-Wert und/oder einen Satzspiegelhöhe-Wert umfassen.

8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass das Berechnen des Elementpositionswertes unter Berechnung der Ausmaße des ausgewählten Inhaltsdatenelementes erfolgt.

9. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass eine Abfolge von Inhaltsdatenelementen ausgewählt wird.

10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass eine Zeile berechnet wird (200 - 290) unter horizontalem Aneinanderfügen (260) der aufeinanderfolgenden ausgewählten Inhaltsdatenelemente auf Basis des Addierens der Breite des jeweiligem Inhaltsdatenelementes, solange, bis der Satzspiegelbreite-Wert erreicht ist (270).

11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass eine Seite berechnet wird (300 - 380) unter vertikalem Aneinanderfügen (330) der aufeinanderfolgenden Zeilen auf Basis des Addierens der Höhe der Zeilen, solange, bis der Satzspiegelhöhe-Wert erreicht ist (340), wobei die Höhe einer Zeile durch das höchste Inhaltsdatenelement der Zeile bestimmt wird.

12. Verfahren nach Anspruch 11 , dadurch gekennzeichnet, dass dem ausgewählten Inhaltsdatenelement derjenige Seitenidentifikationswert zugeordnet wird (380), der der berechneten Seite entspricht, zu der das ausgewählte Inhaltsdatenelement hinzugefügt wurde.

13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass dem ausgewählten Inhaltsdatenelement derjenige Elementpositionswert zugeordnet wird (380), der der Position des ausgewählten Inhaltsdatenelementes auf der berechneten Seite entspricht, zu der das ausgewählte Inhaltsdatenelement hinzugefügt wurde.

14. Verfahren nach einem der Ansprüche 1 bis 11 , dadurch gekennzeichnet, dass das ausgewählte Inhaltsdatenelement ein Textelement aufweist und seine Breite unter Anfügung (220) eines Leerzeichens berechnet wird.

15. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass die Höhe des Textelementes unter Anfügung (220) eines Schriftzeichens berechnet wird, welches in der Schriftart und Schriftgröße des Textelementes die größtmögliche Schrifthöhe erzeugt.

16. Datenaufbereitungsvorrichtung (1 ) für ein Verfahren nach einem der Ansprüche 1 bis 15, mit einer Verarbeitungseinheit (10), einem Speicher

(14) und einer Kommunikationsschnittstelle (12),

dadurch gekennzeichnet, dass

die Verarbeitungseinheit ausgebildet ist zum Auswählen mindestens eines Inhaltsdatenelementes (19, 19a) für ein virtuelles elektronisches Dokument;

die Verarbeitungseinheit ausgebildet ist zum Bestimmen von Formatierungsdaten für das virtuelle elektronische Dokument;

die Verarbeitungseinheit ausgebildet ist zum Berechnen, für das mindestens eine ausgewählte Inhaltsdatenelement, eines Seitenidentifikationswertes (19', 19a') einer Seite des virtuellen elektronischen Dokumentes und eines Elementpositionswertes (19", 19a") auf der durch den Seitenidentifikationswert identifizierten Seite, abhängig von den Formatierungsdaten;

die Verarbeitungseinheit ausgebildet ist, eine Zuordnung (18, 18a) von ausgewähltem Inhaltsdatenelement, Seitenidentifikationswert des ausgewählten Inhaltsdatenelementes und Elementpositionswert des ausgewählten Inhaltsdatenelementes in einer im Speicher enthaltenen Datenbank abzulegen.

17. Vorrichtung (1) zur Bereitstellung mindestens einer Seite eines virtuellen elektronischen Dokumentes als Computergrafik (3) zum Abruf über ein Netzwerk für ein Verfahren nach einem der Ansprüche 1 bis 15, mit einer Verarbeitungseinheit (10), einem Speicher (14) und einer an das Netzwerk gekoppelten Kommunikationsschnittstelle (12),

dadurch gekennzeichnet, dass

der Speicher eine Datenbank (16) mit Zuordnungen (18, 18a) jeweils eines Inhaltsdatenelementes (19, 19a), eines Seitenidentifikationswertes (19', 19a') des Inhaltsdatenelementes und eines Elementpositionswertes (19", 19a") des Inhaltsdatenelementes aufweist;

die Verarbeitungseinheit ausgebildet ist zum Auswerten einer Anforderung einer Seite des virtuellen elektronischen Dokumentes unter Bestimmung eines Seitenidentifikationswertes der angeforderten Seite;

die Verarbeitungseinheit ausgebildet ist zum Bestimmen, unter Zugriff auf die Datenbank, mindestens eines Inhaltsdatenelementes und Elementpositionswertes des bestimmten Inhaltsdatenelementes, die dem Seitenidentifikationswert der angeforderten Seite entsprechen;

die Verarbeitungseinheit ausgebildet ist zum Berechnen einer Computergrafik auf Basis der Formatierungsdaten, des für die angeforderte Seite bestimmten Inhaltsdatenelements und des zugeordneten Elementpositionswertes;

die Verarbeitungseinheit ausgebildet ist zum Zurverfügungstellen der Computergrafik als Seite des virtuellen elektronischen Dokumentes zur Darstellung.

18. Anordnung (1 ) zur Bereitstellung mindestens einer Seite eines virtuellen elektronischen Dokumentes als Computergrafik (3) mit einer Vorrichtung nach Anspruch 16 und einer Vorrichtung nach Anspruch 17, für ein Verfahren nach einem der Ansprüche 1 bis 15.

19. Auf einem computerlesbaren Speichermedium gespeichertes Computerprogrammprodukt mit computerlesbaren Programmmitteln zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 15 durch einen Computer.

20. In einer digitalen Trägerwelle verkörpertes Computerprogrammprodukt mit computerlesbaren Programmmitteln zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 15 durch einen Computer.

Description:

Verfahren und Vorrichtung zur seitenweisen Bereitstellung eines elektronischen Dokumentes als Computergrafik

Beschreibung:

Technisches Gebiet

Die Erfindung betrifft ein Verfahren zur Bereitstellung mindestens einer Seite eines elektronischen Dokumentes als Computergrafik zum Abruf über ein Netzwerk, sowie eine Vorrichtung, eine Anordnung und ein Computerprogrammprodukt hierfür.

Hintergrund der Erfindung

Um elektronische Dokumente, wie etwa E-Books, zuverlässig, schnell und flexibel einer großen Zahl von Nutzern zum Lesen bereitstellen zu können, ist es bekannt, diese elektronischen Dokumente über einen Server, etwa einen Web-Server oder FTP-Server, zum Abruf bereitzustellen.

Dabei kann eine Datei übermittelt werden, die das elektronische Dokument vollständig enthält, etwa um unabhängig von einer gegenwärtigen Netzverbindung vom Nutzer gelesen werden zu können. Dies bedingt typischerweise große Dateien, die eine entsprechende Download-Last erzeugen, noch bevor die erste Seite angezeigt werden kann, und es wird im Betrachtungsgerät eine entsprechende Menge an Speicherplatz belegt. Ferner ist bekannt, einzelne Seiten des elektronischen Buches zu übertragen, die zuvor durch den Nutzer bzw. sein Betrachtungsgerät vom Server abgerufen wurden.

in beiden Varianten kann die übermittlung der Inhalte des Buches bzw. der einzelnen Seiten des Buches in einer Datei einer Seitenbeschreibungssprache erfolgen, bei dem die Inhaltselemente des Buches oder der Seite (wie etwa

Text, Diagramme, Grafiken) Objekte bilden, die jeweils in ihrem entsprechenden Format codiert sind und durch die Seitenbeschreibungssprache zur Buchseite angeordnet sind. Hierbei interpretiert das Betrachtungsgerät die in der Seitenbeschreibungsdatei enthaltenen Anweisungen und fügt entsprechend die beispielsweise zeichencodiert vorliegenden Textelemente und als Rastergrafikdatei vorliegenden Grafikelemente zum elektronischen Dokument zusammen. Beispiele für solche Seitenbeschreibungssprachen sind etwa PostScript (PS) oder das Portable Document Format (PDF), oder das Device independent file format (DVi).

Andererseits kann eine übermittlung des gesamten Dokumentes oder einzelner Seiten auch in Form einer Computergrafikdatei erfolgen, bei der alle Inhaltselemente der elektronischen Buchseite zusammen in einer Raster- oder Vektorgrafik codiert sind. Eine solche grafische übermittlung hat den Vorteil, dass die Inhalte vor unerwünschtem, einfachen Herauskopieren und Weiterverwenden geschützt sind, da die Textzeichen nicht als solche, sondern nur in ihrer grafischen Darstellung vorliegen. Andererseits aber wird so das Arbeiten mit dem Text, etwa das Suchen von Text oder Hinzufügen von Randnotizen, wie auch das Markieren und Weiterverarbeiten von Textpassagen deutlich erschwert.

Aus der deutschen übersetzung DE 694 34 434 T2 der europäischen

Patentschrift EP 0 731 948 B1 ist ein System zur benutzerfreundlichen Anzeige und Handhabung von als Computergrafik vorliegenden Seiten elektronischer Dokumente bekannt, wobei die Computergrafiken aus eingescannten Seiten gedruckter Patentdokumente stammen, und bei welchem die in den Computegrafiken dargestellten Texte zudem in einer parallelen Datenhaltung in zeichencodierter Form vorliegen. Dabei wird die Paginierung von eingescannten Druckseiten von Patentschriften in der zeichencodierten Textform nachempfunden, und es ist eine Darstellungsform möglich, bei der in nebeneinanderliegenden Fenstern die Textgrafik und der zeichencodierte Text dargestellt werden. Durch diesen doppelten Ansatz wird einerseits die originalgetreue grafische Darstellung angeboten und andererseits die

Weiterverarbeitbarkeit des zeichencodierten Textes ermöglicht, insbesondere das Suchen und Navigieren innerhalb eines Dokumentes.

Jedoch ist hier eine doppelte Darstellung der Inhalte erforderlich, da ein Nutzerzugriff auf die Textinhaltselemente nur im Darstellungsfenster des zeichencodierten Texts möglich ist. Diese doppelte Darstellung aber kann den Lesekomfort verringern und nimmt eine größere Darstellungsfläche in Anspruch als eine einfache Darstellung. Zudem sind bei diesem System sowohl die grafisch codierten Seiten, wie auch der zeichencodierte Text vom Server auf den Client zu übertragen, wodurch eine höhere Kommunikationslast entsteht. Der Text ist hierbei zudem nicht vor unerwünschter Weiterverarbeitung geschützt, da er dem Benutzer zeichencodiert vorliegt.

Aufgabe der vorliegenden Erfindung ist es daher, ein Verfahren anzugeben, welches ermöglicht, Seiten eines elektronischen Dokumentes zum Abruf über ein Netzwerk bereitzustellen, und dabei die Nachteile des Standes der Technik vermeidet, insbesondere eine unerwünschte elektronische Weiterverarbeitung der Inhalte erschwert und die Speicher- und Datenübertragungseffizienz verbessert, sowie eine Vorrichtung, eine Anordnung und ein Computerprogrammprodukt hierfür.

überblick über die Erfindung

Diese Aufgabe wird erfindungsgemäß jeweils durch den Gegenstand der Ansprüche 1, 16, 17, 18, 19 und 20 gelöst.

Die Erfindung nach Anspruch 1 lehrt ein Verfahren zur Bereitstellung mindestens einer Seite eines virtuellen elektronischen Dokumentes als Computergrafik zum Abruf über ein Netzwerk, mit den folgenden Schritten:

- A -

Auswählen mindestens eines Inhaltsdatenelementes für ein virtuelles elektronisches Dokument;

Bestimmen von Formatierungsdaten für das virtuelle elektronische Dokument;

- Berechnen, für das mindestens eine Inhaltsdatenelement, eines

Seitenidentifikationswertes einer Seite des virtuellen elektronischen Dokumentes und eines Elementpositionswertes auf der durch den Seitenidentifikationswert identifizierten Seite, abhängig von den Formatierungsdaten;

- Speichern einer Zuordnung von Inhaltsdatenelement,

Seitenidentifikationswert des Inhaltsdatenelementes und Elementpositionswert des Inhaltsdatenelementes in einer Datenbank;

Auswerten einer Anforderung einer Seite des virtuellen elektronischen Dokumentes unter Bestimmung eines Seitenidentifikationswertes der angeforderten Seite;

Bestimmen, unter Zugriff auf die Datenbank, mindestens eines Inhaltsdatenelementes und Elementpositionswertes des Inhaltsdatenelementes, die dem Seitenidentifikationswert der angeforderten Seite entsprechen;

- Berechnen einer Computergrafik auf Basis der Formatierungsdaten, des für die angeforderte Seite bestimmten Inhaltsdatenelements und des zugeordneten Elementpositionswertes;

Zurverfügungstellen der Computergrafik als Seite des virtuellen elektronischen Dokumentes zur Darstellung.

Indem Inhaltselemente erfindungsgemäß nicht in einem tatsächlichen elektronischen Dokument vorgehalten werden, sondern die bereitzustellenden Inhaltselemente nur virtuell Bestandteile eines elektronischen Dokumentes

sind, tatsächlich aber durch eine Datenbank verwaltet werden, wird eine gegenüber einem herkömmlichen elektronischen Dokument effizienter zu speichernde und flexibel zu handhabende Form der Datenhaltung und Datenorganisation gewählt. Aus der Datenbank könnnen die Inhaltsdatenelemente, wie zeichencodierte Wörter des Dokumenttextes, Referenzen auf Grafikobjekte, und dergleichen, anhand der für jedes der Inhaltsdatenelemente berechneten Seite im virtuellen Dokument und der Position (z.B., der Koordinaten) auf der Seite individuell unmittelbar adressiert und abgerufen werden, ohne das hierfür ein elektronisches Dokument durchsucht werden müsste. Die Verwendung einer Datenbank ist insbesondere vorteilhaft bei Verwendung eines Datenbank-Management-Systems (DBMS) und einer Bereitstellung einer großen Anzahl von umfangreichen Dokumenten auf einem Server.

Indem für die Inhaltsdatenelemente des virtuellen elektronischen Dokumentes jeweils seine Seite und Position auf der Seite berechnet wird und beide dem jeweiligen Inhaltsdatenelement zugeordnet werden, wird die individuelle und unmittelbare Zugreifbarkeit in der Datenbank gewährleistet. Somit wird ermöglicht, durch die Angabe einer Seite des virtuellen Dokumentes alle Inhaltsdatenelemente der Seite aus der Datenbank abzurufen, und diese ferner relativ zueinander anzuordnen. Ferner wird ermöglicht, ein bestimmtes

Inhaltsdatenelement, beispielsweise ein zeichencodiertes Wort, durch Angabe seiner Seite und Position auf der Seite eindeutig zu adressieren. Dies erlaubt die Verarbeitung von zeichencodierten Worten aufgrund ihrer grafischen Position.

Indem eine Seite nach Anforderung, etwa durch ein Betrachtungsgerät, zur Darstellung vorbereitet und dann zum Abruf zur Verfügung gestellt wird, wird die Ladezeit für die vom Betrachter gewählte Seite verkürzt, und es muss nur die darzustellende Seite auf dem Betrachtungsgerät vorgehalten werden. Dies ist besonders für mobile Betrachtungsgeräte, etwa Mobiltelefone oder Personal Digital Assistants (PDAs), vorteilhaft. Insbesondere in Verbindung mit der grafischen Bereitstellung der Seite zeigt sich der Vorteil, dass für das Bereitstellen zum Abruf nicht jede grafisch dargestellte Seite speichermäßig

vorgehalten werden muss, da sie auf Abruf anhand der Datenbankinformationen dynamisch erzeugt wird.

Indem eine Computergrafik der angeforderten Seite erstellt wird, etwa, indem die Inhaltsdatenelemente der angeforderten Seite in ihre grafische Darstellung umgerechnet und anhand ihrer Positionsinformationen in einer Raster- oder Vektor-Computergrafik angeordnet und zusammengefasst werden, und die Computergrafik dann zum Abruf über das Netzwerk zur Verfügung gestellt wird, werden dem Nutzer lediglich grafisch codierte Daten zur Verfügung gestellt, wodurch etwa eine unerwünschte Weiterverarbeitung von textuellen Inhalten des elektronischen Dokumentes erschwert wird.

Insgesamt wird somit eine effiziente Speicherung der ein elektronisches Dokument bildenden Inhalte bei der Vorhaltung zur Bereitstellung erreicht, wie auch beim Abruf des elektronischen Dokumentes, und es wird gleichzeitig eine individuelle Adressierbarkeit der der Darstellung zugrundeliegenden Inhaltselemente ermöglicht, ohne dass eine doppelte Datenhaltung oder doppelte Darstellung erforderlich wäre. Ferner wird eine unerwünschte nutzerseitige Weiterverarbeitung erschwert.

Weitere Ausführungsformen der Erfindung nach Anspruch 1 können entsprechend der auf diesen Anspruch rückbezogenen Unteransprüche verwirklicht werden.

Die Erfindung kann etwa dadurch weitergebildet sein, dass das Auswerten der Anforderung einer Seite des virtuellen elektronischen Dokumentes unter Empfangen der Anforderung durch einen Web-Server erfolgt, und /oder das Zurverfügungstellen der Computergrafik durch übermitteln einer Grafikdatei durch einen Web-Server erfolgt.

Weiterbildungen können dadurch verwirklicht sein, dass ein Zugriffsbefehl auf ein Inhaltsdatenelement der zur Verfügung gestellten Seite des virtuellen

elektronischen Dokumentes auf Basis seines Elementpositionswertes ausgewertet wird. Hierdurch wird es möglich, einzelne Inhaltsdatenelemente, z.B. einzelne Worte des Textes, durch eine Positionsangabe (Elementpositionswert) seiner grafischen Darstellung in der Seite zu kennzeichnen, resultierend etwa aus einem Mausklick, die zeichencodierte Form aus der Datenbank anhand des Elementpositionswertes abzurufen und zur Weiterverarbeitung bereitzustellen. Entsprechend können Weiterbildungen gekennzeichnet sein dadurch, dass das zum Seitenidentifikationswert der zur Verfügung gestellten Seite und dem Elementpositionswert zugeordnete Inhaltsdatenelement unter Zugriff auf die Datenbank ermittelt wird.

Das Verfahren kann dadurch weitergebildet sein, dass ein einem Suchbegriff zugeordneter Suchbefehl ausgewertet wird und Inhaltsdatenelemente des virtuellen elektronischen Dokumentes ermittelt werden, die dem Suchbegriff entsprechen. Somit kann eine Suchfunktion bereitgestellt werden, obgleich lediglich eine grafische Darstellung der Seite zum Abruf bereitgestellt wird.

Weiterbildungen der Erfindung können dadurch gekennzeichnet sein, dass die Formatierungsdaten einen Seitenbreite-Wert und /oder einen Seitenhöhe-Wert und/oder einen Satzspiegelbreite-Wert und/oder einen Satzspiegelhöhe-Wert umfassen. Hierdurch kann das Seitenformat und der bedruckte Bereich des virtuellen elektronischen Dokumentes, bzw. der zur Darstellung generierten Seiten, festgelegt werden.

In Ausführungsformen der Erfindung kann das Berechnen des Elementpositionswertes unter Berechnung der Ausmaße des Inhaltsdatenelementes erfolgen, und es kann eine Abfolge von Inhaltsdatenelementen ausgewählt werden.

In Ausführungsformen des Verfahrens kann eine Zeile berechnet werden unter horizontalem Aneinanderfügen der aufeinanderfolgenden Inhaltsdatenelemente auf Basis des Addierens der Breite des jeweiligem Inhaltsdatenelementes, solange, bis der Satzspiegelbreite-Wert erreicht und /oder überschritten ist. Bei dieser Zeile handelt es sich um eine Berechnungszeile, die hinsichtlich ihrer Ausmaße zur Positionsberechnung der Worte verwendet wird und die als

rechnerisches Ordnungshilfsmittel von Inhaltsdatenelementen dient. Im Gegensatz hierzu entstehen die zur Darstellung gelangenden (Text-)Zeilen des Dokumentes erst beim Erstellen der Dokumentseiten-Computergrafik.

Entsprechend kann in Ausführungsformen eine Seite berechnet werden unter vertikalem Aneinanderfügen der aufeinanderfolgenden Zeilen auf Basis des Addierens der Höhe der Zeilen, solange, bis der Satzspiegelhöhe-Wert erreicht ist, wobei die Höhe einer Zeile durch das höchste Inhaltsdatenelement der Zeile bestimmt wird. Auch hier handelt es sich bei der Seite um eine Berechnungsseite, die hinsichtlich ihrer Ausmaße zur Positionsberechnung der Worte verwendet wird und die als rechnerisches Ordnungshilfsmittel von Berechnungszeilen und somit Inhaltsdatenelementen dient.

Ausführungsformen der Erfindung können dadurch gekennzeichnet sein, dass dem Inhaltsdatenelement derjenige Seitenidentifikationswert zugeordnet wird, der der berechneten Seite entspricht, zu der das Inhaltsdatenelement hinzugefügt wurde.

In Weiterbildungen des Verfahrens kann dem Inhaltsdatenelement derjenige Elementpositionswert zugeordnet werden, der der Position des Inhaltsdatenelementes auf der berechneten Seite entspricht, zu der das Inhaltsdatenelement hinzugefügt wurde.

In Weiterbildungen der Erfindung kann das Inhaltsdatenelement ein

Textelement aufweisen und seine Breite unter Anfügung eines Leerzeichens berechnet werden. Dabei kann die Höhe des Textelementes unter Anfügung eines Schriftzeichens berechnet werden, z.B. der Zeichenkette „qä!", welches in der Schriftart und Schriftgröße des Textelementes die größtmögliche Schrifthöhe erzeugt.

Die Erfindung nach Anspruch 16 stellt eine Datenaufbereitungsvorrichtung für das erfindungsgemäße Verfahren bereit, mit einer Verarbeitungseinheit, einem Speicher und einer Kommunikationsschnittstelle,

dadurch gekennzeichnet, dass

die Verarbeitungseinheit ausgebildet ist zum Auswählen mindestens eines Inhaltsdatenelementes für ein virtuelles elektronisches Dokument;

die Verarbeitungseinheit ausgebildet ist zum Bestimmen von Formatierungsdaten für das virtuelle elektronische Dokument;

die Verarbeitungseinheit ausgebildet ist zum Berechnen, für das mindestens eine Inhaltsdatenelement, eines Seitenidentifikationswertes einer Seite des virtuellen elektronischen Dokumentes und eines Elementpositionswertes auf der durch den Seitenidentifikationswert identifizierten Seite, abhängig von den Formatierungsdaten;

die Verarbeitungseinheit ausgebildet ist, eine Zuordnung von Inhaltsdatenelement, Seitenidentifikationswert des Inhaltsdatenelementes und Elementpositionswert des Inhaltsdatenelementes in einer im Speicher enthaltenen Datenbank abzulegen.

Hierdurch wird eine Vorrichtung bereitgestellt, welche die im Verfahren und für die Vorrichtung nach Anspruch 17 benötigte Datenbasis in einer Datenbank herstellt, sodass die Seitengrafiken des virtuellen elektronischen Dokumentes verfahrensgemäß auf Abruf generiert werden können.

Die Verarbeitungseinheit dieser und aller übrigen Vorrichtungen und der Anordnung kann durch programmtechnisches Einrichten von Mehrzweckhardware, wie Mehrzweckprozessoren, und oder durch eine Kombination von Programmierung und anwendungsspezifischen Prozessorkomponenten (Application Specific Integrated Circuits, ASICs) verwirklicht werden. Insbesondere kann für die Verwirklichung Rückgriff auf durch Betriebssysteme oder Middleware bereitgestellte Funktionen genommen werden und/oder auf internettypische Technologien, wie PHP (PHP Hypertext Preprocessor) und /oder JavaScript.

Ausführungsformen der Erfindung nach Anspruch 16 können entsprechend den Unteransprüchen weitergebildet werden, sowie den übrigen Weiterbildungen und Ausführungsformen aller erfindungsgemäßen Vorrichtungen und Verfahren. Insbesondere können Ausführungsformen der Vorrichtungen verwirklicht sein, indem die Verarbeitungseinrichtung ausgebildet ist zur Durchführung eines oder mehrerer der Verfahrensmerkmale.

Die Erfindung nach Anspruch 17 stellt eine Vorrichtung zur Bereitstellung mindestens einer Seite eines virtuellen elektronischen Dokumentes als Computergrafik zum Abruf über ein Netzwerk für das Verfahren bereit, mit einer Verarbeitungseinheit, einem Speicher und einer an das Netzwerk gekoppelten Kommunikationsschnittstelle,

dadurch gekennzeichnet, dass

der Speicher eine Datenbank mit Zuordnungen jeweils eines Inhaltsdatenelementes, eines Seitenidentifikationswertes des

Inhaltsdatenelementes und eines Elementpositionswertes des Inhaltsdatenelementes aufweist;

die Verarbeitungseinheit ausgebildet ist zum Auswerten einer Anforderung einer Seite des virtuellen elektronischen Dokumentes unter Bestimmung eines Seitenidentifikationswertes der angeforderten Seite;

die Verarbeitungseinheit ausgebildet ist zum Bestimmen, unter Zugriff auf die Datenbank, mindestens eines Inhaltsdatenelementes und Elementpositionswertes des Inhaltsdatenelementes, die dem Seitenidentifikationswert der angeforderten Seite entsprechen;

- die Verarbeitungseinheit ausgebildet ist zum Berechnen einer Computergrafik auf Basis der Formatierungsdaten, des für die angeforderte Seite bestimmten Inhaltsdatenelements und des zugeordneten Elementpositionswertes;

die Verarbeitungseinheit ausgebildet ist zum Zurverfügungstellen der Computergrafik als Seite des virtuellen elektronischen Dokumentes zur Darstellung.

Ausführungsformen der Erfindung nach Anspruch 17 können entsprechend den Unteransprüchen weitergebildet werden, sowie den übrigen Weiterbildungen und Ausführungsformen aller erfindungsgemäßen Vorrichtungen und Verfahren. Insbesondere können Ausführungsformen der Vorrichtungen verwirklicht sein, indem die Verarbeitungseinrichtung ausgebildet ist zur Durchführung eines oder mehrerer der Verfahrensmerkmale.

Die Erfindung nach Anspruch 18 stellt eine Anordnung zur Bereitstellung mindestens einer Seite eines virtuellen elektronischen Dokumentes als Computergrafik mit einer Vorrichtung nach Anspruch 16 und einer Vorrichtung nach Anspruch 17 bereit zur Durchführung des Verfahrens. Dabei können die Merkmale der Vorrichtungen integriert in einer gemeinsamen

Verarbeitungseinheit, einem gemeinsamen Speicher und einer gemeinsamen Kommunikationsschnittstelle ausgebildet sein.

Ausführungsformen der Erfindung nach Anspruch 18 können entsprechend den Unteransprüchen weitergebildet werden, sowie den übrigen Weiterbildungen und Ausführungsformen aller erfindungsgemäßen Vorrichtungen und Verfahren. Insbesondere können Ausführungsformen der Vorrichtungen verwirklicht sein, indem die Verarbeitungseinrichtung ausgebildet ist zur Durchführung eines oder mehrerer der Verfahrensmerkmale.

Die Erfindung nach Anspruch 19 stellt ein auf einem computerlesbaren

Speichermedium gespeichertes Computerprogrammprodukt bereit, welches computerlesbare Programmmittel zur Ausführung der Schritte des erfindungsgemäßen Verfahrens durch einen Computer enthält. Die Erfindung nach Anspruch 20 stellt entsprechend ein Computerprogrammprodukt bereit, welches in einer digitalen Trägerwelle verkörpert ist. Die digitale Trägerwelle

kann etwa durch ein kabelloses oder kabelgebundenes elektrisches oder optisches Signal oder durch alle Formen der Verkörperung der informationstragenden Bits in einem Medium realisiert sein. Beide Computerprogrammprodukte dienen zur Durchführung des Verfahrens, wenn das Programmprodukt auf einem Rechner abläuft.

Das Computerprogrammprodukt kann in entsprechender Weise auf einem magnetischen oder optischen Datenträger gespeichert sein, wie einer CD-ROM, DVD-ROM, Diskette oder Festplatte, oder in einem Halbleiterbaustein, wie etwa einem Speicherbaustein oder einem Speicherteil eines Prozessors.

Kurzbeschreibung der Zeichnungen

Die Erfindung wird nachfolgend beispielhaft anhand mehrerer Figuren erläutert. Es zeigen:

Fig. 1 eine schematische übersicht über ein Ausführungsbeispiel des Verfahrens,

Fig. 2 eine schematische übersicht über einen ersten Teil eines Details des Ausführungsbeispiels in Fig. 1 ,

Fig. 3 eine schematische übersicht über einen zweiten Teil eines Details des Ausführungsbeispiels in Fig. 1 ,

Fig. 4 eine schematische Darstellung eines Ausführungsbeispieles der Vorrichtung zur Bereitstellung und /oder der Anordnung,

Fig. 5 eine schematische Darstellung eines Ausführungsbeispieles der

Vorrichtung zur Bereitstellung und /oder der Anordnung mit einem Betrachtungsgerät als Server/Client-Konfiguration,

Fig. 6 eine Veranschaulichung des Zeilenberechnungsvorgangs gemäß des Verfahrens der Fig. 1 ,

Fig. 7 eine Veranschaulichung des Seitenberechnungsvorgangs gemäß des Verfahrens der Fig. 1 , und

Fig. 8 eine schematische übersicht über eine Weiterbildung des Ausführungsbeispiels des Verfahrens nach Fig. 1.

Detaillierte Beschreibung

Fig. 1 zeigt eine schematische übersicht über ein Ausführungsbeispiel des Verfahrens. In Schritt 100 wählt die Verarbeitungseinheit eines als Server konfigurierten Rechners eines Inhalteanbieters eine sequentiell geordnete Folge von Inhaltsdatenelementen aus, die die Inhalte eines virtuellen elektronischen Dokumentes bilden sollen. Diese Inhalte können etwa durch einen Wechseldatenträger oder über eine Netzwerkverbindung von einem Benutzer eingegeben werden. Beispielsweise können Inhaltselemente über entsprechende Dialogelemente einer Benutzerschnittstelle auf dem Endgerät (Client) eines Benutzers eingegeben werden, etwa durch Texteingabefelder, Upload-Dialogelemente zum Einbinden von Grafikdateien und Auswahlelemente zur Angabe von Gestaltungsoptionen, wonach der Client die Inhaltsdatenelemente an den Server über das Netzwerk übermittelt.

Auf diese Weise können nicht nur die Inhaltsdatenelemente, wie formatierter oder unformatierter Text, Computergrafik-Dateien, Hyperlinks, zu verwendende Hintergrundbilder, unsichtbare Elemente wie z.B. Wasserzeichen, Multimedia-Elemente wie z.B. Ton-, Film-, und/oder Animations-Dateien, Dateien in proprietären Darstellungformaten (z.B. Adobe Flash) an den Server übergeben werden, sondern auch selbst nicht darzustellende Datenanhänge zu Inhaltselementen und Kontrollbefehle.

Die Kontrollbefehle können dabei Funktionen zur Einbettung von Bildern (Bild- Inhaltsdatenelementen) umfassen, und/oder ferner Funktionen, die die Darstellung von Bild-Inhaltsdatenelementen steuern, etwa deren Ausrichtung, Größe, Transparenz, etc. Ferner können die Kontrollbefehle Funktionen zur Bestimmung der Gestaltung des Seitenhintergrundes der zu generierenden

Dokumentseitengrafik oder -grafiken enthalten, zum Einfügen eines Seitenumbruches, zur Steuerung der Darstellung von Text- Inhaltsdatenelementen (etwa nach Schriftart, -grad, -Stil, -färbe), zur Definition von Hyperlinks und Sprungmarken zu anderen Inhaltsdatenelementen, etwa auf anderen Seiten oder in anderen virtuellen elektronischen Dokumenten, sowie ferner Funktionen zum Aufruf externer Befehle, z.B. JavaScript-Programme oder dergleichen.

In Schritt 110 bestimmt die Verarbeitungseinrichtung dann die Formatierungsdaten, die für die äußere Gestaltung der Seiten (auch einzelner) des virtuellen Dokumentes maßgeblich sind, wenn die Positionswerte und Seiten-Identifikationswerte für die Inhaltsdatenelemente berechnet werden und wenn eine Seiten-Computergrafik dynamisch auf Abruf erzeugt wird. Dies kann durch die Auswertung von Benutzerdaten und Kontrollbefehlen geschehen, die wie oben beschrieben über eine Benutzerschnittstelle eingegeben worden sind. Insbesondere wird hier die Seitenhöhe und -breite und die Höhe und Breite des Satzspiegels (also der Nutzfläche der Seite, die sich aus Seitengröße abzüglich der Seitenränder ergibt) bestimmt.

In Schritt 120 wird für jedes Inhaltsdatenelement anhand von Berechnungsseiten und Berechnungszeilen, die als Berechnungsschablonen dienen, berechnet, welcher Seite des virtuellen elektronischen Dokumentes das Inhaltsdatenelement zugeordnet ist, und welche Position das Inhaltsdatenelement auf der ihm zugeordneten Seite einnimmt. Zur Kennzeichnung einer Seite wird ein entsprechender Seitenidentifikationswert bestimmt, und zur Kennzeichnung einer Position auf der Seite ein Elementpositionswert, welcher aus einem Koordinatentupel mit X- und Y- Koordinate (etwa nach einem abstrakten Koordinatensystem einer Dokumentseite oder bzgl. der später dynamisch anzulegenden Seitengrafik) bestehen kann. Der Seitenidentifikationswert kann etwa die Seitenzahl, oder eine Kombination von Seitenzahl und einem Identifikationswert für das virtuelle elektronische Dokument, zu dem die Seite gehört, enthalten.

Einzetheiten der Positionsberechnung werden später mit Bezug auf die Figuren 2 und 3 näher erläutert.

Für jedes Inhaltsdatenelement bildet die Verarbeitungseinheit so Zuordnungen, die jeweils das Inhaltsdatenelement (oder eine Referenz darauf), den Seitenidentifikationswert des Inhaltsdatenelementes und den

Elementpositionswert des Inhaltsdatenelementes umfassen. Es können hierbei noch weitere Informationen in der jeweiligen Zuordnung enthalten sein.

In Schritt 130 speichert die Verarbeitungseinheit, unter Verwendung eines DBMS (etwa eines relationalen oder objektorientierten DBMS) die Zuordnungen in einer Datenbank.

Dabei können die Datenbankeinträge der Zuordnungen in einen Datenbankeintrag für eine ganze Berechnungsseite zusammengefasst werden, wobei den Zuordnungseinträgen des Seiteneintrags noch Datenbankeinträge für die generelle Seitenformatierung vorausgehen können. Diese können beispielsweise Angaben enthalten zur Seitenbreite, Seitenhöhe,

Satzspiegelbreite, Satzspiegelhöhe, Seitenhintergrund, Spiegelung des Seitenhintergrundes, ob es sich bei der aktuellen Seite um eine linke Seite einer Doppelseite handelt, eine Seitennummer, Farbangabe für die Seitennummer, Standardschriftart, -große, -färbe, sowie den Inhalt der Buch- Seite in reiner Text-Form (für unterschiedliche Such- oder Indexfunktionen).

Eine tabellarische Darstellung eines Auszugs aus einer Datenbank kann wie folgt aufgebaut sein (die Tabellenfelder sind hier durch Leerzeichen separiert):

1 |450 , 550

2 400 , 500

3 Zeitungspapier . jpg

4 mirror

5 6 ; black

6 doradani

7 11

S black

3 SEäR€HSTRING: Bilder können an beliebiger Position eingebunden werden bild_0008öl 0087 0044_t3m3.jpg oder sogar auf die ganze Seite gestreckt werden 10

11 11 25 46 black doradani Bilder

12 11 71 46 black doradani können

13 11 126 46 black doradani an

14 11 152 46 black doradani beliebiger

15 11 226 46 black doradani Position

J.6 11 2S5 46 black" doradani eingebunden

17 11 376 46 black doradani werden

18 PIC 0 68 X X biid_000801_0087_0044_tsm3.jpg IS 11 25 445 black doradani oder

20 11 57 445 black doradani sogar

21 11 96 445 black doradani auf

22 11 117 445 black doradani die

23 11 139 445 black doradani ganze

24 11 179 445 black doradani Seite

25 11 214 445 black doradani gestreckt

26 11 278 445 black doradani werden 27

Hier ist zu sehen, dass Grafik- Inhaltsdatenelemente

(bild_000801_0087_0044_tsms.jpg) durch eine Referenz, hier durch Angabe des Dateinamens, in die Datenbank eingebunden werden, während Text- Inhaltsdatenelemente (Bilder, können, an, usw.) zeichencodiert in der Datenbank abgelegt sind.

In Schritt 140 wertet die Verarbeitungseinheit einen Seitenanforderungsbefehl aus, der etwa von einem Darstellungsprogramm auf einem Client, der mit dem Server über das Netzwerk verbunden ist, generiert worden sein kann. Dieser Seitenanforderungsbefehl kann einen Seitenidentifikationswert enthalten, oder die Verarbeitungseinheit kann zu dem Seitenanforderungsbefehl einen Seitenidentifikationswert berechnen, etwa wenn das Darstellungsprogramm einen Befehl zum Darstellen der nächsten Seite oder der vorausgehenden Seite erzeugt.

In Schritt 150 ruft dann die Verarbeitungseinheit alle Inhaltsdatenelemente aus der Datenbank ab, die dem Seitenidentifikationswert der abgerufenen Seite entsprechen. Gegebenenfalls werden dabei auch die weiteren, der Seite

zugeordneten Kontrollbefehle und /oder Datenanhänge abgerufen. Hierdurch wird, zusätzlich zur effizienten Datenhaltung, nur ein Minimum an Overhead bei der Erzeugung der abgerufenen Seite erzeugt, da alle für die Generierung der Einzelseite erforderlichen Daten spezifisch und effizient abgerufen werden.

In Schritt 160 berechnet dann die Verarbeitungseinheit eine Computergrafik, die die Inhaltselemente entsprechend der Formatierungs- und Kontrollbefehle grafisch umsetzt und sie in einer einzelnen, die angeforderte Seite des Dokuments verkörpernden Darstellung wiedergibt.

Hierzu legt die Verarbeitungseinheit zunächst eine Grafik mit der durch die Formatierungsdaten gegebenen (Seiten-) Breite und -Höhe an (z.B. PHP: imagecreatetruecolor). Ist eine Hintergrundgrafik angegeben, so wird diese dann über die gesamte Breite und Höhe der Grafik gelegt. Hierbei kann, bei doppelseitiger Darstellung des Dokumentes, festgestellt werden, ob es sich um eine linke oder rechte Seite handelt, und das Hintergrundbild entsprechend um seine Vertikale gespiegelt werden. Danach platziert die Verarbeitungseinheit die Inhaltsdatenelemente in der Grafik.

Dies geschieht bei Textelementen, indem sie durch eine entsprechende Rendering-Funktion in der Grafik an der durch den Elementpositionswert vorgegebenen Stelle platziert werden (z.B. PHP: ImageTTFText).

Grafikelemente können entsprechend an der durch den Elementpositionswert vorgegebenen Stelle durch eine entsprechende Funktion in die Grafik eingebettet werden (z.B. PHP: imagecopyresampled). Hierbei kann die Breite und Höhe des Bildes nach Formatierungsvorgaben in Abhängigkeit der Breite und Höhe der Grafik angepasst werden.

Die so berechnete Computergrafik wird nun über das Netzwerk zur Verfügung gestellt, um an den Clientrechner übertragen und dort dargestellt zu werden.

In dieser Figur nicht näher dargestellt ist der Ablauf zum Verarbeiten eines Suchbefehls. Entsprechend der Auswertung eines Seitenanforderungsbefehls kann vorliegend auch ein Suchbefehl nach einem Inhaltsdatenelement, wie einer Zeichenkette, vom Client an den Server übermittelt werden, worauf die

Verarbeitungseinheit diesen Suchbefehl mit der angegebenen Zeichenkette auswertet und in einem nächsten Schritt die Zuordnungen aus der Datenbank abruft, deren Inhaltsdatenelement der Such-Zeichenkette entspricht. Hier kann die Verarbeitungseinheit dann ein Suchergebnis erzeugen, etwa eine Menge von Seiten-Identifikationswerten oder daraus ermittelten Seitenzahlen, und diese an den Client zur Darstellung übermitteln.

Ferner kann die Verarbeitungseinheit einen Zugriffs- oder Selektionsbefehl auswerten, wobei der Zugriffsbefehl beispielsweise einen aus einem Mausklick des Benutzers auf der clientseitigen Seitengrafikdarstellung herrührenden Elementpositionswert aufweist. Die Verarbeitungseinheit ruft dann in einem nächsten Schritt in der Datenbank das Inhaltsdatenelement oder die Inhaltsdatenelemente auf, die dem Seitenidentifikationswert der gegenwärtig dargestellten Seite und dem Elementpositionswert entsprechen.

Die Auswertung eines Selektions- oder Suchbefehls kann nebengeordnet zur oder nach der Auswertung eines Seitenanforderungsbefehls stattfinden. Dies ist auch in Fig. 8 schematisch dargestellt.

Inhaltsdatenelemente, die so selektiert wurden oder Suchergebnis sind, können entsprechend mit Grafik-Elemente ergänzt in die Seitengrafik eingefügt werden (PHP: imagefilledrectangle).

Fig. 2 zeigt eine schematische übersicht über einen ersten Teil eines Details des Ausführungsbeispiels in Fig. 1, insbesondere die Berechnung des Seitenidentifikationswertes und des Elementpositionswertes für die Inhaltsdatenelemente.

In Schritt 200 wählt die Verarbeitungseinheit zunächst das nächste zu verarbeitende Inhaltsdatenelement aus der geordneten Menge der Inhaltsdatenelemente aus und bestimmt in Schritt 210, ob es sich um ein Textelement handelt.

Falls es ein Textelement ist, so fügt die Verarbeitungseinheit in Schritt 220 dem Textelement temporär Zeichen für die Größenberechnung zu. So wird nur für die Berechnung der Breite temporär ein Leerzeichen angehängt, damit sich die Worte in der Darstellung nicht berühren. Entsprechend werden nur für die Berechnung der Höhe Schriftzeichen, die die größtmögliche Höhe und Tiefe in einer Zeile der Darstellung erreichen würden, wie etwa „gä", oder „gä!", angehängt. Die Berechnung der Darstellungsbreite und -höhe erfolgt dabei in Schritt 230 auf Grundlage der gegenwärtig zugewiesenen Schriftart, -große und des Schriftstils (z.B. PHP: Funktion ImageTTFbbox).

Falls es ein Grafikelement ist, berechnet die Verarbeitungseinheit in Schritt 230 die Darstellungsbreite und -Höhe unmittelbar (z.B. PHP: Funktion getimagesize).

In Schritt 240 prüft die Verarbeitungseinheit, ob noch ein weiteres Inhaltsdatenelement verfügbar ist, dessen Breite und Höhe noch bestimmt werden müssen. Falls nicht, sind Breite und Höhe aller Inhaltsdatenelemente bestimmt und die Verarbeitungseinheit fährt mit Schritt 250 fort, indem sie zunächst eine Berechnungszeile anlegt.

Dieser Berechnungszeile fügt die Verarbeitungseinheit in den Schritten 260, 270 und 290 solange Inhaltsdatenelemente in ihrer Reihenfolge zu und addiert dabei die Breiten der zugefügten Inhaltsdatenelemente, bis die Summe der Breiten der Inhaltsdatenelemente der Berechnungszeile die Satzspiegelbreite der Zeile überschreitet. Ist die Satzspiegelbreite überschritten, so entnimmt die Verarbeitungseinheit das zuletzt zugefügte Inhaltdatenelement der Berechungszeile in Schritt 280 und stellt es wieder (zuvorderst) in die Menge der noch nicht einer Berechnungszeile zugeordneten Inhaltsdatenelemente, worauf die Verarbeitungseinheit in Schritt 250 wiederum eine neue Berechnungszeile anlegt und mit den Zuordnungen wie oben beschrieben fortfährt.

Dieser Vorgang ist in Figur 6 näher dargestellt. Die Berechnungszeile 40 ist mit den Inhaltsdatenelementen 42 bis 48 vollständig befüllt. Berechnungszeile 50 würde ein Element 62' enthalten, welches mit den übrigen

Inhaltsdatenelementen die durch den Berechnungszeilenrahmen links und rechts dargestellte Satzspiegelbreite überschreiten würde. Dieses Element wurde entsprechend wieder der Zeile entnommen und statt dessen in einer neu angelegten Berechnungszeile 60 als Inhaltsdatenelement 62 hinzugefügt.

Wie in Figur 2 weiter dargestellt wird, fährt die Verarbeitungseinheit mit Schritt 300 fort, wenn sie in Schritt 290 feststellt, dass kein Inhaltsdatenelement mehr verfügbar ist, das nicht einer Berechnungszeile zugeordnet wurde, also alle Inhaltsdatenelemente einer Berechnungszeile zugeordnet worden sind.

Durch entsprechende Kontrollbefehle kann der Zuordnungsprozess etwa so beeinflusst werden, dass einzelne Inhaltsdatenelemente, z.B. eine Grafik, allein in eine eigene Zeile platziert wird.

Fig. 3 setzt die detaillierte Darstellung in Fig. 2 fort.

In grundsätzlich ähnlicher Weise zur horizontal verlaufenden, zeilenweise umbrechenden Zuordnung von Inhaltselementen zu Berechnungszeilen werden nun die Berechnungszeilen vertikal verlaufend und seitenweise umbrechend zu Berechnungsseiten zugeordnet.

Entsprechend legt die Verarbeitungseinheit hierzu in Schritt 300 zunächst eine neue Berechnungsseite an. Dann wählt sie in Schritt 310 die erste der noch nicht einer Seite zugeordneten Berechnungszeilen, welche in der Reihenfolge der mit Bezug auf Fig. 2 beschriebenen Erstellung vorliegen, und bestimmt in Schritt 320 ihre Höhe. Die Höhe einer Berechnungszeile wird dabei stets von der Höhe desjenigen Inhaltsdatenelementes der Berechnungszeile bestimmt, dessen Höhe am größten ist.

In den Schritten 330, 340 und 370 fügt die Verarbeitungseinheit der Berechnungsseite solange Berechnungszeilen in ihrer Reihenfolge hinzu, bis die Satzspiegelhöhe überschritten ist. Ist diese überschritten, so entnimmt die Verarbeitungseinheit die Berechnungszeile der Berechnungsseite und stellt sie

wieder (zuvorderst) in die Menge der noch nicht einer Berechnungsseite zugeordneten Berechnungszeilen, worauf die Verarbeitungseinheit in Schritt 360 wiederum eine neue Berechnungsseite anlegt und mit den Zuordnungen wie oben beschrieben fortfährt.

Dieser Vorgang ist in Figur 7 näher dargestellt. Die Berechnungsseite 70 mit den schon zugeordneten Berechnungszeilen 71 bi 75 würde eine Zeile 81 ' enthalten, welche mit den übrigen Berechnungszeilen die durch den Berechnungsseitenrahmen oben und unten dargestellte Satzspiegelhöhe überschreiten würde. Dieses Element wurde entsprechend wieder der Seite 70 entnommen und statt dessen in einer neu angelegten Berechnungsseite 80 als Berechnungszeile 81 hinzugefügt.

Wie in Figur 3 weiter dargestellt wird, sobald die Verarbeitungseinheit in Schritt 370 feststellt, dass alle Berechnungszeilen Berechnungsseiten zugewiesen sind und keine noch nicht zugewiesenen Berechnungsseiten mehr verfügbar sind, mit Schritt 380 fortgefahren.

In Schritt 380 bestimmt die Verarbeitungseinheit nun für jedes nach Zeile und Seite zugewiesene Inhaltsdatenelement den Seitenidentifikationswert und den Elementpositionswert. Der Seitenidentifikationswert ergibt sich dabei aus der Ordnungszahl derjenigen Berechnungsseite, der das Inhaltsdatenelement über seine Berechnungszeile zugewiesen ist, wobei die Berechnungsseiten in der Reihenfolge der zugeordneten Inhaltsdatenelemente angeordnet sind.

Wird als Elementpositionswert ein Koordinatentupel benutzt, so werden die Koordinaten wie folgt berechnet:

Die Y-Koordinate eines Inhaltsdatenelementes ergibt sich grundsätzlich aus der Addition der Zeilenhöhen aller Berechnungszeilen der Berechnungsseite des Inhaltsdatenelementes, bis einschließlich zu derjenigen, der das fragliche Inhaltsdatenelement zugewiesen ist.

Sind Inhaltsdatenelemente einer Zeile linksbündig anzuordnen, so ergibt sich die X-Koordinate eines Inhaltsdatenelementes aus der Summe der Breitenwerte aller vorausgehenden Inhaltsdatenelemente in derselben Berechnungszeile,

gemessen ab dem linken Rand des Satzspiegels. Es ergibt sich folgende Berechnungsvorschrift:

X-Koordinate =

Breite_Aller_Vorausgehenden_Elemente_ln_Der_Zeile + Linker_Rand_Des_Satzspiegels

Wenn die Inhaltsdatenelemente in der Berechnungszeile rechtsbündig zu platzieren sind, so ergibt sich die X-Koordinate aus der Subtraktion der Summe der Breitenwerte aller Inhaltsdatenelemente in derselben Berechnungszeile von der Satzspiegelbreite zuzüglich Summe der Breitenwerte aller vorausgehenden Inhaltsdatenelemente in derselben Berechnungszeile, gemessen ab dem linken Rand des Satzspiegels. Hier ergibt sich folgende Berechnungsvorschrift:

X-Koordinate =

(Satzspiegel_Breite - Breite_Aller_Elemente_in_Der_Zeile) + Breite_Aller_Vorausgehenden_Elemente_ln_Der_Zeile + Linker_Rand_Des_Satzspiegels

Wenn die Elemente in der Zeile zentriert zu platzieren sind, so ergibt sich die X-Koordinate aus der durch 2 geteilten Subtraktion der Summe der

Breitenwerte aller Inhaltsdatenelemente in derselben Berechnungszeile von der Satzspiegelbreite zuzüglich Summe der Breitenwerte aller vorausgehenden Inhaltsdatenelemente in derselben Berechnungszeile gemessen ab dem linken Rand des Satzspiegels. Somit ergibt sich folgende Berechnungsvorschrift:

X-Koordinate =

(Satzspiegel_Breite - Breite_Aller_Elemente_in_Der_Zeile) / 2

+ Breite_Aller_Vorausgehenden_Elemente_ln_Der_Zeile + Linker_Rand_Des_Satzspiegels

Wenn die Elemente in der Zeile im Blocksatz zu platzieren sind, so ergibt sich die X-Koordinate aus der Summe der Breitenwerte aller vorausgehenden Inhaltsdatenelemente in derselben Berechnungszeile zuzüglich durch die Anzahl der Zwischenräume geteilte Subtraktion der Summe der Breitenwerte aller Inhaltsdatenelemente in derselben Berechnungszeile von der Satzspiegelbreite gemessen ab dem linken Rand des Satzspiegels.

X-Koordinate =

Breite_Aller_Vorausgehenden_Elemente_ln_Der_Zeile

+ (Satzspiegel_Breite - Breite_AUer_Elemente_in_Der_Zeile) / (Anzahl_Elemente_ln_Der_Zeile - 1)

+ Linker_Rand_Des_Satzspiegels

Handelt es sich bei dem Inhaltsdatenelement um ein Bild, welches breiter als die Satzspiegelbreite, jedoch weniger breit als die Seitenbreite ist, kann die Koordinate X um die Hälfte dieser Differenz nach links verlegt werden, um das visuelle Ergebnis zu verbessern. Handelt es sich entsprechend bei dem Inhaltsdatenelement um ein Bild, welches höher als die Satzspiegelhöhe ist, jedoch weniger hoch als die Seitenhöhe, kann die Koordinate Y um die Hälfte dieser Differenz nach oben verlegt werden.

Wie mit Bezug auf Fig. 1 bereits erläutert, können die so gewonnenen Daten nun in die Buchseiten-Datenbank geschrieben werden, wobei für jedes Inhaltsdatenelement (z.B. Wort) zeilenweise Daten in die folgenden Felder geschrieben werden: Font-Größe, Koordinate X, Koordinate Y, Schriftfarbe, Schriftart, Elementdaten. Bei einem Bild als Inhaltsdatenelement kann in das Feld der Font-Größe das ein Bild kennzeichnende Schlüsselwort PIC eingetragen

werden, und für Schriftfarbe und Schriftart jeweils ein NULL-Element „X", „X", gefolgt von der Referenzbezeichnung (Dateiname) des Bildes. Bei über die gesamte Seite darzustellenden Bildern kann entsprechend anstelle des Begriffes PIC der Begriff FULLPIC geschrieben werden, und anstelle der Koordinaten die NULL-Elemente » „0 v ".

Die X- und die Y-Koordinaten beziehen sich im vorliegenden Fall auf die untere linke Ecke eines Text-Elementes und auf die obere linke Ecke eines Bild- Elements. Hierdurch kann eine Implementierung mit den PHP-Befehlen „ImageTTFText" und „imagecopyresampled" erleichtert werden.

Fig. 4 zeigt eine schematische Darstellung eines Ausführungsbeispieles der Vorrichtung zur Bereitstellung und/oder der Anordnung.

Die dargestellte Vorrichtung bzw. Anordnung umfasst eine Verarbeitungseinheit 10, eine Kommunikationsschnittstelle 12, die als Web-Server verwirklicht sein kann, und mit einem Netzwerk verbindbar ist, sowie einen Speicher 14, welcher eine Datenbank 16 und eine mit dem vorliegenden System generierte Computergrafik 3 aufweist.

Verarbeitungseinheit 10, Kommunikationsschnittstelle 12 und Speicher 14 sind kommunikativ miteinander verbunden, etwa über ein rechnerinternes Bussystem oder über ein Netzwerk.

Die Datenbank 16 weist Zuordnungen 18 und 18a auf, in denen jeweils ein Inhaltsdatenelement 19 bzw. 19a, ein Seitenidentifikationswert 19* bzw. 19a' und ein Elementpositionswert 19" bzw. 19a" zugeordnet sind.

Die Kommunikationsschnittstelle 12 ist ausgebildet, über das Netzwerk Nachrichten und Anfragen zu empfangen und zu versenden, und diese zur Weiterverarbeitung an die Verarbeitungseinheit 10 weiterzureichen. Die Verarbeitungseinheit ist ausgebildet, die verfahrensmäßigen Funktionen des vorliegenden Systems auszuführen und stellt ferner DBMS-Funktionen zur Handhabung der Datenbank 16 bereit.

Das in Fig. 4 dargestellte Ausführungsbeispiel ist auf die Vorrichtung zur Bereitstellung einer Seite eines virtuellen elektronischen Dokumentes beziehbar, wie auch auf die Datenbereitstellungsvorrichtung, in welchem Fall die dargestellte Computergrafik 3 nicht im Speicher enthalten ist, wie der Fachmann leicht erkennen wird. Das dargestellte Ausführungsbeispiel kann ferner auf die Anordnung bezogen werden, in der die Funktionen der Darstellungsvorrichtung und der Vorrichtung zur Bereitstellung integriert ausgebildet sind.

Fig. 5 zeigt eine schematische Darstellung eines Ausführungsbeispieles der Vorrichtung zur Bereitstellung und/oder der Anordnung, verbunden mit einem Betrachtungsgerät als Server/Client-Konfiguration.

Die bereits mit Bezug auf Figur 4 näher beschriebene Vorrichtung 1 ist über ihre als Web-Server ausgebildete Kommunikationsschnittstelle 12 mit einem hier als Verbindungslinie dargestellten Netzwerk verbunden, welches wiederum mit der als Web-Client ausgebildeten Kommunikationsschnittstelle 22 der Betrachtungseinrichtung (Client-Computer) 2 verbunden ist.

Der Client-Computer 2 umfasst ferner eine Verarbeitungseinheit 20, einen Speicher 24 und eine Benutzerschnittstelle 26.

Die Verarbeitungseinheit 20 ist ausgebildet, ein lokal gespeichertes oder über das Netzwerk zuvor vom Server 1 übermitteltes Programm auszuführen, welches einerseits Anzeigefunktionen für eine Computergrafik 3 über eine Benutzerschnittstelle 26 und Abruffunktionen für einzelne Seiten bereitstellt, andererseits in gleichartiger Weise auch Eingabemöglichkeiten für Informationen wie Inhaltsdatenelemente oder Formatierungskommandos zur Erstellung virtueller elektronischer Dokumente auf dem Server übermittelt. Bedient ein Benutzer auf dem Client 2 eine Abruffunktion, so wird ein entsprechender Abrufbefehl an den Server übermittelt, welcher als Antwort die entsprechende Seite des virtuellen elektronischen Dokumentes übermittelt, die darauf vom Client dargestellt wird. Entsprechend können clientseitig Auswahl- oder Suchbefehle an den Server erzeugt werden, und es können alle für die Erstellung eines virtuellen elektronischen Dokumentes erforderlichen

Daten und Anweisungen über die Benutzerschnittstelle 26 des Client 2 eingegeben und an den Server 1 übermittelt werden.

Figur 8 zeigt eine schematische übersicht einer Weiterbildung der Ausführungsform des Verfahrens, wie es mit Bezug auf Figur 1 beschrieben wurde. Die Schritte 130 bis 170 entsprechen den mit Bezug auf Figur 1 gegebenen.

Die Vorrichtungen, die vorstehend mit Bezug auf Figuren 4 und 5 beschrieben wurden, sind zur Ausführung der Weiterbildung eingerichtet, indem ihre jeweilige Verarbeitungseinheit 10 ausgebildet ist, eine Auswahl oder alle der Verfahrensschritte auszuführen.

Wie mit Bezug auf Figur 1 beschrieben, wird ein von dem Benutzercomputer (Client) 2 kommender Seitenanforderungsbefehl, Suchbefehl und/oder Selektionsbefehl von der Vorrichtung (Server) 1 verarbeitet. Diese Verarbeitung findet in den Schritten 140 für einen Seitenanforderungsbefehl, 400 für einen Selektionsbefehl und 410 für einen Suchbefehl statt. Für die Einzelheiten zu diesen Auswertungsschritten wird auf die Beschreibung zu Fig. 1 verwiesen. Die Auswertungen können nebenläufig, das heißt, in paralleler Weise, stattfinden, was durch die mehreren, von Schritt 130 kommenden Flusspfeile angedeutet ist.

Jede der Auswertungen aus den Schritten 140, 400 und 410 führt dann zum normalen Vorgang der Weiterverarbeitung (Schritt 140 und 410 führen zu Schritt 150, Schritt 400 zu 160) und zusätzlich, zum Beispiel auch parallel, zum Schritt 420.

In Schritt 420 wird der jeweilige Anforderungs-, Selektions- oder Suchbefehl statistisch ausgewertet. So kann in diesem Schritt für jedes Inhaltselement die Häufigkeit bestimmt werden, mit der es Gegenstand eines dieser Befehle wird, und /oder es können Zeitfenster bestimmt werden, in welchen bestimmte Inhaltselemente besonders häufig Gegenstand dieser Befehle werden.

Diese Ergebnisse werden vorliegend für ein entsprechendes Caching in Schritt 430 verwendet. Hierbei werden die Inhattselemente, die besonders häufig Gegenstand dieser Befehle werden, zugriffsoptimiert im Speicher 14 abgelegt, sodass ein Zugriff besonders effizient erfolgen kann. Besteht der Speicher aus Teilen mit schnellem und Teilen mit langsamerem Speicherzugriff, so können die Inhaltselemente, die besonders häufig Gegenstand dieser Befehle werden, in den Speicherteilen mit schnellem Speicherzugriff abgelegt werden.

Ebenso können die Inhaltselemente, die innerhalb desjenigen Zeitfensters besonders häufig Gegenstand dieser Befehle werden, in das die aktuelle Zeit fällt, zugriffsoptimiert im Speicher 14 abgelegt werden, sodass ein Zugriff besonders effizient erfolgen kann.

Die statistischen Auswertungen können ferner dazu verwendet werden, das Nutzerverhalten zu analysieren, und dem Benutzer solche Inhalte, z.B. im Wege der Bannerwerbung, anzubieten, die den besonders häufig betroffenen Inhaltselementen entsprechen.

Das Abrufen der Inhaltselemente in Schritt 150 wird auf diese Weise beschleunigt, indem der Abruf aus dem zugriffsoptimierten Speicher oder unter Einbeziehung zugriffsoptimierter Speicherteile erfolgt. Das vorliegende System stellt somit die Möglichkeit bereit, Seiten eines elektronischen Dokumentes zum Abruf über ein Netzwerk bereitzustellen. Dabei ermöglicht es eine ansprechende Darstellung der bereitgestellten Inhalte auch auf kleinen Anzeigeeinheiten, erschwert zugleich eine unerwünschte elektronische Weiterverarbeitung der Inhalte und leistet eine hohe Speicher- und Datenübertragungseffizienz.

Wie der Fachmann aus den vorangegangenen Darstellungen und Erläuterungen ohne weiteres entnehmen kann, sind in Ausführungsformen die beschriebenen Verfahrensschritte in Software umgesetzt, deren Programmieranweisungen die Ausführung der Verfahrensschritte auf einem Prozessor, wie etwa der Verarbeitungseinheit, veranlassen. Diese Software ist im Speicher 14 der Vorrichtung 1 (vergleiche Fig. 4 und Fig. 5) enthalten.

Dies gilt für die Anordnung 1 zur Bereitstellung mindestens einer Seite eines virtuellen elektronischen Dokumentes als Computergrafik, bei der die das Verfahren implementierenden Funktionen bzw. Ausbildungen der Verarbeitungseinheit integriert in einem System vorliegen, wobei das System in allen Ausführungsformen gleichwertig als Server oder Web-Server implementiert sein kann, ebenso, wie in Fällen, bei denen die Anordnung 1 so implementiert ist, dass sie eine Datenaufbereitungsvorrichtung (ausgebildet zur Durchführung der Verfahrensschritte 100 - 130) und eine Vorrichtung zur Bereitstellung mindestens einer Seite eines virtuellen elektronischen Dokumentes als Computergrafik (ausgebildet zur Durchführung der

Verfahrensschritte 140 - 170) enthält. Dabei kann die Vorrichtung ebenfalls in allen Ausführungsformen gleichwertig als Server oder Web-Server ausgebildet sein. Es können zudem die Datenaufbereitungsvorrichtung durch ein die Schritte 100 - 130 verwirklichendes Datenaufbereitungs-Softwaremodul und die Vorrichtung zur Bereitstellung durch ein die Schritte 140 - 170 verwirklichenden Bereitstellungs-Softwaremodul auf einem einzigen Computer verwirklicht und in dessen Speicher angeordnet sein. Dabei tritt, wie der Fachmann ohne weiteres erkennt, das Endgerät des Benutzers, das heißt, die Betrachtungseinrichtung (Betrachtungsgerät), die in allen Ausführungsformen gleichwertig als Client oder Web-Client implementiert sein kann oder diesen umfasst, in Interaktion mit der als Server beziehungsweise Web-Server ausgebildeten Anordnung oder Vorrichtung zur Bereitstellung.

Bezugszeichenliste

1 Vorrichtung bzw. Anordnung zur Bereitstellung einer Seite eines virtuellen elektronischen Dokumentes

2 Benutzercomputer (Client)

3 Computergrafik

10 Verarbeitungseinheit

12 Kommunikationsschnittstelle

14 Speicher

16 Datenbank von Zuordnungen

18, 18a erste und zweite Zuordnung

19, 19a erstes und zweites Inhaltsdatenelement

19', 19a' Seitenidentifikationswert des ersten bzw. zweiten

Inhaltsdatenelementes

19", 19a" Elementpositionswert des ersten bzw. zweiten

Inhaltsdatenelementes

20 Verarbeitungseinheit

22 Kommunikationsschnittstelle

24 Speicher

26 Benutzerschnittstelle

40 Berechnungszeilenelement

42-48 Positionierte Inhaltsdatenelemente

50 Berechnungszeilenelement

52-58 Positionierte Inhaltsdatenelemente

60 Berechnungszeilenelement

62 Umpositioniertes Inhaltsdatenelement

62' Umzupositionierendes Inhaltsdatenelement

70 Berechnungsseitenelement

71 -75 Positionierte Zeilenelemente

80 Berechnungsseitenelement

81 Umpositioniertes Berechnungsseitenelement

81 ' Umzupositionierendes Berechnungsseitenelement

100 Auswählen Inhaltsdatenelemente

110 Bestimmen der Formatierungsdaten

120 Berechnen des Seitenidentifikationswertes und des

Elementpositionswertes für jedes Inhaltsdatenelement

130 Speichern von Zuordnungen in Datenbank

140 Auswerten eines Seitenanforderungsbefehls

150 Abrufen aller Inhaltselemente der angeforderten Seite

160 Berechnen einer Computergrafik mit den Inhaltselementen der Seite

170 Zurverfügungstellen der Computergrafik

200 Auswählen eines Inhaltsdatenelementes

210 Prüfen, ob Textelement

220 Hinzufügen nicht darzustellender Dimensionierungszeichen

230 Bestimmen der Breite und Höhe des Inhaltsdatenelementes

240 Prüfen, ob ein nächstes Inhaltsdatenelement verfügbar

250 öffnen einer neuen Berechnungszeile

260 Hinzufügen des Inhaltsdatenelementes

270 Prüfen, ob Satzspiegelbreite der Zeile überschritten

280 Entnehmen des Inhaltsdatenelementes aus der Zeile

290 Prüfen, ob ein nächstes Inhaltsdatenelement verfügbar

300 öffnen einer neuen Berechnungsseite

310 Auswählen einer Berechnungszeile

320 Bestimmen der Zeilenhöhe

330 Hinzufügen der Zeile zur Berechnungsseite

340 Prüfen, ob Satzspiegelhöhe der Seite überschritten

350 Entnehmen der Zeile aus der Berechnungsseite

360 öffnen einer neuen Berechnungsseite

370 Prüfen, ob eine nächste Zeile verfügbar

380 Bestimmen des Seitenidentifikationswertes und der Koordinaten für jedes Inhaltsdatenelement

400 Auswerten eines Selektionsbefehls

410 Auswerten eines Suchbefehls

420 Statistische Auswertung

430 Caching