[go: up one dir, main page]

DE69428675T2 - Apparat und Verfahren zur Unterstützung einer impliziten Strukturation von Freiform-Listen, Übersichten, Texten, Tabellen und Diagrammen in einem auf Handzeichen basierenden Eingabesystem und Editiersystem - Google Patents

Apparat und Verfahren zur Unterstützung einer impliziten Strukturation von Freiform-Listen, Übersichten, Texten, Tabellen und Diagrammen in einem auf Handzeichen basierenden Eingabesystem und Editiersystem

Info

Publication number
DE69428675T2
DE69428675T2 DE69428675T DE69428675T DE69428675T2 DE 69428675 T2 DE69428675 T2 DE 69428675T2 DE 69428675 T DE69428675 T DE 69428675T DE 69428675 T DE69428675 T DE 69428675T DE 69428675 T2 DE69428675 T2 DE 69428675T2
Authority
DE
Germany
Prior art keywords
gesture
information
line
selection
user
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
DE69428675T
Other languages
English (en)
Other versions
DE69428675D1 (de
Inventor
Patrick Chiu
Thomas Moran
Melle William Van
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 DE69428675D1 publication Critical patent/DE69428675D1/de
Publication of DE69428675T2 publication Critical patent/DE69428675T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Description

  • Die vorliegende Erfindung betrifft Eingabe- und Editiersysteme, und insbesondere auf manueller Dateneingabe und Handzeichen beruhende Befehls-Systeme, welche Eingabe-, Editier- und Anzeige-Funktionen benutzen.
  • Ein Freiform-Grafiksystem ist ein System, bei dem ein Benutzer durch verschiedene Mittel grafische Datenobjekte in einen zweidimensionalen Raum eingeben und dann die Objekte und ihre Positionen in dem Raum editieren kann. Das System ist in zweierlei Bedeutung "freiförmig". Erstens können die grafischen Objekte selbst von jeder beliebigen Form sein, nur in Abhängigkeit von den durch die Eingabeverfahren zur Verfügung gestellten Mitteln. Zweitens bestehen keine Beschränkungen in Hinsicht darauf, wo die grafischen Objekte in dem Raum positioniert werden können; die Mittel zum Eingeben und Editieren der Objekte erlauben dem Benutzer das freigewählte Einsetzen und Umsetzen von Objekten. Alle grafischen Objekte sind insoweit voneinander unabhängig, dass ihre Beziehung zu einander nur durch ihre Anordnung im 2D-Raum bestimmt wird.
  • Diese zweite Bedeutung der Freiförmigkeit, die in diesem Dokument auch "Unstrukturiertheit" genannt wird, ist die wichtigere. Ein einfaches Beispiel eines Freiform-Grafiksystems ist eine "Gummistempel"-Grafikanwendung eines Kindes, in dem der Benutzer Knöpfe (die Gummistempel) und ein Zeigegerät benutzen kann, um Grafikobjekte irgendwo an der Zeichenoberfläche einzugeben ("zu stempeln") um dann mit Benutzen des Zeigegerätes die Objekte auf der Oberfläche zu bewegen. Ein Beispiel eines nichtfreiförmigen ("strukturierten") Systems ist eine einfache Textverarbeitung, bei der alle Zeichen zu einer zugrundeliegenden "Ketten"-Stuktur organisiert werden. Ein Zeichen kann nicht irgendwo in die 2D-Anzeige eingesetzt werden, sondern nur in Positionen, wo es in die Kettenstruktur passt (z. B. müssen, um einige Zeichen nach rechts zu bewegen, einige "Leertasten"-Zeichen in die Kette eingefügt werden, um sie weiterzubringen).
  • Eine sehr nützliche Art eines Freiform-Grafiksystems ist ein "Kritzel"-System, bei dem der Benutzer Freiform-Markierungen durch einfaches Zeichnen ("Schreiben") in Freihandweise eingeben kann. Jede solche eingegebene Markierung ist in dem System ein Freiform-Grafikobjekt; das bedeutet, die Markierung kann jede Form besitzen, die der Benutzer zum Zeichnen auswählt, und kann irgendwo auf die Zeichenoberfläche gezeichnet werden. Die Eingabe kann durch eine Vielzahl von Mitteln des Erfassens eines frei bewegbaren Eingabegeräts bewerkstelligt werden, wie eines Griffels, einer Maus oder sogar eines Fingers (mit Erfassung durch den aufgewendeten Druck oder durch optische Mittel) usw.
  • Editier- und Steuervorgänge können an den grafischen Objekten in einem Freiform-Grafiksystem durch Abgeben von Befehlen an das System durchgeführt werden. Die Befehle können durch herkömmliche Techniken abgegeben werden, wie durch Tastaturen oder durch auf Menüs basierenden Techniken. In einem "auf Handzeichen beruhenden" Eingabesystem, wie einem auf Stiftdruck beruhenden Notebook-Rechner oder einer Großmaßstabsanzeige, wie sie als Liveboard (Handelsmarke der Xerox Corporation) bekannt ist, können derartige Steuerfunktionen durch ein Befehlshandzeichen eingeleitet werden. Ein Befehlshandzeichen ist ein handgezogener Strich, der mit einem Stifteingabegerät geschaffen und durch das System so gedeutet wird, dass er eine von dem System auszuführende Aktion angibt.
  • Ein auf Handzeichen basierendes System ist in der Lage, zu erfassen, dass ein Benutzer einen Handzeichenbefehl in eine Zeichenfläche eingibt, statt Daten, üblicherweise durch irgendeinen Eingriff, der auf Seiten des Benutzers vorgenommen wird. Eine derartige Eingabeaktion kann das Halten oder Ausüben von Druckkräften an einem Knopf am Griffel nach sich ziehen. Der Benutzer instruiert das System durch Abheben des Eingabegeräts (z. B. Griffels) von der Zeichenfläche, den Befehl auszuführen. Es sind auch andere Verfahren möglich. Das System kann ohne einen speziellen Benutzereingriff die Eingabe als einen ausführbaren Befehl erkennen, oder kann in Reaktion auf einen Doppelldruck auf die Zeichenfläche zu arbeiten beginnen usw.
  • Eine gebräuchliche Aktivität für Benutzer von auf Handzeichen beruhenden Rechensystemen, ob sie nun Whiteboard- oder Notebook-Größe haben, ist formloses Kritzeln in Handschrift oder mit Skizzen, ob nun zum Zweck des Nachrichtenaustauschs mit anderen oder zum Herstellen von Notizen für sich selbst. Das Whiteboard-System an dem Liveboard ist ein primäres Beispiel eines Systems zur Stützung dieser Eingriffsart. Kritzelsysteme behandeln dieses Material als unstrukturierte Bilder oder als Sammlungen von Strichobjekten.
  • Ein großer Teil in einer solchen Kritzelaktivität enthält generische Strukturen - Listen, Umrisse, Texte, Tabellen und Diagramme. Um wirksam zu sein, müssen Kritzelsysteme das Schaffen und Editieren dieser Strukturen stützen. Ohne eine solche Unterstützung kann beispielsweise die einfache Aufgabe, einen Gegenstand in eine Liste einzuführen, ziemlich langwierig werden (ein Segment der Liste bewegen, um an dem neuen Ort Raum für den Gegenstand zu schaffen, den Gegenstand bewegen, den alten Raum schließen). Das verbraucht fast immer zu viel Zeit bei der Ausführung durch die Benutzer.
  • Benutzer könnten selbstverständlich mit einem Satz expliziter Einrichtungen für diese generische Strukturen versehen werden. So erklärt beispielsweise der Benutzer, dass er mit einer Tabelle arbeiten möchte, und das System schafft eine Tabellenanordnung, die der Benutzer ausfüllen und manipulieren kann. Jedoch besteht das Problem darin, dass Benutzer, die in einer "Kritzelweise" arbeiten, nicht von vornherein wissen, welche Struktur sie wünschen. Diese Strukturen entwickeln sich erst. Zum Beispiel: die Benutzer wählen eine Reihe von Sätzen; dann entscheiden sie, eine ausführlichere Liste herzustellen; dann beginnen sie Eigenschaften einiger Gegenstände der Liste zu markieren; dann wünschen sie mit diesen Eigenschaften eine zweite Spalte zu bilden (d. h. eine Tabelle); dann wünschen sie eine Skizze zu machen, welche über jede Listen- oder Tabellenform hinausgeht, usw.
  • So ist zu sehen, dass die Strukturierung sowohl in Zeit- wie in Raumhinsicht partiell ist. Manchmal wünscht der/die Benutzerin das Material als eine Liste zu betrachten, z. B. es umzuordnen, und ein arideres Mal wünscht er/sie, dies als ein buchstäbliches Beispiel zu benutzen und es zu skizzieren. Auch wenn der Benutzer das Material als eine Liste ansieht, wünscht er möglicherweise weiterhin, dass nicht die gesamte Seite als eine Liste betrachtet wird, sondern z. B. nur die linke Hälfte der Seile. Es ist erwünscht, ein System zu besitzen, das diese Art des Vorgangflusses unterstützen kann. Jedoch mindert die Aufforderung an die Benutzer, explizit die Strukturen zu erkennen, oft den natürlichen Fluss dieser Vorgehensweise.
  • Es gibt eine Menge grafischer Systeme, welche Texte, Listen, Umrisse, Tabellen und Diagramme unterstützen. Es gibt jedoch nur sehr wenige, die derartige Eingaben mit einem handgehaltenen und von Hand manipulierbaren Eingabegerät wie einem Griffel oder Stift behandeln. Üblicherweise wird ein durch Stift gegebenes Eingangssignal unmittelbar als Zeichen erkannt und dann als herkömmlicher Text verarbeitet. Das kommerzielle Gebiet von auf Stift beruhenden Berechnungen ist sehr aktiv, und es treten auf Strichen beruhende Umrisssysteme auf. Derartige Systeme scheinen auf einer Vorstellung von liniertem (oder kariertem) Papier zu beruhen. Der Benutzer erklärt eine Seite als Liste und dann treten Linien auf, die eine Spalte von breiten rechtwinkligen Zellen für die Listengegenstände schaffen. Fig. 3 ist ein Beispiel für ein solches System. Jeder Strich gehört zu einer der Zellen 50, und auf diese Weise sind alle Striche zu Listengegenständen gruppiert. In jeder nicht leeren Zelle sitzt ein Aufzählpunkt 52, der die Gruppe von Strichen in der Zelle 50 repräsentiert. Es sind verschiedene Handzeichen an den Zeilen und Aufzählpunkte zum Manipulieren der Listenstruktur vorhanden, z. B. bewegt ein Linienhandzeichen von einem Aufzählpunkt zu einer Zeile den Gegenstand, ein Kleinschleifen-Handzeichen an einem Aufzählpunkt entfernt den Gegenstand, und ein Handzeichen nach oben oder nach unten von einer Zeile bewegt die Zeile nach oben oder unten (d. h. ändert die Größe der Zelle).
  • Dieses System wie auch andere herkömmliche Systeme leiden jedoch an der Unfähigkeit, Freiform-Information anzunehmen, zu modifizieren oder zu ändern. Derartige Information kann die Form von Texten, Grafiken, Tabellendaten oder anderen Informationsformen annehmen, die alle in den vorherigen Formaten enthalten sein können. Herkömmliche Dateneinträge können unglücklicherweise ohne Begrenzungen, wie es definierte Ränder oder definierte Eingabebereiche sind, nicht in Freihandform eingegeben werden. Editiervorgänge können nur auf die gesamte in den definierten Rändern oder Eingabebereichen enthaltene Information einwirken, nicht auf einzelne Striche innerhalb solcher Ränder.
  • WO 92/16900 beschreibt ein Schrift/Binärkodiertzeichen-Verarbeitungsverfahren und -system mit Bewegungsraum-Einsetzmodus. Das Verfahren und das System führen Eingaben, Editierungen und andere Manipulationen von Glyphen einschließlich Handschrift, ASChl-Text, Bitmap-Bildern und Zeichungen in einem gemeinsamen Dokument aus, mit Benutzung einer kompatiblen internen Darstellung der Daten und einem einfachen konsistenten Satz von Benutzer-Steuerfunktionen. Diese Funktionen werden mit Benutzung eines intuitiven und interaktiven Satzes von Benutzer-Handzeichen aufgerufen, die dem Benutzer nicht von der Aufgabe des Eingebens oder Editierens des Dokuments ablenken. Ein Zweischritt-Handzeichenverfahren vermeidet eine Konfusion zwischen Strichen und Befehlshandzeichen und erlaubt die Verwendung von gleichartigen Handzeichen für unterschiedliche Funktionen innerhalb von gleichen und innerhalb von unterschiedlichen Kontexten.
  • Es ist erwünscht, ein System zu bekommen, das es erlaubt, Daten jeder Art in einer Freiform-Weise ohne definierte Begrenzungen wie Ränder oder definierte Eingabe -Bereiche oder -Strukturen einzugeben, die nicht notwendigerweise sichtbar sind, z. B. Texte, und das es erlaubt, in gleichartiger Weise in Editiervorgänge einzutreten, wobei die Editiervorgänge durch die eingegebenen Editierbefehle bestimmt sind und mit den Begrenzungen, welche die Arten der Daten bestimmen, die nach der Eingabe eines Editierbefehles aufscheinen, statt davor.
  • Es ist ein Ziel der vorliegenden Erfindung, die Nachteile zu überwinden, die mit den herkömmlichen, vorstehend beschriebenen Systemen verbunden sind.
  • Dieses Ziel wird erreicht durch das System, wie es im unabhängigen Anspruch 1, und das Verfahren, wie es im unabhängigen Anspruch 8 beansprucht ist. Bevorzugte Ausführungsformen der Erfindung sind in den abhängigen Ansprüchen dargelegt.
  • Entsprechend der vorliegenden Erfindung enthält ein System ein Dateneingabeschema, bei dem die Struktur der eingegebenen Daten irrelevant: ist, bis die Anforderung gestellt wird, einen Vorgang mit Bezug auf diese Daten auszuführen. Erst wenn es notwendig wird, einen Vorgang mit Bezug auf die Daten aufzuführen, wird die Bestimmung der Struktur der Daten wichtig. Der gewünschte Vorgang, der Editieren, Umordnen, Bewegen, usw. enthalten kann, ergibt dann eine Bestimmung der Datenstruktur, um eine Ausführung des bestimmten Vorgangs zu ermöglichen. Die Struktur der Daten kann so bestimmt werden, dass sie in Form einer Liste, einer Tabelle oder eines Diagramms ist. Die eingegebenen Daten sind Freiform-Daten, was bedeutet, dass ihre Struktur nicht bei der Eingabe bestimmt wird. Die Daten können bei der Eingabe Freihanddaten, abgetastete, grafische, textliche, bildliche, maschinengeschriebene (über Tastatur eingegebene) usw. Daten sein. Sie werden durch das System als Freiform behandelt, was bedeutet, dass sie nur als eine Reihe von Strichen behandelt werden. Insbesondere schafft das vorstehend beschriebene Schema eine Unterstützung für solche Formen von Daten in einer flexiblen Weise - sowohl zeitlich (so dass der Benutzer nicht permanent strukturelle Betriebsarten "erklären" muss) als auch räumlich (so dass der Benutzer das Ausmaß des strukturierten Materials begrenzen kann). Das Schema beruht auf einem Satz von Auslegungsprinzipien zum Angeben eines Satzes von strukturell/räumlichen Modellen für jede Art von Information an der Anzeigefläche, einen Satz von Handzeichen zum Auswählen besonderer Strukturen, und zum Bearbeiten der durch solche Strukturen definierten Information, und einem Satz von Systemvorgängen zum Erkennen der Strukturen und zum Ausführen von den Vorgängen entsprechenden Strukturmodellen. Diese Auslegungsprinzipien werden benutzt zum Stützen von handgeschriebenen Listen (einfachen Vertikallisten), Umrissen (zugeordneten Listen), Texten (innerhalb von Listen und Umrissen), Tabellen (Zeilen und Spalten) und Dia rammen (Knoten und Verbindungen).
  • Gemäß der vorliegenden Erfindung wird ein schirmorieniliertes Anzeigeverarbeitungssystem für die Freiform-Eintragung von Informationsdaten geschaffen, das ein Anzeigemittel, ein Dateneingabemittel zum Eingeben von Informationsdaten in das Anzeigemittel, ein Handzeichen-Eingabemittel zum Eingeben von Freiform-Handzeichendaten in der Anzeige enthält, wobei die Handzeichendaten ein Handzeichen darstellen, das mit mindestens einem Abschnitt der Informationsdaten in der Anzeige verbunden ist, und ein Zuordnungsmittel, das auf die Eingabe des Handzeichenmittels reagiert zur Zuordnung eines für das Handzeichen repräsentativen Vorgangs zudem Abschnitt der Informationsdaten, und auf das Zuordnungsmittel reagierendes Ausführungsmittel zum Ausführen des Vorgangs an dem Abschnitt der Informationsdaten. Das Zuordnungsmittel enthält Mittel zum Einrichten einer Bestimmung der Struktur der Informationsdaten, die zum Durchführen des Vorgangs ausreichend sind.
  • Gemäß einem anderen Aspekt der vorliegenden Erfindung wird ein Grafik-Editiersystem geschaffen, welches eine Datenschnittstellen-Oberfläche und ein durch den Benutzer steuerbares Mittel zum Erzeugen von Information an der Oberfläche enthält. Das System umfasst erstes auf einen Benutzereingriff reagierendes Mittel, welches ein Linienbild an der Oberfläche zum Ausführen eines Vorgangs an mindestens einem Abschnitt der Information erzeugt, wobei das Linienbild einen damit, verbundenen Befehlssatz aufweist, zweites auf den Befehlssatz reagierendes Mittel zum selektiven Analysieren, Organisieren und Umordnen von an der Oberfläche angezeigter Information, und drittes Mittel zum Ausführen des Vorgangs an der Information gemäß den Befehlen.
  • Gemäß einem anderen Aspekt der Erfindung wird ein Grafik-Editiersystem geschaffen, welches eine Datenschnittstellen-Oberfläche und ein durch den Benutzer steuerbares Mittel zum Erzeugen von Information an der Oberfläche enthält. Das System umfasst erstes auf einen Benutzereingriff reagierendes Mittel, das ein Linienbild an der Oberfläche zum Auswählen mindestens eines Abschnitts der Information erzeugt, wobei das erste Linienbild einen damit verbundenen Befehlssatz aufweist, zweites Mittel, das auf den Befehlssatz reagiert zum selektiven Analysieren, Organisieren und Umordnen von Information an der Oberfläche, und drittes, auf den ersten Benutzereingriff reagierendes Mittel, um die Information an der Oberfläche gemäß den Befehlen zu deuten.
  • Gemäß einem anderen Aspekt der Erfindung wird ein Grafik-Editiersystem geschaffen, welches eine Datenschnittstellen-Oberfläche und durch den Benutzer steuerbares Mittel zum Erzeugen von Information an der Oberfläche enthält. Das System umfasst erstes auf einen ersten Benutzereingriff reagierendes Mittel, das ein Linienbild an der Oberfläche erzeugt, um daran Daten auszuwählen, zweites, auf den zweiten Benutzereingriff nach dem ersten Benutzereingriff reagierendes Mittel, dass ein zweites Linienbild mit einem damit verbundenen Befehlssatz erzeugt, drittes auf die Befehle reagierendes Mittel zum Analysieren, Organisieren und Umordnen von Information an der zugeordneten Oberfläche, und Mittel zum Deuten der Information an der Oberfläche gemäss den Befehlen.
  • Gemäß einem anderen Aspekt der Erfindung wird ein Grafik-Editiersystem geschaffen, welches eine Datenschnittstellen-Oberfläche und durch den Benutzer steuerbare Mittel zum Erzeugen von Information an der Oberfläche enthält. Das System umfasst erstes, auf einen Benutzereingriff reagierendes Mittel, das ein Linienbild an der Oberfläche erzeugt zum Durchführen eines Vorgangs an mindestens einem Abschnitt der Information, zweites auf die Linienbilderzeugung reagierendes Mittel zum selektiven Bestimmen einer Tabelle, eines Diagramms, einer Liste und von Umrissmodellstrukturen für die Information an der Oberfläche gemäß dem Vorgang, drittes Mittel zum Identifizieren der durch dein Vorgang betroffenen Information mit Bezug auf das strukturelle Modell, drittes Mittel zum Berechnen struktureller Parameter für den Vorgang als eine Funktion von identifizierten Objekten und viertes Mittel zum Ausführen des Vorgangs an der Information.
  • Gemäß einem anderen Aspekt der Erfindung wird ein grafisches Editierverfahren geschaffen für ein System, das eine Datenschnittstellen-Oberfläche und durch den Benutzer steuerbares Mittel zum Erzeugen von Information an der Oberfläche enthält. Das Verfahren umfasst die Schritte des Zeichnens eines Linienbildes an der Oberfläche in Reaktion auf einen Benutzereingriff, um einen Vorgang an mindestens einem Abschnitt der Information auszuführen, selektiv eine Tabelle, ein Diagramm, eine Liste und Umrissmodellstrukturen in Reaktion auf die Erzeugung des Linienbildes für die Information an der Oberfläche gemäß dem Vorgang zu bestimmen, die durch den Vorgang betroffene Information mit Bezug auf das Strukturmodell zu identifizieren, strukturelle Parameter für den Vorgang als eine Funktion von identifizierten Objekten zu berechnen und den Vorgang an der Information auszuführen.
  • Gemäß einem anderen Aspekt der Erfindung wird ein Grafik-Editiersystem geschaffen, das eine Datenschnittstellen-Obernäche, durch Benutzeneingriff steuerbare Mittel zum Erzeugen von Information an der Objekten und Speichermittel zum Speichern von Information enthält. Das System umfasst erstes auf einen Benutzereingriff reagierendes Mittel zum Erzeugen eines Linienbildes an der Objekten, zweites auf die Erzeugung des Linienbildes reagierendes Mittel zum Durchsuchen des Speichers und Erkennen der Linie als ein Befehls-Handzeichen zum Ausführen eines Vorgangs an mindestens einem Abschnitt der Information, drittes Mittel zum wahlweisen Definieren der Information als eine Tabelle, ein Diagramm, eine Liste, und Umrissmodellstrukturen gemäß dem Vorgang, viertes Mittel zum Ausführen des dem Befehls-Handzeichen zugeordneten Vorganges und fünftes Mittel zum Anzeigen der Information gemäß der Ausführung.
  • Gemäß einem anderen Aspekt der Erfindung wird ein Grafik-Editierverfahren geschaffen für ein System, das eine Datenschnittstellen-Oberfläche, durch den Benutzer steuerbare Mittel zum Erzeugen von Information an der Oberfläche und Speichermittel zum Speichern von Information enthält. Das Verfahren umfasst die Schritte des Erzeugens eines Linienbildes an der Oberfläche in Reaktion auf einen Benutzereingriff, das Durchsuchen des Speichers in Reaktion auf die Linienbilderzeugung Lind das Erkennen der Linie als eira Befehls-Handzeichen zum Ausführen eines Vorganges an mindestens einem Abschnitt der Information, selektives Definieren der Information als eine Tabelle, ein Diagramm, eine Liste und Umrissmodellstrukturen gemäß dem Vorgang, Ausführen des Vorgangs gemäß dem Befehls-Handzeichen und Anzeigen der Information gemäß der Ausführung.
  • Gemäß einem anderen Aspekt der Erfindung wird ein Garafik-Editiersystem geschaffen, das eine Datenschnittstellen-Oberfläche und durch den Benutzer steuerbare Mittel zum Erzeugen von Information an der Oberfläche enthält. Das System umfasst erstes auf einen Benutzereingriff reagierendes Mittel zum Erzeugen eines Linienbildes an der Oberfläche, zweites, auf die Linienbilderzeugung reagierendes Mittel, das die Linie als einen Befehl zum Ausführen eines Vorgangs an mindestens einem Abschnitt der Information erkennt, drittes Mittel, das auf Befehlserkennung reagiert zum Definieren der Information an der Oberfläche als eine Liste, welche mindestens eine vertikale Spalte von durch Zwischenräume getrennten Zeilengegenständen gemäß dem Vorgang umfasst, und viertes Mittel zum Ausführen des dem Befehls-Handzeichen zugeordneten Vorgangs.
  • Gemäß einem anderen Aspekt der Erfindung wird ein Grafik-Editiersystem geschaffen, das eine Datenschnittstellen-Oberfläche und durch den Benutzer steuerbare Mittel zum Erzeugen von Information an der Oberfläche enthält. Das System umfasst erstes auf einen Benutzereingriff reagierendes Mittel zum Erzeugen eines Linienbildes an der Oberfläche, zweites, auf die Linienbilderzeugung reagierendes Mittel, das die Linie als einen Befehl zum Durchführen eines Vorgangs an mindestens einem Abschnitt der Information erkennt, drittes auf die Befehlserkennung reagierendes Mittel zum Definieren der Information an der Oberfläche als eine Liste, die eine Vielzahl von Zeilengegenständen umfasst, von denen jeder einen spezifischen Indentationspegel gemäß dem Vorgang aufweist, und viertes Mittel zum Ausführen des den Befehls-Handzeichen zugeordneten Vorgangs.
  • Diesbezügliche computergesteuerte Grafikanzeige-Systeme sind in EP-A-0 566 293 und EF-A-0 566 294 und in den anhängigen europäischen Patentanmeldungen EP-A- 0 Ei37 735 und EP-A-0 637 812 beschrieben.
  • Die Erfindung wird beispielsweise und mit Bezug auf die beigefügten Zeichnungen dargestellt, in denen gleiche Bezugszeichen gleiche oder entsprechende Teile benennen und in denen:
  • Fig. 1 ein Blockschaltbild ist, das eine Form von auf Handzeichen beruhender Eingabevorrichtung darstellt, bei welcher das erfindungsgemäße System benutzt werden kann;
  • Fig. 2 eine Seitenansicht eines Anzeigeschirms mit einem verschiedene Objekte umschließenden Freiform-Schleifenhandzeichen ist;
  • Fig. 3 ein herkömmliches Umrisssystem auf Stiftgrundlage darstellt;
  • Fig. 4 ein einfaches Flussdiagramm der grundsätzlichen Abläufe des in Fig. 1 gezeigten erfindungsgemäßen Systems darstellt;
  • Fig. 5(a) ein erweitertes Flussdiagramm der in Fig. 4 gezeigten Vorgänge darstellt;
  • Fig. 5(b) die in einem die vorliegende Erfindung verkörpernden System benutzten Handzeichen darstellt;
  • Fig. 5(c) ein Flussdiagramm der grundsätzlichen Steuervorgänge des Systems darstellt, welche implizit Strukturen gemäß der vorliegenden Erfindung stützen;
  • Fig. 5(d) ein erweitertes Flussdiagramm der in Fig. 5(c) gezeigten Vorgänge darstellt;
  • Fig. 6(a)-6(m) Vorgänge und Handzeichen bei handgeschriebenen Listen darstellen;
  • Fig. 7(a)-7(f) Vorgänge und Handzeichen bei handgeschriebenen Umrissen darstellen;
  • Fig. 8(a)-8(j) Vorgänge und Handzeichen bei handgeschriebenem Text darstellen;
  • Fig. 9(a)-9(h) Vorgänge und Handzeichen bei handgeschriebenen Tabellen darstellen;
  • Fig. 10(a)-10(i) Vorgänge und Handzeichen mit Kantenlinien darstellen;
  • Fig. 11 (a)-11 (h) Vorgänge und Handzeichen an Knotenverbindungsstrukturen für handgeschriebene Diagramme darstellen;
  • Fig. 12 Vorgänge von vollständig strukturierten Daten darstellen;
  • Fig. 13 und 14 Vorgänge bei gemischten Strukturen und Freiform-Befehlen darstellen;
  • Fig. 15 und 16 Ausrichtvorgänge an einer Tabelle darstellen; und
  • Fig. 17(a)-17(h) Vorgänge bei Freiformtext und das sich ergebende Verhalten darstellen. Die diskutierte Auslegung kann durch einen Satz von Prinzipien definiert werden. Derartige Auslegungsprinzipien enthalten das folgende:
  • 1. Der Zeichenbereich wird immer als eine ebene zweidimensionale Fläche angesehen, auf die der Benutzer jederzeit irgendein Objekt in Freiform eingeben kann. Es gibt keine Begrenzungen seines Gebrauchs.
  • 2. Es ist ein Satz von Handzeichen vorhanden (d. h. von Strichen, die durch das System gedeutet werden) zum Auswählen von Strichgruppen und Vorgehensweisen mit diesen. Beispielsweise wählt ein Schleifen-Handzeichen einige Striche aus und eine Eng-Kreuzschleife (pigtail) beseitigt sie.
  • 3. Außer bei der (durch ein Auswahl-Handzeichen definierten) Auswahlumschließung besteht die gesamte Information an der Anzeige einfach aus Strichen, die den gemeinsamen Strichvorgängen unterworfen sind, wie Färbung, Verdünnung, Bewegung, Schrumpfung, Löschung usw. Es gibt keine speziellen Arten von Gegenständen, wie Aufzählpunkte oder Zellenlinien.
  • 4. Es gibt keine vordefinierten strukturellen Gruppierungen der Striche durch das System. Das System kann jedoch auf Verlangen den gegenwärtig vorhandenen Strichsatz als irgendeine von verschiedenen Arten von Strukturen deuten.
  • 5. Mittels Handzeichen kann der Benutzer eine Absicht bezeichnen, um zeitweilig ein Teil der gegenwärtigen Anzeige als eine besondere Strukturart anzusehen. Beispielsweise wählt ein einer linken (eckigen) Klammer ähnelndes Handzeichen eine Gruppe von Strichen aus und betrachtet sie in einer Liste als einen Gegenstand.
  • 6. Wenn eine Auswahl als eine besondere Strukturart angesehen wird, wird jeder Vorgang an dieser Struktur gemäß den strukturellen Annahmen genau dieser Struktur ausgeführt. Wenn beispielsweise eine einfache Auswahl bewegt wird, wird sie einfach zu ihrem neuen Ort verschoben; wenn jedoch ein Listengegenstand bewegt wird, wird Platz für ihn geschaffen und der übrig bleibende Platz geschlossen.
  • 7. Wenn eine Auswahl einer bestimmten Art entlassen wird, werden die strukturellen Annahmen nicht länger beobachtet. D. h., es wird keine Aufzeichnung der Strukturierung beibehalten.
  • Mit diesen Prinzipien gibt es keine Betriebsarten oder vorher erklärte Strukturen. Strukturelle Annahmen obliegen der augenblicklichen Entscheidung des Benutzers. Das bedeutet, diese Prinzipien ermöglichen dem Benutzer zeitliche Flexibilität. Der Benutzer braucht auch räumliche Flexibilität, d. h. die Fähigkeit, den räumlichen Skopus von dem als strukturiert anzusehenden zu begrenzen. Es gibt damit zwei weitere Prinzipien:
  • 8. Eine Technik ist vorgesehen, um "Kanten" um Material an der Anzeige zu errichten, welche den räumlichen Skopus von Strukturen begrenzen. Einfachste Technik ist, einfach sehr lange Striche (bezogen auf die Art der hervorgerufenen Strukturen) als Kantenlinien anzusehen. Beispielsweise kann der Benutzer Listenvorgänge auf den linken Bereich einer Seite dadurch begrenzen; dass er eine lange Linie in der Mitte der Seite nach unten zieht, die dann als Kante dient. Wenn der Benutzer einen Listengegenstand an der linken Hälfte der Seite auswählt, hört die Erstreckung des Gegenstands an der Kantenlinie auf.
  • 9. Es können an der Anzeige Objekte vorhanden sein, die nicht in die gegenwärtig hervorgerufene Struktur passen (z. B. gehören vertikale Linien zwischen Spalten einer Tabelle nicht zu einer ausgewählten Zeile, auch wenn sie die Zeile durchschreiten). Derartige Objekte werden als "zur Umgebung gehörig" angesehen und werden bei den strukturellen Vorgängen ungestört gelassen.
  • Es gibt einen Satz von gemeinsamen generischen Strukturen - Listen, Umrissen, Texten, Tabellen und Diagrammen - die eine Reihe von strukturellen Annahmen gemeinsam haben, und so werden derartige Strukturen in einer vereinheitlichten Auslegung gleichartig behandelt, wie mit Benutzung von gemeinsamen Handzeichen und Familien von gleichartigen Handzeichen über den verschiedenen Strukturen. Schließlich nimmt das System an, dass der Benutzer eine besondere Struktur nur dann einrichten will, wenn tatsächlich das Material in der Anzeige (bis zu einem gewissen "Rausch"-Niveau) dieser Struktur entspricht. So kann der Benutzer einen Tabellenvorgang in einem vernetzten Diagramm einrichten, und das System wird dies durchführen, ohne zu überprüfen, ob es sinnvoll ist. Diese Prinzipien werden in der nachfolgenden Systembeschreibung zur Wirkung gebracht.
  • In der Fig. 1 ist ein Blockschaltbild des auf Handzeichen beruhenden Eingabesystems 10 mit einer Bildschirmanzeige 12 gezeigt. Eine transparente auf Druck ansprechende Zeichenoberfläche 14, d. h. eine Tasttafel, ist an der Oberfläche der Bildschirmanzeige 12 angebracht. Die Zeichenoberfläche 14 wird durch einen Benutzer berührt und die Berührungsstelle wird durch die Tasterfassungsschaltung 18 erfasst.
  • Das von der Tasterfassungsschaltung 18 erfasste Signal wird einer X/Y-Erfassungsschaltung 20 eingegeben. Die X/Y-Erfassungsschaltung 20 verarbeitet das Eingabesignal und führt einen arithmetischen Vorgang oder dergleichen aus. Damit erfasst die XJY-Erfassungsschaltung 20 die (x,y)-Koordinaten des angetasteten Eingabepunktes an der Zeichenoberfläche 14 und überträgt diese Information zur CPU 22. Die Tasterfassungsschaltung 18, die X/Y-Erfassungsschaltung 20 und die CPU 22 wirken zusammen als Steuerung 16. Die Steuerung 16 führt die Steuervorgänge gemäß dem im Programm- ROM 26 im Speicher 24 gespeicherten Steuerprogramm aus. Der ROM-Abschnitt im Speicher 24 enthält einen Programm-ROM 26, in dem das Steuerprogramm der CPU 22 gespeichert ist, und Musterdatenbereiche zur Speicherung verschiedener Arten von Zeichenmustern (-formen) oder dergleichen. Der RAM-Abschnitt 28 des Speichers 24 enthält einen RAM-Abschnitt, der als Arbeitsspeicher der CPU 22 dient, und einen Zeichenpositions-Datenbereich 30 zur Speicherung von Anzeigepositionen der Zeichenmuster und dergleichen.
  • Insbesondere ist die Zeichenfläche 14 in Fig. 2 ein elektronisches Eingabegerät wie eine elektronische Skizziertafel, ein Liveboard oder Whiteboard mit Benutzung einer Arbeitsfläche, und kann, wie gezeigt, eine Vielzahl von Zugriffsfunktionen 40 benutzen. Die Arbeitsfläche ist der obere Bereich 36 der Zeichenfläche 14, und die Zugriffsfunktionen 40 sind an dem unteren Bereich 38 der Zeichenfläche 14 positioniert. Diese Funktionen 40 können einen neuen Ablauf (Zeichenmodus), das Beseitigen; Bewegen, Schrumpfen usw. enthalten. Alternativ kann auf diese Funktionen durch ein Aufklappmenü zugegriffen werden. Diese Funktionen sind jedoch in ihrer Auslegung optional, wobei ihre Grundziele darin bestehen, Abläufe zu definieren, die in dem Ablauf des Systems inhärent sind. Diese Funktionen können an einigen der gleichen Funktionen teilhaben, die durch manche bezeichnende Befehls-Handzeichen dargestellt werden.
  • Eine entsprechende durch den Benutzer beeinflussbare Steuerung oder ein interaktives Gerät wie ein Griffel oder eine Lichtfeder oder dergleichen (mit Bezugszeichen 42) wird benutzt, um Eingabesymbole zu zeichnen, Funktionen auszuwählen oder Handzeichen zu zeichnen, die für die bestimmten Funktionen repräsentativ sind. Offensichtlich können auch andere Varianten benutzt werden, wie sie in diesem Fachbereich gebräuchlich sind.
  • In Fig. 2 hat der Benutzer Objekte 34 geschaffen und hat diese Objekte durch Zeichnen einer Freiform-Schleife 32 um diese gewählt.
  • Die dem System unterliegenden Abläufe werden am ehesten dadurch verstanden, dass zuerst der Vorgang des Ausführens eines generischen Ablaufes oder einer impliziten Struktur geprüft wird. Die Schlüsseldetails der Vorgänge werden nachstehend diskutiert. Uni Abläufe an impliziten Strukturen zu unterstützen, kann das System in breiter Hinsicht so gekennzeichnet werden, dass es die folgenden drei grundsätzlichen Merkmale enthält, wie in Fig. 4 gezeigt.
  • (1) Handzeichen/Daten-Eintrag 54; Empfängt Dateninformation oder Befehls- Handzeichen, die als ein Strich an der Zeichenfläche 14 gezogen werden, und deutet den jeweiligen Strich als ein Befehls-Handzeichen in Reaktion auf einen durch den Benutzer unternommenen Eingriff. Ein derartiger Eingriff kann das Ausüben von Druck auf einen Knopf sein, der in der Jähe des Griffabschnitts des Griffels 42 gelegen ist. Es sind andere Mittel verfügbar, um dem System mitzuteilen, dass es einen Strich als einen Befehl zu deuten hat. Jedoch wird für die beschriebenen Zwecke angenommen, dass das System in der Lage ist, einen Strich dann, wenn der Benutzer es wünscht, als ein Befehls-Handzeichen zu deuten.
  • (2) Vorgangszuordnung 56; Sobald (ein oder mehrere) Befehls-Handzeichen durch den Benutzer ausgegeben wurde(n), sucht das System den Programmspeicher ab, um den Ablauf oder die Abläufe zu bestimmen, die diesem oder diesen Handzeichen zugeordnet sind, um eine Art von strukturellem Modell gemäß den Handzeichen zu erklären und zu bestimmen; und
  • (3) Vorgangsausführung 58; Mittel zum Ausführen oder Durchführen des Vorgangs oder der Vorgänge mit Bezug auf die gewünschten Daten Die Merkmale (2) und (3) bestehen aus den folgenden vier Teilmerkmalen, die durch Blöcke 60, 62, 64, 66 in Fig. 5(a) gezeigt sind.
  • (1) Bestimme das strukturelle Modell;
  • (2) Identifiziere die örtlichen Objekte unter dem strukturellen Modell, die durch den Vorgang beeinflusst werden;
  • (3) Berechne strukturelle Parameter zum Vorgang als eine Funktion der identifizierten Objekte; und
  • (4) Führe den Vorgang aus.
  • Im Block 60 wird ein strukturelles Modell erklärt und eine bestimmte Modellart gewählt, die der Kombination von benutzten Handzeichen entspricht, um eine Auswahl zu treffen, und zum Einwirken auf die gewählte Information benutzt.
  • Eine Modellstruktur wird zuerst durch ein Handzeichen aufrufen, das zum Definieren eines Vorgangs benutzt wird. Das bedeutet, ein bestimmtes Handzeichen zum Auswählen gewünschter Information an der Anzeige gibt dem System an, dass solche Information innerhalb eines grundsätzlichen Strukturmodell-Kontextes behandelt werden soll. Diese spezifizierten Auswahl-Handzeichen schaffen die strukturierten, d. h. rechtwinkligen Einschlüsse 67 in Fig. 5(b). Bei der bevorzugten Ausführungsform werden die sttukturierten Einschlüsse durch Zeichnen von Handzeichen in Eckklammerform (Auf- und Ab-Eckklammern 68 und 70 und linke und rechte Eckklammern 72 und 74), ein Untenstreichungs-Handzeichen 75 oder durch L-förmige Handzeichen 76 geschaffen. Diese Auswahl-Handzeichen sind kollektiv als strukturierte Auswahl-Handzeichen bekannt. Die Erkennungstechniken für diese Handzeichen sind wegen der leicht unterscheidbaren Merkmale solcher Handzeichen wie Winkel und Ausrichtung ganz einfach.
  • Nachdem das strukturierte Auswahl-Handzeichen gezeichnet ist, schafft das System die stnakturierte Einschließung durch ein als Projektion bekanntes Konzept. Mit Strukturauswahl-Handzeichen werden die Segmente (Schenkelabschnitte) der Handzeichen teilweise bis zu einer vorgegebenen Grenzkante projiziert. Diese projizierten Segmente werden Erweiterungen genannt. Alle Daten, die in den durch die projizierten Begrenzungen definierten Bereich fallen, werden ausgewählt. Z. B. werden die Enden eines Links-Eckklammer-Handzeichens "[" horizontal nach rechts projiziert, bis eine vorgegebene Grenzkante erreicht wird, um die Projektion abzuschließen. Alle Daten, die in die Erweiterungs-Begrenzungen des projizierten Eckklammer-Handzeichens fallen, werden gewählt. Das Lförmige Handzeichen arbeitet in gleichartiger Weise. Im Falle eines Unterstreichungs- Handzeichens identifiziert das System die "Zeile" des Textes über der Unterstreichung oder den Text, der diese Unterstreichung berührt, und wählt die Objekte an der Zeile, die zwischen den Endpunkten des Handzeichens liegt.
  • Andererseits ist die durch eine Freiformschleife 32 hergestellte Auswahl nur eine Auswahl von Gegenständen für zukünftige Bearbeitung, ohne Bezug auf Spezifizierung und/oder Organisation derartiger Information gemäß irgendeinem Strukturmodell. Um die hergestellte Auswahl zu bewegen, kann der Benutzer das (unstrukturierte) Bewegungs- Handzeichen 77 benutzen.
  • In den meisten Situationen ist die Modellart, d. h. die genaue Struktur der Information, nicht bestimmt, bis der Benutzer einen zweiten Befehl bei dieser Auswahl von Gegenständen ausführt, d. h. ein zweites (strukturiertes) Handzeichen zeichnet. Beispiele dieser Handzeichen sind ebenfalls in Fig. 5(b) gezeigt. Derartige Handzeichen können folgende Handzeichen enthalten: Beseitigen 82 (pigtail oder Engschleife), Bewegen 84, Schrumpfen 88, Kopieren 79 und (dynamisch) Ziehen 86. Diese Liste ist jedoch nicht abgeschlossen. Die Einzelheiten der spezifischen Modelle, ihre Vorgänge und diese und zusätzliche Handzeichen werden nachfolgend beschrieben. Derartige Befehls-Handzeichen, insbesondere die Keilzeichen und das Caret (Auslassungszeichen), können auch ohne ein vorhergehendes Auswahl-Handzeichen benutzt werden.
  • Bei einer anderen Ausführungsform bezeichnet jedoch das erste Handzeichen (und manchmal auch das zweite) das Modell, wählt einen Salz von Strichen innerhalb des Modells aus, und dann gibt ein zweites Handzeichen den an den ausgewählten Strichen auszuführenden Eingriff an.
  • Im Block 62 identifiziert das System die örtlichen Objekte, die durch den Vorgang mit Bezug auf das strukturelle Modell beeinflusst werden. Das System arbeitet an dieser Stelle durch Gruppieren von Strichen zu Strukturen (z. B. Zeilengegenständen) und Aufteilen eines Strichsatzes relativ zu diesen Strukturen. Um z. B. einen Zeilengegenstand zu bewegen, muss das System identifizieren, welche Striche zu dem Zeilengegenstand gehören, die Zeilengegenstände am Bestimmungsort identifizieren (um den Zwischenzeilenspalt zu bestimmen), und die restlichen Striche an dem Bildschirm unterteilen, je nach dem ob sie über oder unter der Quellenzeile und über oder unter dem Bestimmungsspalt liegen. Aus dieser Aufteilung werden Zeilenräume leicht abgeleitet. Die Zeilengruppierungs-Technik wird nachher weiter beschrieben.
  • Im Falle von Spaltenstrukturen werden Abläufe analog zu solchen für Zeilen benutzt, um Striche in Spalten zu gruppieren, Spalten-Zwischenräume zu finden und Striche links und rechts von Spalten aufzuteilen. Für das Textmodell besteht jedoch eine Reihe von Abläufen zum Aufteilen von Strichen innerhalb einer Zeile in solche, die zur linken und zur rechten der Auswahl liegen, oder von dem Bestimmungspunkt einer Bewegung. Man bemerke, dass keine Notwendigkeit für einen Wortgruppierungsvorgang besteht, weil der Benutzer Worte explizit durch die Eckklammer-Handzeichen gruppiert. Um eine Gruppe von Worten zu bewegen, braucht das System nur eine Zeilengruppierung an der Quelle und am Bestimmungsort durchzuführen, so dass es die linken und rechten Zeilen-Teilsegmente am Bestimmungsort auseinander und an der Quelle wieder zusammen bewegen kann. Wenn nur eine partielle Gruppenauswahl getroffen wird, kann das System gewisse Annähmen herstellen, um die Gruppierung zu vervollständigen. Beispielsweise macht es ein Unterstreichungs-Handzeichen erforderlich, dass das System die Zeilenbegrenzungen findet.
  • In allen Fällen werden Umgebungs- und Grenzstriche identifiziert durch Nachschau nach Objekten, die relativ zu den gewählten Strukturen sehr groß sind.
  • Im Block 64 berechnet das System die strukturellen Modell-Parameter für den Vorgang als eine Funktion der vorstehend identifizierten örtlichem Objekte. Die erforderlichen Abläufe enthalten das Berechnen von Grundlinien, das Abstandhalten von Zeile und Spalte und das Abstandhalten von Worten. Es sind auch spezielle Algorithmen vorhanden, wie solche zum Berechnen der Parameter zum Zusammenfallen von Teilbäumen in einer Umrissstruktur.
  • Zusammengefasst hat das System das strukturelle Modell, die beeinflussten Objekte und die strukturellen Modell-Parameter bestimmt. Die abschließende Funktion besteht in dem Ausführen des Vorgangs 66, d. h. Durchführen des gewünschten Vorgangs, der das geradlinige Manipulieren der Objekte an der Zeichenoberfläche 14 enthält: Zum Beispiel werden, um eine Zeile an einen höher an der Seite liegenden Ort zu bewegen, die Zeilen zwischen der Quelle und dem Bestimmungsort nach unten bewegt, und die Zeile wird nach oben in den sich ergebenden Raum bewegt und der freigemachte Zeilen-Zwischenraum entfernt.
  • Die Schlüsselprozeduren oder -schritte sind solche, welche die impliziten Strukturen finden. Eine typische Prozedur ist die zum Gruppieren von Zeilen. Eine darauf bezogene Prozedur bestimmt Grundlinien Grundlegend für diese beiden Prozeduren ist eine, welche die Dichte der "Farbe" in den horizontalen Querschnitten des Bildschirms bestimmt. Eine Beschreibung der Prozeduren von oben nach unten wird später geschaffen und wichtige Abschnitte derselben im Anhang A dargelegt.
  • Mit Vorgabe eines Punktes, z. B. des Endpunktes eines Bewegungs-Zeichens oder des oberen Punktes eines Caret-Handzeichens (um einen Wortraum zu öffnen) findet der Liniengruppierungs-Vorgang die Striche, die zu der die y-Koordinate des gegebenen Punktes enthaltenden Zeile gehört. Der Vorgang berechnet die oberen und unteren Begrenzungen der Zeile und prüft dann alle Striche am Schirm mit Sammeln jener, die an der Zeile "sitzen". Das Kriterium für einen an einer Zeile sitzenden Strich besteht darin, dass mehr als die Halfte des vertikalen Ausmaßes des Striches zwischen der oberen und der unteren Zeilenbegrenzung liegen muss.
  • Die Vorgang FindeLinienBegrenzungen beruht auf der Farbdichtefunktion. Diese Dichte wird diskret durch eine Anordnung repräsentiert. Der Schirm wird in horizontale Streifen unterteilt und die "Farbdichte" für jeden Streifen berechnet. Diese Anordnung von Werten wird dann durch Anlegen eines Schwellwertes, der als Bruchteil der durchschnittlichen Dichte ausgedrückt ist, in Binärwerte (0 oder 1) gewandelt. Durch Benutzen kleinerer oder größerer Schwellwerte kann die Farbdichte zum Auffinden von Zeilenbegrenzungen oder Text-Grundlinien benutzt werden.
  • Man bemerke, dass andere ausgeklügeltere Prozeduren eingesetzt werden könnten (z. B. Schritte, die auch schräg laufende Zeilen behandeln können).
  • Fig. 5(c) ist ein Flussdiagramm der grundsätzlichen Steuervorgänge, welche die vorstehend beschriebenen Systemprozeduren einrichten. Diese Vorgänge sind folgende:
  • Im Block 81 ist das System nicht aktiv, bis der Benutzer im Block 82 durch irgendeines der vorstehend beschriebenen Mittel (Stift, Abtasten, Tastatureingabe usw.) Daten eingilt. Sobald Daten in das System eingegeben sind, kann der Benutzer an der Zeichenfläche 14 in dem Benutzenwirkungsblock 83 ein Handzeichen zeichnen. Im Block 84 erfasst das System, dass ein Handzeichen eingegeben wurde und führt eine Analyse der Form des Handzeichens aus, um dieses als eines der dem System bekannten Handzeichen einzuteilen. Im Entscheidungskaro 85 wird, falls das Handzeichen durch das System nicht erkannt wird, eine Fehlernachricht im Block 86 ausgelöst, und das System kehrt zu einer neuen Handzeichen-Eingabe zum Benutzerwirkungsblock 83 zurück. Falls das Handzeichen erkannt ist, bestimmt das System, ob das Handzeichen ein solches zum Auswählen gewünschter Daten ist. An dieser Stelle wird bemerkt, dass das System auch die Art des Auswahl-Handzeichens bestimmt, weil die Art des Auswahl-Handzeichens bestimmt, ob das System einen Standard-Datenvorgang oder einen Datenvorgang innerhalb eines strukturellen Kontextes ausführt. Die Einzelheiten der Art von Auswahl- Handzeichen und ihre Attribute werden jedoch nachfolgend mit Bezug auf das Flussdiagramm in Fig. 5(d) besprochen.
  • Wenn das Handzeichen ein Befehl zur Auswahl ist, wird das System die Dateninformation identifizieren, die durch die Auswahl im Block 88 definiert ist, den Vorgang der Auswahl im Block 89 durchführen und das Ergebnis des durchgeführten Vorganges im Block 90 anzeigen. Das System kehrt dann zum Benutzer-Aktionsblock 83 zurück, wo der Benutzer ein weiteres Handzeichen eingeben kann.
  • Wenn nun ein anderes als ein Auswahl-Handzeichen erfasst wird, wird das System die durch das Handzeichen definierte Information im Block 91 identifizieren, die restliche Informationsdaten nach der Identifizierung am Block 92 identifizieren und das strukturelle Modell für die Information aufgrund des Handzeichens und der vorher identifizierten Information definieren. Ein strukturelles Modell kann eine Liste; eine Tabelle, ein Diagramm oder ein Umriss sein. Zum Beispiel wird eine Liste gekennzeichnet als eine Spalte von Linien- oder Zeilengegenständen (wobei jeder Gegenstand aus einer Zeile von grafischen Objekten besteht), und wenn ein Gegenstand bewegt wird, wird die Spalte umgeordnet, um Raum für den Gegenstand zu schaffen und den nach der Bewegung verbleibenden Leerraum zu schließen. Im Block 94 führt das System den mit dem identifizierten Handzeichen verbundenen Vorgang (Bewegen, Schrumpfen, Beseitigen usw.) aus. Das System zeigt dann den Vorgang der Änderung der Information entsprechend mit dem Vorgang im Block 95 an (Animation genannt) und zeigt auch das Ergebnis der Information entsprechend der Ausführung im Block 96 an. Das System kehrt dann zur Fig. 81 zurück, wo das System auf Eingabe wartet.
  • Die Vorgänge des in Fig. 5(c) dargestellten Flussdiagramms und die Beschreibung derselben sind in erweiterter Form im Flussdiagramm in Fig. 5(d) gezeigt. Der Text für jedes Element des Flussdiagramms in Fig. 5(d) und das entsprechende Bezugszeichen sind nachstehend angegeben:
  • 100 Warten auf Benutzer-Eingabe; Das System ist hier nicht aktiv.
  • 102 Ist Handzeichen eingegeben?; Sobald der Benutzer Information eingibt, bestimmt das System, ob die Information ein Handzeichen ist. Falls die Information kein Handzeichen ist, bewegt sich das System zum Block 124 und führt andere Vorgänge aus. Sonst geht das System weiter zur Entscheidungsraute 104.
  • 101 Besteht schon Freiform-Auswahlumschließung; Falls eine Freiform-Auswahlumschließung vorhanden ist, geht das System weiter zum Block 110. Wenn keine Freiform- Auswahlumschließung vorhanden ist, bewegt sich das System zur Entscheidungsraute 106.
  • 106 Besteht schon eine strukturierte Auswahlumschließung?; Wenn eine strukturelle Auswahl vorhanden ist, geht das System weiter zur Entscheidungsraute 118. Ist keine strukturelle Auswahl vorhanden, geht das System weiter zur Entscheidungsraute 108.
  • 108 Ist die Eingabe ein Auswahl-Handzeichen?; Falls die Eingabeinformation ein Auswahl-Handzeichen ist, geht das System zur Entscheidungsraute 112 weiter. Falls sie kein Auswahl-Handzeichen ist, geht das System weiter zur Entscheidungsraute 122.
  • 110 Ist Eingabe ein Freiform-Änderungshandzeichen?; Falls die Eingabeinformation ein Freiform-Änderungshandzeichen ist, geht das System weiter zum Block 126 und ändert das existierende Freiform-Auswahlhandzeichen. Falls sie kein Freiform-Änderungshandzeichen ist, geht das System weiter zur Entscheidungsraute 112.
  • 112 Ist die Eingabe ein Freiform-Auswahlhandzeichen?; Falls die Information ein Freiform-Auswahlhandzeichen ist, geht das System weiter zum Block 128; schafft eine neue Freiformschleife und kehrt zum Block 100 zurück. Falls die Eingabe kein Freiform-Auswahlhandzeichen ist, bewegt sich das System zur Entscheidungsraute 114.
  • 114 Ist Eingabe ein strukturiertes Auswahl Handzeichen?; Falls die Eingabe ein strukturiertes Auswahl-Handzeichen ist, bewegt sich das System zum Block 132 und schafft eine neue strukturierte Auswahl. (Ein strukturiertes Auswahl-Handzeichen umschließt Information, die gemäß einem der strukturellen Modelle in Betracht zu ziehen ist. Diese Handzeichen enthalten eckige Klammern und L-förmige Figuren. Einzelheiten dieser Handzeichen werden später beschrieben.) Falls die Eingabe kein strukturiertes Auswahl- Handzeichen ist, bewegt sich das System weiter zur Entscheidungsraute 116.
  • 116 Ist Eingabe ein Vorgang-bei-Auswahl-Handzeichen?; Falls Eingabe ein Vorgang an einem Freiform-Auswahlhandzeichen ist, geht das System weiter zum Block 130 und führt den Vorgang aus. Falls dies nicht der Fall ist, lässt das System ein Fehlersignal erscheinen, das ein nicht deutbares Handzeichen bezeichnet.
  • 118 Ist Eingabe ein strukturiertes Auswahl-Handzeichen?; Hier existiert bereits eine strukturierte Auswahl. Wenn so die Eingabe ein strukturiertes Auswahl-Handzeichen ist, bewegt sich das System zur Entscheidungsraute 120 und bestimmt, ob die strukturierte Auswahl zu dem existierenden Auswahl-Handzeichen "passt". Der Ausdruck "passen" wird nachstehend beschrieben. Falls die Eingabe kein strukturiertes Auswahl-Handzeichen ist, kehrt das System zur Entscheidungsraute 112 zurück und bestimmt, ob die Eingabe eine Freiform-Auswahl ist.
  • 120 "Passt" das strukturierte Auswahl-Handzeichen zu der vorhandenen strukturierten Auswahl?; Falls die eingegebene strukturierte Auswahl zu dem vorhandenen strukturierten Handzeichen passt, geht das System weiter zum Block 134 und ändert das existierende Auswahl-Handzeichen. Sonst geht das System weiter zum Block 132 und schafft eine neue strukturierte Auswahl und entfernt die vorher existierende Auswahlumschließung. "Passen" bedeutet, dass das durch das neues Handzeichen gewählte Material die vorhandene strukturierte Auswahl in einer der Art der Auswahl angemessenen Weise überdeckt. Wenn beispielsweise der durch ein projiziertes Auswahl-Handzeichen definierte Bereich den Bereich einer bestehenden rechtwinkligen Auswahl überschneidet, "passt" die Auswahl, und die bestehende Auswahl wird so erweitert oder zusammengezogen, dass das projizierte Auswahl-Handzeichen eine ihrer Begrenzungen bildet. Jedoch braucht keine strikte Überschneidung notwendig zu sein. Wenn beispielsweise die vorhandene strukturierte Auswahl zu dem "Einschlag um den Text"-Modell passt (Text, der sich von Zeile zu Zeile fortsetzt), wird das Handzeichen als Markierung eines Punktes in dem Fluss von Zeile zu Zeile gedeutet.
  • 122 ist Eingabe ein Vorgang-ohne-Auswahl-Handzeichen?; Falls die Eingabe ein Handzeichen ist, das ohne ein Auswahl-Handzeichen wirkt, geht das System weiter zum Block
  • 136 und führt den Vorgang durch. Sonst erscheint eine Fehlerbotschaft, die die Eingabe eines nicht deutbaren Handzeichens anzeigt.
  • 124 Durchführen anderer Vorgänge; Definiert sich selbst.
  • 126 Ändert existierende Freiform-Auswahl; Dasselbe.
  • 128 Schaffen einer neuen Freiform-Auswahl; Dasselbe.
  • 130 Vorgang an bestehender Auswahl durchführen; Dasselbe.
  • 132 Neue strukturierte Auswahl schaffen; Dasselbe.
  • 134 Existierende strukturierte Auswahl ändern; Die existierende strukturierter Auswahl- Urnschließung wird umgeformt zum Umschließen des Änderungs-Handzeichens.
  • 136 Vorgang durchführen; Definiert sich selbst.
  • 138 Dem Benutzer undeutbares Handzeichen signalisieren; Dasselbe. Einzelheiten der implizierten unterstützten Strukturen
  • Handgeschriebene Listen A. Strukturelles Modell:
  • Es wird angenommen, dass eine Liste eine vertikale Spalte von durch Zeilenzwischenräumen getrennten Zeilengegenständen (oder zur Kürze nur Gegenständen) ist. Ein Gegenstand ist üblicherweise eine Textzeile. Es ist deshalb anzunehmen, dass er breit und nicht sehr hoch ist. Da eine linksseitige eckige Klammer links von einem Gegenstand eine wirksame Weise für Textauswahl ist, dient dieses Handzeichen bei diesem Modell als bevorzugte Auswahlform. In einer Liste wird der vertikale Zwischenraum zwischen den Gegenständen minimiert. Wenn ein Gegenstand beseitigt wird, wird der übriggebliebene Zwischenraum entfernt (d. h. die darunter befindlichen Gegenstände werden nach oben bewegt). Die Gegenstände können jedoch nicht dicht aufeinander liegen. Wenn demzufolge ein Zeilengegenstand zwischen zwei andere Gegenstände bewegt wird, wird ein Zwischenraum für den neuen Gegenstand geschaffen. Listenvorgänge versuchen den gegenwärtigen Zeilenabstand örtlich intakt zu halten. Der Zeilenabstand kann jedoch explizit geöffnet oder geschlossen werden. Auch kann ein Gegenstand horizontal verschoben werden, um angemessene Ausrichtung mit anderen Gegenständen zu erreichen.
  • B. Vorgänge und Handzeichen
  • Wie vorstehend diskutiert, wird ein Handzeichen "[" als strukturiertes Handzeichen gewählt und so gezeichnet, dass ein Gegenstand oder eine Zeile von Gegenständen ausgewählt wird. Die Höhe des "[" definiert, wieviel als zum Gegenstand gehörig angesehen wird. Man bemerke jedoch, dass mehrere Zeilen innerhalb eines "Handzeichens" eingeschlossen werden können. Fig. 6(a) und 6(b) stellen eine Liste von Zeitungsnamen dar. In Fig. 6(a) ist eine linke eckige Klammer links von "USA Today" gesetzt, um den gesamten Gegenstand auszuwählen. Fig. 6(b) zeigt die rechtwinklige Auswahlumschließung 150 um den ganzen Gegenstand. Um die Auswahl zu dehnen (oder zusammenzuziehen), um Zeilengegenstände einzuschließen (oder auszuschließen), ist ein Handzeichen 152 von "L-Form" 152 gezogen, welches bezeichnet, wie die Auswahlfigur umgeformt werden sollte. So wird die rechtwinklige Auswahl so umgeformt, dass sie das L- förmige Handzeichen mit einschließt, und deswegen auch "USA Today" und "Los Angeles Times". Dieses Handzeichen 152 ist in Fig. 6(c) gezeigt und die sich ergebende gedehnte Auswahlumschließung 150 in Fig. 6(d).
  • Wenn ein Benutzer den ausgewählten Gegenstand zu beseitigen wünscht, kann er/sie einen gekreuzten Engkringel (pigtail = Schweineschwänzchen) als Handzeichen irgendwo im Inneren der Auswahlumschließung zeichnen. Fig. 6(e) zeigt dieses Handzeichen 154. Sobald das Beseitigungs-Handzeichen ausgegeben ist, wird der Gegenstand beseitigt und die verbleibenden zwei Gegenstände werden näher zueinander bewegt, um den leeren Zwischenraum zwischen solchen Gegenständen zu entfernen. Fig. 6(1) zeigt die verbleibenden zwei Gegenstände in der Liste.
  • Um den ausgewählten Gegenstand an eine andere Position in der Liste zu bewegen, kann ein Benutzer ein Linien-Handzeichen 156 von der Auswahlumschließung 150 zu einer Zielposition, z. B. direkt unterhalb des Gegenstandes "Los Angeles Times" in Fig. 6(g) zeichnen. Die sich ergebende Bewegung ist in Fig. 6(h) gezeigt. Alternativ kann der Benutzer den ausgewählten Gegenstand durch Zeichnen eines "> "-Handzeichens an der (nicht dargestellten) Zielposition zu dieser bewegen.
  • Um den ausgewählten Gegenstand horizontal zu verschieben, kann ein Benutzer ein horizontales Linien-Handzeichen zeichnen. Um den ausgewählten Gegenstand an eine andere Position in der Liste zu kopieren, kann der Benutzer ein "< "-Handzeichen an der Zielposition zeichnen. Um den ausgewählten Gegenstand zu schrumpfen/zu dehnen, kann der Benutzer ein nach innen bzw. außen verlaufendes Spiral-Handzeichen 88 zeichnen, wie in Fig. 5(b) gezeigt.
  • Um rasch Raum für einen neuen Zeilengegenstand zu schaffen, wenn keine Auswahl stattfindet, kann ein Keil "> "-Handzeichen in den Raum zwischen den Zeilen eingezeichnet werden. Ein Beispiel dieses Handzeichens ist in Fig. 6(e) gezeigt. Hier ist ein Keil 158 zwischen "USA Today" und "Los Angeles Times" eingesetzt. Fig. 6(j) zeigt den zwischen diesen Gegenständen eingesetzten Zeilenzwischenraum.
  • Um ein ausgewähltes Objekt zu ziehen, tastet der Benutzer das tatsächliche Zentrum des Auswahlbereiches an. Sobald der Benutzer das Zentrum antastet, "hängt" sich die = Auswahl an den Stift und der Stift zieht das Bild der Auswahl bis zum Anheben des Stiftes mit, zu welchem Zeitpunkt der Raum je nachdem geöffnet oder geschlossen wird und der ausgewählte Gegenstand sich in seine richtige Position bewegt. Ein Beispiel dieses Ziehvorganges ist in Fig. 6(k), 6(l) und 6(m) gezeigt.
  • In Fig. 6(k) ist "Wall Street Journal" ausgewählt. Fig. 6(l) zeigt, dass nach dem Ziehvorgang dieser Gegenstand zwischen "USA Today" und "Los Angeles Times" eingesetzt und so positioniert ist, dass er diese beiden Gegenstände überdeckt. Fig. 6(m) zeigt die ausgestreckte Liste in der Reihenfolge "USA Today", "Wall Street Journal" und "Los Angeles Times". Es ist wichtig zu bemerken, dass der Pfeil 86 in Fig. 5(b) die Bewegung des Ziehvorgangs repräsentiert. Es wird jedoch für diesen Vorgang kein Pfeil an dem Schirm gezogen. Er ist in Fig. 5(b) nur als ein für den Benutzer verfügbarer Vorgang gezeigt. ·
  • Es ist wichtig zu bemerken, dass andere Benutzereinwirkungen benutzt werden können, um Vorgänge anzuwenden, die nicht von der strukturierten Natur der Auswahl abhängen. Zum Beispiel wird, um die Striche in rot zu ändern, der Rotfärbeknopf angetastet.
  • Handgeschriebene Umrisse A. Strukturelles Modell
  • Eine Umrissstruktur ist eine Erweiterung der einfachen Listenstruktur. Zeilengegenstände haben Indentationspegel (Grobausrichtpegel), welche die hierarchische Struktur der Gegenstände bestimmen. Es gibt dabei keine festgelegten "Tabulator"- Positionen, der Indendationspegel eines Gegenstandes wird dadurch bestimmt, ob die horizontale Position des am weitesten linken Striches "in der Nähe von" oder "bedeutsam" unterschiedlich von der Horizontalposition des am weitesten linken Striches des Gegenstandes darüber ist. Es gibt einen Ausrichtvorgang, der die Gegenstände verschiebt, d. h. die Kante des Striches am nächsten nach links ausrichtet, entweder exakt in die gleiche Lage oder bedeutsam unterschiedlich von den jeweils vorhergehenden Gegenständen. Dieser Vorgang zeigt, wie das System die Indendationsstruktur deutet.
  • Der Benutzer Kann die Gegenstände zum Einstellen der Indendationspegel verschieben. Ein Umriss-Teilbaum ist die Kombination eines Gegenstandes und aller Gegenstände unter ihm, die höhere Indendationspegel haben. Teilbäume können zum Zusammenfallen gebracht werden, um die höhere Pegelstruktur eines Umrisses zu zeigen. Zusammengefallene Teilbäume sind physikalisch geschrumpft (nur in vertikaler Richtung), sodass sie als dünne physikalische Linien erscheinen, die Behälterobjekte genannt werden, unterhalb der obersten Gegenstände in den Teilbäumen. Behälterobjekte körnen zurück zu ihrer Originalgröße gedehnt werden. Um die Anwesenheit des Behälterobjektes anzuzeigen, wird ein Ikon benutzt, wie eine verdickte Linie oder dergleichen. Es ist wichtig, zu bemerken, dass nur ein richtiger Teilbaum oder eine Sequenz von richtigen Teilbäumen zum Zusammenfall gebracht werden kann. Wenn eine Auswahl kein richtiger Teilbaum oder keine Folge von richtigen Teilbäumen ist, wird sie vor dem Zusammenfall erweitert. Wenn die Auswahl ein unrichtiger Satz von Gegenständen ist, der nicht zu einem richtigen Teilbaum gedehnt werden kann, wird der Zusammenfallvorgang abgebrochen. Das Behälterobjekt wird wie ein Listengegenstand behandelt, d. h. es kann als ein Block bewegt und nach Wunsch auf andere Weise manipuliert werden.
  • B. Vorgänge und Handzeichen
  • Um die Zeilengegenstände in der Auswahl horizontal auszurichten, kann der Benutzer ein vertikales Handzeichen (eine Linie) an der linken Kante der Auswahl ziehen. Ein Beispiel dafür ist in Fig. 7(a) gezeigt. Man bemerke, dass die erste Pegelüberschrift "Zeitungen" ist, und "New York" die Kopfzeile eines Teilbaumes. Ein vertikales Linien- Handzeichen 160 wird an der linken Kante der ausgewählten Gegenstände gezogen, beginnend mit "New York". Das System vergleicht die Indendation aller Zeilengegenstände in der Auswahl und stellt die Horizontalposition der Zeilengegenstände so ein, dass Zeilen, die um etwa gleiche Stücke eingerückt sind, tatsächlich genau gleich eingerückt werden. Der sich ergebende Umriss ist in Fig. 7(b) gezeigt.
  • Um einen Pegel des ausgewählte Teilbaums zusammenfallen zu lassen (d. h. nur den untersten Pegel in dem Teilbaum zusammenfallen zu lassen) wählt man aus dem Menü den Gegenstand "Zusammenfallen eines Pegels". Fig. 7(c) stellt die ausgewählten Gegenstände in dem Umriss dar, bevor der unterste Pegel im Teilbaum zusammenfällt, und Fig. 7(d) zeigt den Umriss nach dem Zusammenfall dieses Pegels. Man bemerke, dass, sobald der niedrigste Pegel des Teilbaumes zusammengefallen ist, sich die anderen nicht gewählten Gegenstände, d. h. "Rundfunksender" nach oben bewegt haben, um den restlichen von dem Teilbaum übriggelassenen Raum zu schließen.
  • Um alle Pegel in dem ausgewählten Teilbaum zusammenfallen zu lassen (d. h. nur den obersten Pegel übrig zu lassen) kann der Benutzer den Menü-Gegenstand "alle Pegel zusammenfallen" wählen. Um die zusammengefallenen Gegenstände in der Auswahl um einen Pegel zu dehnen (d. h. nur den höchsten Pegel der zusammengefallenen Gegenstände zu dehnen) kann der Benutzer den Gegenstand "Dehnen eines Pegels" im Menü wählen.
  • Um die zusammengefallenen Gegenstände in der Auswahl vollständig zu dehnen, kann der Menü-Gegenstarid "alle Pegel dehnen" gewählt werden. Das ist in Fig. 7(e) und 7(f) gezeigt.
  • Handgeschriebener Text A. Strukturelles Modell
  • Handgeschriebener "Text" ist ein begrenztes Modell für Text innerhalb des Kontextes von Listen und Umrissen. Striche handschriftlicher Art werden zuerst als in Zeilengegenständen gruppiert angenommen und dann innerhalb der Zeilengegenstände als Worte, die durch Wortzwischenräume getrennt sind. Der Ausdruck "Wort", wie er in diesem Dokument benutzt wird, bezieht sich nicht auf ein Wort einer normalen Sprache, sondern nur auf eine horizontale Anhäufung von Objekten, die durch Leerräume getrennt sind. Eine Folge von mit Schreibmaschine gedruckten Zeichen, die durch Zwischenräume begrenzt wird, ist ein spezieller Fall eines solchen "Wortes". Worte und Wortzwischenräume in einer Zeile werden in der horizontalen Dimension in analoger Weise zu der von Zeilengegenständen und. Zeilenzwischenräumen in der vertikalen Dimension behandelt. Wortzwischenräume werden geschlossen, wenn Worte beseitigt werden, und werden geöffnet, um Platz für Einsetzworte zu schaffen. Worte sind in einer einzelnen Zeile enthalten und sind durch den Benutzer explizit zwischen Zeilen zu be wegen. Aneinanderstoßende Worte in der gleichen Zeile können durch linke und rechte Eckigklammer-Handzeichen oder durch ein Unterstreichungs-Handzeichen gewählt werden. Wenn Worte bewegt werden, unterscheidet das System, ob ein Wortzwischenraum oder ein Zeilenzwischenraum zu schaffen ist, d. h. geöffnet werden muss, um diese aufzunehmen. Ein Zeilengegenstand wird auch auf diese Weise behandelt. Das bedeutet, ein Zeilengegenstand hat eben zufällig alle Worte einer Zeile enthalten.
  • B. Vorgänge und Handzeichen
  • Um die Worte an einer Zeile auszuwählen, kann ein Benutzer die Worte unterstreichen oder linke und rechte eckige Klammern "[" und "]" zeichnen. (Es ist nur eine eckige Klammer nötig, wenn die auszuwählenden Worte sich entweder bis zum linken oder bis zum rechten Ende der Zeile erstrecken.) Ein Beispiel dafür ist in Fig. 8(a) und, 8(b) gezeigt. Das Wort "Angeles" ist zur Auswahl geklammert. Wie in Fig. 8(c) gezeigt, kann ein Benutzer ein Kringelschleifen-Handzeichen 162 in die Umschließung 150 einzeichnen, um den gewählten Gegenstand zu beseitigen. Das Ergebnis ist in Fig. 8(d) gezeigt.
  • Um die ausgewählten Worte zu einer anderen Stelle an der gegenwärtigen Zeile oder zu einem Platz in einer anderen Zeile zu bewegen, kann ein Benutzer ein Zeilen- Handzeichen von der Auswahl zu einem Wortraum ziehen, oder er kann ein Caret-Handzeichen "A" in einem Wortzwischenraum zeichnen. Ein Beispiel dafür ist in Fig. 8(e) und 8(f) gezeigt. Man bemerke, dass die Auswahl "Angeles" und das Zeilen-Handzeichen 164 sich von der Auswahlumschließung 80 zu der gewünschten Stelle zwischen "USA" und "Today" erstreckt. Das System schafft Raum an der gewünschten Stelle zum Einpassen der ausgewählten Information. Um die ausgewählten Worte zu einer neuen Zeile zu bewegen, kann der Benutzer ein Linien-Handzeichen zu einem Zeilenzwischenraum ziehen oder ein "> "-Handzeichen in einen Zeilenzwischenraum machen. Das ist in Fig. 8(g) gezeigt. Das Linien-Handzeichen 166 erstreckt sich von der gewählten Information, d. h. "Angeles", zu einem Platz zwischen den ersten zwei Zeilen des Textes. Das System schafft einen Zwischenraum zwischen diesen Textzeilen und bewegt die ausgewählte Information. Fig. 8(h) zeigt das Ergebnis dieser Vorgänge.
  • Um die ausgewählten Worte in eine neue Zeile zu kopieren, kann ein "< "-Handzeichen in einen Zeilenzwischenraum gezeichnet werden. Um rasch einen Raum zum Einsetzen von Text zu öffnen, kann ein Caret-Handzeichen eingesetzt werden. Das Caret-Handzeichen 168 ist in Fig. 8(i) gezeigt. Man bemerke in Fig. 8(j), dass ein Raum zwischen "USA" und "Today" geschaffen wurde. Das System erzeugt eine feste Raumgröße, die als eine Funktion der Größe des benachbarten Textes bestimmt wird.
  • Es ist wichtig zu bemerken, dass normale Vorgänge bei den ausgewählten Worten angewendet werden können. Zum Beispiel muss man, um die Striche in rot zu färben, den Rotfärbeknopf berühren.
  • Handgeschriebene Tabellen A. Strukturelles Modell
  • Eine Tabelle ist eine zweidimensionale Struktur, die aus Zeilen und Spalten besteht. Eine Zeile ist exakt ein Zeilengegenstand aus dem Listenmodell. Eine Spalte ist das gleiche wie eine Zeile, jedoch mit Handzeichen und Vorgängen, die von der horizontalen in die vertikale Dimension umgesetzt sind. Zum Beispiel wählt eine obere eckige Klammer eine Spalte genau so wie eine linke eckige Klammer eine Zeile auswählt; Spalten können horizontal bewegt werden, gerade wie Zeilen vertikal bewegt werden können. Ein Spaltenraum ist der vertikale Raum zwischen Spalten. Es gibt also auch vertikalen Text (wie z. B. japanische oder chinesische Schrift), der mit einer oberen und einer unteren eckigen Klammer gewählt wird. Das Material in einer Spalte öffnet und schließt vertikal, wenn vertikaler Text bewegt wird. Zusätzlich zu reinen Zeilen- oder Spaltenvorgängen kann ein Benutzer auch einen Block von Material wählen - eine rechtwinklige Materialauswahl mit mehr als einer Zeile oder Spalte, wiederum mit Benutzung von linken und rechten bzw. oberen und unteren eckigen Klammern. Das ergibt eine bequeme Weise, einfache Befehle (z. B. Rotfärben) auf größere Anteile jeder Tabelle anzuwenden. Jedoch wird keine spezielle Tabellendeutung auf eine Blockauswahl angewendet.
  • B. Vorgänge und Handzeichen
  • Um eine Spalte oder Spalten zu wählen, kann ein oberes Eckklammern-Handzeichen 172 gezeichnet werden, wie in Fig. 9(a) gezeigt. Fig. 9(b) zeigt das Ergebnis des in Reaktion auf dieses Handzeichen unternommenen Schrittes. Um eine ausgewählte Spalte zu beseitigen, kann auch wieder ein Kringel-(pigtail)-Handzeichen gezeichnet werden. Um eine ausgewählte Spalte zu bewegen, kann ein Linien-Handzeichen zu dem neuen Platz gezeichnet werden, wie in Fig. 9(c) gezeigt (oder ein "^"-Handzeichen). In Fig. 9(d) sei bemerkt, dass die gesamte mittlere Spalte nach rechts hinter die mit "3" beginnende Spalte bewegt wird. Um eine ausgewählte Spalte zu kopieren, kann ein "< "- Handzeichen am neuen Ort angebracht werden.
  • Um einen vertikalen Block auszuwählen, können obere und untere eckige Klammern gezeichnet werden, um die gewünschte Information zu umschließen. Das ist in Fig. 9(e) und 9(f) gezeigt. Um einen ausgewählten Block (vertikal oder horizontal) zu beseitigen, kann ein Kringel-(pigtail)-Handzeichen von einer Auswahl-Einschließung gezeichnet werden. Das schließt automatisch den Raum zusammen (vertikal oder horizontal). Um einen ausgewählten Block (vertikal oder horizontal) zu bewegen, kann ein Linien-Handzeichen von einer Auswahl-Umschließung zu dem Zielort gezeichnet werden. Ein Beispiel eines Linien-Handzeichens ist in Fig. 9(g) gezeigt, und der entsprechende bewegte Vertikalblock ist in Fig. 9(h) gezeigt. Um einen Block zu kopieren, kann ein "< "-Handzeichen an den Zielort gezeichnet werden.
  • Schließlich können die normalen Vorgänge an der ausgewählten Zeile, Spalte oder den Block in der normalen Weise angewendet werden. Beispielsweise berührt man den Rotfärbeknopf, um die Striche in einem Block rot werden zu lassen.
  • Kantenlinien
  • Um den Skopus irgendeiner Struktur räumlich zu begrenzen, kann der Benutzer einfach lange Striche ziehen, die dann als Kantenlinien dienen. Die Funktion von Kanten ist, das räumliche Ausmaß struktureller Auswahlen und die Wirkungen struktureller Vorgänge zu begrenzen. Das System betrachtet jeden langen Strich, auf den es beim Deuten eines Handzeichens "stößt", als Kantenlinie. Das Ausmaß der ausgewählten Struktur wird automatisch an einer Kante angehalten. Wenn beispielsweise ein Gegenstand in einer Liste durch eine eckige Klammer gewählt wird, wie in Fig. 10(a) gezeigt, werden nur die Striche bis zur Kante 174 in die Auswahl in Fig. 10(b) hineingenommen. Jeder strukturelle Vorgang, der eine Verletzung einer Kante verursachen würde, wird abgebrochen. Zum Beispiel wird der Raumöffnungsvorgang (mit Benutzung eines Carets), der zwischen "USA Today" und "Los Angeles Times" in Fig. 10(c) gezeigt ist, abgebrochen, weil der Raum die letzte Zeile der Liste, d. h. "Los Angeles Times" durch die untere Begrenzung gehen lassen würde.
  • Jedoch kann ein Vorgang auch über eine Kante hinaus stattfinden. Zum Beispiel kann, wie in Fig. 10(d) gezeigt, ein Gegenstand (USA Today) in einer mehrspaltigen Liste (mit Kanten zwischen den Spalten) von einer Spalte zu einer anderen bewegt werden. Man bemerke, dass in Fig. 10(e) ein Raum in der Spalte an der anderen Seite der Begrenzung zwischen "Zeitung" und "Radio" für den Gegenstand "USA Today" geschaffen wurde.
  • Um das Ausmaß einer Auswahl sich über eine Kante hinweg erstrecken zu lassen, kann ein winkelförmiges Handzeichen oder ein Eckklammer-Handzeichen gezeichnet werden, um zu zeigen, wohin die Auswahl zu erstrecken ist. Das ist in Fig. 10(f) und 10(g) gezeigt. Man beachte, dass die ursprüngliche Auswahlumschließung so erweitert wird, dass sie Information über zwei Grenzkanten hinweg enthält. Wenn eine Kantenlinie auf diese Weise durchdrungen wird, wird sie nicht länger als Kante angesehen, sondern als ein Umgebungsobiekt. Umgebungsobjekte werden bei allen Vorgängen ignoriert. Beispielsweise werden Umgebungslinien zwischen Spalten einer Tabelle beim Bewegen einer Zeile nicht beachtet. In Fig. 10(h) und 10(i) instruiert ein Linien-Handzeichen 176 das System, eine Zeile zu bewegen, ohne die beiden Kanten zu beeinflussen. Die Umgebungsweise gilt nur während der Dauer der gegenwärtigen Auswahl.
  • Handgeschriebene Diagramme A. Strukturelles Modell
  • Ein Diagramm ist als eine Knotenverbindungs-Struktur aufgebaut. Ein Knoten ist eine Gruppe grafischer Objekte, die als eine Einheit zu betrachten ist, und eine Verbindung ist eine Linie, die zwischen zwei Knoten verläuft (dliese verbindet). Die Verbindungen und Knoten bilden eine mathematische (topologische) Struktur, die abstrakter als die geometrische Struktur ist. Das bedeutet, die Topologie ist nicht damit befasst, wo Knoten liegen oder welche Form die Verbindungen haben, sonder nur damit, wie die Verteilung der Verbindungen zwischen den Knoten ist. Der Benutzer kann die Topologie durch Editieren der Verbindungen zu ändern wünschen, doch oft wünscht der Benutzer die Geometrie des Diagramms zu ändern (sie klarer oder gefälliger zu machen), während die Topologie aufrecht erhalten bleibt.
  • Wenn der Benutzer das Bewegen eines Knotens wünscht, ohne die Topologie zu stören, müssen die Verbindungen von dem Knoten zu anderen Knoten verzerrt (umgeformt) werden, um die Verbindungsstruktur aufrecht zu erhalten. Das Verzerren eines Verbindungsobjekts zieht eine lineare geometrische Transformation der Form der Verbindung mit sich, die deren charakteristische Gestalt bewahrt, während sie "gestreckt" wird, um sich an die neuen Positionen der Knoten anzupassen, die sie verbindet. Weiter wird der Endpunkt der Verbindung relativ zu ihrem Knoten geändert, falls die Bewegung das erfordert. Beispielsweise zeigt Fig. 11 (a) ein einfaches Diagramm mit drei Knoten (A, B und C) und zwei Verbindungen (A-B und A-C). Fig. 11 (b) zeigt das Diagramm geometrisch geändert - die Positionen der Knoten B und C sind vertauscht und ein Knoten B ist etwas abgesenkt - aber mit erhaltener Topologie: A ist weiterhin mit B und mit C verbunden. Man bemerke, dass die charakteristischen Formen der Verbindungen A-B und A-C erhalten geblieben sind. Man bemerke auch, dass die Verbindung A-C in Fig. 11 (a) von der rechten Seite des Knotens und in Fig. 11(b) von der linken Seite des Knotens A austritt.
  • B. Vorgänge und Handzeichen
  • Der Benutzer kann Objekte an der Anzeige als einen Knoten auswählen, indem er ein rechteckförmiges Handzeichen macht. Das System erkennt diese Form und ersetzt das gezeichnete Handzeichen durch ein perfekt geometrisches Rechteck, wie es bei allen anderen strukturierten Auswahlen geschieht. Eine Knotenauswahl hat ein zusätzliches Merkmal, das andere strukturierte Auswahlen nicht aufweisen. Eine Knotenauswahl wählt alle Objekte, die sie umschließt, als Knoten, und alle Linien, die aus der Auswahl austreten, werden als Verbindungen ausgewählt. Eine ausgewählte Verbindung wird durch einen kleinen Kreis an dem Auswahlrechteck dort angezeichnet, wo die Verbindung es überquert. Der Benutzer kann abändern, ob eine kreuzende Linie als Verbindung anzusehen ist oder nicht. Zum Beispiel zeigt Fig. 11(c) den Knoten A gewählt und eine Linie A-B als Verbindung gewählt, jedoch die Linie A-C nicht als VerbindJng gewählt. Fig. 11 (d) zeigt Handzeichen zum Ändern der Verbindungen. Das Strich-Handzeichen durch den kleinen Kreis nimmt den Verbindungsstatus von der Linie A-B weg, und das Kleinkreis-Handzeichen beim Kreuzen der Linie A-C mit dem Auswahlrechteck ändert die Linie A-C so, dass sie als eine Verbindung angesehen wird. Das Ergebnis dieser zwei Handzeichen ist in Fig. 11 (e) gezeigt. Wenn der Knoten A nach rechts bewegt wird, wird die Verbindung A-C so verzerrt, das die Verbindung aufrecht erhalten bleibt, während die Linie A-B ungeändert bleibt (da sie nicht als Verbindung betrachtet wird), und die Verbindung zwischen A und B geht verloren.
  • Es gibt auch einen Vorgang (der von einem Menü verfügbar ist), der Gruppierung genannt wird. Wenn ein Satz von Objekten ausgewählt und gruppiert wird, werden alle Objekte in der Auswahl als ein einziges Objekt, ein Gruppenobjekt betrachtet. Der Vorteil für einen Benutzer eines Gruppenobjekts besteht darin, dass es einfach durch Berühren desselben gewählt werden kann, d. h. durch ein Punkt-Handzeichen. Das erleichtert es für den Benutzer, Gruppenobjekte zu manipulieren. Wenn die Knoten in einem Diagramm gruppiert sind (jedoch nicht die Verbindungen), kann das Diagramm leicht unter Beibehaltung der Topologie anders angeordnet werden. Weiter kann, da das System weiß, welche Objekte die Verbindungen bilden, es sicherstellen, dass die Verbindungen mit der richtigen Ausrichtung von den Knoten austreten.
  • Ein weitere Ausdehnung dieser Technik besteht darin, dass die Verbindungs- Verzerrungsfähigkeit dazu benutzt werden kann, geometrische Transformationen an Strichobjekten durchzuführen, die nicht reale Verbindungen sind. Zum Beispiel zeigt Fig. 11 (g) drei Zeichenobjekte und ein Strichobjekt um diese. Das Zeichenobjekt C wird als ein Knoten ausgewählt. Weil das umschließende Strichobjekt das umschließende Rechteck an zwei Stellen überschneidet, wird es als eine "Verbindung" angesehen. Das Linen- Handzeichen bezeichnet, dass der Knoten (das 0) nach rechts zu bewegen ist. Wenn es bewegt wird, wird das Strichobjekt so verzerrt, dass es C folgt, wie in Fig. 11(h) gezeigt. Diese Erweiterung illustriert wiederum die Prinzipien impliziter Strukturierung - dass die Struktur nicht in den grafischen Daten "inhärent" ist, sondern dass vielmehr Struktur das ist, was der Benutzer in den Daten sieht und dem System mittels Handzeichen zu finden "anweist".
  • Mischstruktur und Freiform-Befehl
  • Bei einer Anzeige, die mehrfache Datenbereiche benutzt, begegnet man bei der Behandlung von Kreuzanwendung der Editiervorgänge gewissen Problemen. Fig. 12 zeigt einen Schirm mit zwei Listen, die durch eine vertikale Linie getrennt sind, welche das System als eine Grenzkante deutet. So können die Listen an jeder Seite unabhängig voneinandereditiert werden (z. B. kann Gail an die Spitze der Liste bewegt werden). Ein Vorgang kann auch beide Listen beeinflussen. Fig. 12 zeigt, dass Jane gewählt wird und dass ein "> "-Handzeichen dem System Anweisung gibt, Jane auf den Platz zwischen Bob und Tom zu bewegen - Gail bewegt sich nach oben und Tom und Bill bewegen sich nach unten, um diese Bewegung aufzunehmen. Man bemerke, dass an jeder Seite der Kante eine Struktur besteht und dass die Bewegung vollständigt strukturiert ist.
  • Nun betrachte man den Fall in Fig. 13, wo eine Liste an der linken Seite und ein teilweiser Bürobodenplan an der rechten Seite vorhanden ist. Der Bodenplan ist ein Freiform-Diagramm und keine Struktur. Angenommen, wir wollen Jane in das Büro von Tom bewegen. Wenn die gleichen Handzeichen wie in Fig. 12 benutzt werden, wird das System nicht wissen, wie das Diagramm richtig zu ändern ist. Es würde versuchen, es als eine Liste zu deuten - im besten Fall würde es Tom in Bills Büro und Bill aus einem Büro herausbewegen; im schlimmsten Fall würde es Wände in dem Diagramm versetzen und damit eine unmögliche Situation schaffen; in diesem Falle wird sich das System weigern, den Vorgang durchzuführen, weil das Diagramm nicht als eine Liste kopiert werden kann. So besteht das Problem, wie das Diagramm als Freiform und gleichzeitig die Liste als Liste zu behandeln ist.
  • Die Lösung ist das Zulassen von gemischten Vorgängen. Weil sich das Auswahl- Handzeichen von dem Bewegungs-Handzeichen unterscheidet, kann jedes Handzeichen bezeichnen, wie das Material an jedem Ende der Bewegung zu behandeln ist. Die Auswahl kann strukturiert (Eckklammern und. L-Formen) oder freiförmig behandelt (Schleifen) werden und die Bewegung kann strukturiert (> oder A) oder freiförmig (V) behandelt werden. Dies kann in allen möglichen Kombinationen gemischt werden.
  • So wird in Fig. 13 zuerst Tom mit einem Schleifen-Handzeichen gewählt, dann strukturell vor Jane gesetzt (> ). Weil Tom freiförmig ausgewählt ist, wird in dem Diagramm nichts geändert, wenn er bewegt wird. Weil er strukturell in die Liste eingesetzt wird, bewegen Jane und Gail sich nach unten. Siehe Fig. 14. Nun wählen wir Jane als strukturierten Gegenstand und bezeichnen eine Freiform-Bewegung (V) im Diagramm.
  • Weil Jane eine strukturierte Auswahl ist, wird Gail sich nach oben bewegen. Weit es eine Freiform-Bewegung ist, wird sich nichts im Diagramm bewegen, wenn Jane in das leere Büro bewegt wird.
  • Tabellenausrichtung
  • Wie vorstehend diskutiert würde, "glättet" ein Ausrichtvorgang die Indentationspegel einer Liste "aus" (und kann auch zum Aufräumen einfacher Listen benutzt werden). Ein gleichartiger Vorgang wird bei Tabellen benutzt. Das Problem besteht darin, dass Tabellen oft schlecht ausgerichtet sind. Sie werden von den Leuten oft spaltenweise erzeugt Es werden Gegenstände aufgeschrieben, indem man eine Spalte hinuntergeht und dann eine andere hinuntergeht usw. Das Ergebnis ist, dass die Gegenstände in den Zeilen schlecht ausgerichtet sind, und so können die Zeilen nicht gewählt und bewegt werden. Die Lösung ist, einen horizontalen Ausrichtvorgang zu schaffen. Man wählt die gesamte Tabelle aus und fertigt ein horizontales Handzeichen an der Oberseite der Auswahl an. Das System analysiert die Auswahl als eine Tabelle und bewegt die Gegenstände aufeinanderfolgend in jeder Spalte in horizontale Ausrichtung mit Gegenständen in der linken Spalte. Das Ergebnis ist eine aufgeräumtere Tabelle, die zeilenweise manipulliert werden kann. Fig. 15 zeigt eine Tabelle, die durch einen Benutzer erzeugt wurde, und Fig. 16 zeigt dieselbe, nachdem das System sie ausgerichtet hat. Die Ausrichtung kann eine Abstandshaltung enthalten und sowohl vertikale wie horizontale Ausrichtung von Zeilen und Spalten.
  • Gedruckte Zeichen als Freiform-Text
  • Dieses System erlaubt das Eingeben von Zeichen mittels der Tastatur. Jedes Zeichen ist ein Freiform-Grafikobjekt, gleichartig zu einem Strich, d. h. es nimmt an der Anzeige eine xy-Position ein. Wie bei Strichen werden diese als Freiform behandelt oder strukturiert, in Abhängigkeit von den benutzten Handzeichen. Zeichenobjekte und Strichobjekte können gemischt werden, d. h. der Benutzer kann beispielsweise in eine Zeile aus maschinengeschriebenem Text handschriftlich einen griechischen Buchstaben einsetzen.
  • Zeichenobjekte können als Freiform (unstrukturiert) behandelt werden, indem sie mit einem Schleifenauswahl-Handzeichen gewählt werden. Wenn auf diese Weise gewählte Zeichenobjekte mit dem üblichen Kringel-Handzeichen (pigtail) beseitigt werden, werden die Zeichen-Objekte (und solche anderer Arten) nicht um das beseitigte Zeichenobjekt bewegt (d. h. genau das gleiche Verhalten wie bei Strichobjekten). In gleicher Weise können die Zeichenobjekte irgendwohin bewegt werden, sogar so, dass sie auf anderen Zeichen- oder Strichobjekten aufsitzen. Siehe Fig. 17(a) und 17(b).
  • Zeichenobjekte können durch Auswählen derselben mit einem der Strukturauswahl-Handzeichen(z. B. eckigen Klammern und L-Handzeichen) als strukturiert behandelt werden. Wenn Zeichenobjekte auf diese Weise ausgewählt sind, können sie gerade wie strukturierte Vorgänge an Strichobjekten (d. h. zu Listen, Umrissen, Texten und Tabellen) bearbeitet werden. Zum Beispiel kann ein Satz von horizontal aufeinander bezogenen Zeichenobjekten mit Klammer-Handzeichen gewählt und dann mit einem Linien- Handzeichen zu einer anderen Stelle bewegt werden; die Zeichenobjekte werden sich entsprechend zusammenschließen und werden Räume öffnen. Siehe Fig. 17(c) und Fig. 17(d). Wenn jedoch Zeichenobjekte gewählt werden, empfangen sie eine spezielle Behandlung darin; dass sie in Ausrichtung mit nahe gelegenen Zeichenobjekten "eingeschnappt" werden.
  • Wenn z. B. ein Benutzer die Zeichen ABC in die Nähe von Zeichen DEF bewegt, wird ABC mit DEF in der angemessensten Weise ausgerichtet eingeschnappt, so dass die Grundlinien miteinander ausgerichtet sind und DEF entweder rechts nach ABC auftritt oder genau mit einem normalen Zeichenabstand zwischen C und D.
  • Zusätzliche Vorgänge sind vorgesehen, um Eintragen und Editieren eines Textes mit einer Tastatur zuzulassen. Zuerst braucht der Benutzer einen Weg, um dem System mitzuteilen, wo die eingegebenen Zeichenobjekte an der Anzeige platziert werden sollen. So besteht hier ein spezielles Objekt, der "Einsetzpunkt" genannt wird (ein kleines caretförmiges Objekt). Der Benutzer kann den Einsetzpunkt entweder durch Herstellen eines Punkt-Handzeichens mit einem Stift oder durch Zeigen und Drücken einer Maustaste positionieren oder umsetzen. Immer wenn eine ein Zeichen erzeugende Taste gedrückt wird, wird ein Zeichenobjekt rechts von dem Einsetzpunkt eingesetzt, und der Einsetzpunkt wird von dem eingesetzten Objekt nach rechts bewegt. So erzeugt eine Reihe von Tastendrucken eine Folge von Zeichenobjekten von links nach rechts.
  • Wenn "spezielle" Tasten (z. B. Leertaste, Tabulator, Wagenrückholung, Rücksclhritttaste) gedrückt werden, sind spezielle Betätigungen vorgesehen. Wenn die Leertaste gedrückt wird, wird der Einsetzpunkt um einen Zeichenraum nach rechts bewegt. Man bemerke dabei, dass kein "Abstandszeichen" erzeugt wird; die einzige Auswirkung ist, dass der Einsetzpunkt bewegt wird. (Das Drücken der Leertaste ist vollständig äquivalent zu einer Neupositionierung des Einsetzpunktes mit der Maus.) Falls unmittelbar rechts vom Einsetzpunkt Zeichenobjekte vorhanden sind, werden sie nach rechts geschoben, um für das neue Zeichenobjekt Raum zu schaffen. Ein Drücken der Wagenrückholtaste lässt den Einsetzpunkt sich nach links vor dem am weitesten links liegenden Zeichen in der gegenwärtigen Zeichenzeile bewegen und dann eine Zeile nach unten, so dass das nächste Zeichen auf die nächste Textzeile kommt (falls Zeichen unmittelbar darunter vorhanden sind, werden sie um eine Zeile weiter geschoben). Eine Tabulatortaste lässt den Einsetzpunkt nach rechts bewegen zur Ausrichtung mit irgendwelchen Zeichenobjekten weiter oben, mit Abstand zu ihrem linken Nachbarn; falls keine Ausrichtung gefunden werden kann, wird der Einsetzpunkt in eine Original-Tabellenposition bewegt. Wenn der Einsetzpunkt in eine Kante oder zum rechten Ende der Anzeige kommt, wird er (zusammen mit Zeichenobjekten unmittelbar links von ihnen) um eine Zeile nach unten und nach links bewegt, d. h. es tritt das normale "Zeichenumschalt"- Verhalten für Text ein. In gleicher Weise besitzen andere Spezialtasten (z. B. Rücktaste, Zeilenvorschub) entsprechend definierte Verhaltensweisen.
  • Diese Behandlung von Zeichen erzeugt die Fähigkeit und das Verhalten, das normalerweise bei einem einfachen Textprogamm erwartet wird. Man bemerke jedoch, dass die Zeichenobjekte vollständig freiförmig sind, ohne Bezug darauf, wie sie eingegeben wurden. Beispielsweise kann der Benutzer eine Schleifenauswahl für einen Satz von Zeichenobjekten in der Mitte eines maschinengeschriebenen Paragraphen vornehmen und diese beseitigen, so dass ein leerer Raum in der Mitte eines Absatzes zurückbleibt, wie in Fig. 17(e) und 17(f) gezeigt. Der Benutzer kann auch die Zeichenobjekte in einer strukturierten Weise behandeln, die sich von der Art und Weise, wie sie eingegeben wurden, unterscheidet. Auch wenn ein Text in normaler Weise von links nach rechts geschrieben wurde, haben die Zeichenobjekte keineswegs spezielle links nach rechts Beziehung (wie es bei der üblichen "Ketten"-Struktur von herkömmlichen Textsystemen der Fall ist); ein Teil des gleichen Textes kann als eine Spalte ausgewählt, und zwei Spalten von Zeichenobjekten können vertauscht werden. Siehe Fig. 17(g) und 17(h). Das ist eine neuartige und flexible Weise, einen Text zu behandeln, und dazu für eine Freiform-Editieranwendung angemessen.

Claims (14)

1. Grafik-Editiersystem (10) zum Ausführen eines Vorgangs an mindestens einem an einer Daten-Schnittstellen-Oberfläche (12, 14) angezeigten Informations-Abschnitt (34), welches System (10) umfasst:
auf einen Benutzer-Eingriff reagierende Mittel (18, 20) zum Erzeugen eines Linienbildes (32) an der Oberfläche (12, 14), um den Vorgang dem Informations-Abschnitt (34) zuzuordnen, wobei das Linienbild (32) einer vorgegebenen Modellstrukturierungs-Information und einem Befehlssatz zugeordnet ist;
Mittel (22, 24) zum Erkennen des Modells in dem an der Oberfläche (12, 14) angezeigten Informations-Abschnitt; und
Mittel (22, 24) zum Ausführen des Vorgangs in dem Informations-Abschnitt (34) gemäß dem Modell und den Befehlen.
2. System (10) nach Anspruch 1, bei dem: das Linienbild (32) den Informations-Abschnitt (34) zum Durchführen des Vorgangs auswählt.
3. System (10) nach Anspruch 1, das weiter umfasst: auf einen anderen Benutzer-Eingriff reagierende Mittel (18, 20) zum Erzeugen eines anderen Linienbildes, um den Informations-Abschnitt (34) zum Durchführen des Vorgangs auszuwählen.
4. System (10) nach einem der Ansprüche 1 bis 3, das weiter umfasst: Mittel (22, 24) zum Erkennen des Linienbilds (32) als eine Befehlsgeste.
5. System (10) nach einem der Ansprüche 1 bis 4, bei dem der Informations-Abschnitt (32) eine Vielzahl von Objekten umfasst; und der Vorgang an der Vielzahl von Objekten durchgeführt wird.
6. System (10) nach Anspruch 5, das weiter umfasst: Mittel (22, 24) zum Berechnen struktureller Parameter für den Vorgang als eine Funktion der Objekte.
7. System (10) nach einem der Ansprüche 1 bis 6, bei dem: das Modell in der Form einer Liste, einer Tabelle oder eines Diagramms strukturiert.
8. Verfahren zur Verwendung in einem Grafik-Editiersystem (10) zum Ausführen eines Vorgangs an mindestens einem an einer Daten-Schrittstellen-Oberfläche (12, 14) angezeigten Informations-Abschnitt (34), wobei das Verfahren (10) umfasst:
Erzeugen (54) eines Linienbildes (32) an der Oberfläche (12, 14) in Reaktion auf einen Benutzer-Eingriff, um den Vorgang dem Informations-Abschnitt (34) zuzuordnen, wobei das Linienbild (32) einer vorgegebenen Modellstrukturierungs- Information und einem Befehlssatz zugeordnet ist;
Erkennen (56) des Modells in dem an der Oberfläche (12, 14) angezeigten Informations-Abschnitt; und
Ausführen (58) des Vorgangs an dem Informations-Abschnitt (34) gemäß dem Modell und den Befehlen.
9. Verfahren nach Anspruch 8, bei dem: das Linienbild (32) den Informations-Abschnitt (34) zum Durchführen des Vorgangs auswählt.
10. Verfahren nach Anspruch 8, das weiter umfasst: Erzeugen eines anderen Linienbildes in Reaktion auf einen anderen Benutzer- Eingriff, um den Informations-Abschnitt (34) zum Durchführen des Vorgangs auszuwählen.
11. Verfahren nach einem der Ansprüche 8 bis 10, das weiter umfasst: Erkennen des Linienbildes (32) als eine Befehlsgeste.
12. Verfahren nach einem der Ansprüche 8 bis 11, bei dem: der Informations-Abschnitt (32) eine Vielzahl von Objekten umfasst; und der Vorgang an der Vielzahl von Objekten durchgeführt wird.
13. Verfahren nach Anspruch 12, das weiter umfasst: Berechnen (64) struktureller Parameter für den Vorgang als eine Funktion der Objekte.
14. . Verfahren nach einem der Ansprüche 8 bis 13, bei dem: das Modell Information in der Form einer Liste, einer Tabelle oder eines Diagramms strukturiert.
DE69428675T 1993-12-30 1994-12-22 Apparat und Verfahren zur Unterstützung einer impliziten Strukturation von Freiform-Listen, Übersichten, Texten, Tabellen und Diagrammen in einem auf Handzeichen basierenden Eingabesystem und Editiersystem Expired - Lifetime DE69428675T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US17615093A 1993-12-30 1993-12-30

Publications (2)

Publication Number Publication Date
DE69428675D1 DE69428675D1 (de) 2001-11-22
DE69428675T2 true DE69428675T2 (de) 2002-05-08

Family

ID=22643195

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69428675T Expired - Lifetime DE69428675T2 (de) 1993-12-30 1994-12-22 Apparat und Verfahren zur Unterstützung einer impliziten Strukturation von Freiform-Listen, Übersichten, Texten, Tabellen und Diagrammen in einem auf Handzeichen basierenden Eingabesystem und Editiersystem

Country Status (5)

Country Link
US (1) US6525749B1 (de)
EP (1) EP0667567B1 (de)
JP (1) JPH086707A (de)
CA (1) CA2139256C (de)
DE (1) DE69428675T2 (de)

Families Citing this family (275)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US5778401A (en) * 1995-10-31 1998-07-07 International Business Machines Corporation Insertion bar
US5861886A (en) * 1996-06-26 1999-01-19 Xerox Corporation Method and apparatus for grouping graphic objects on a computer based system having a graphical user interface
US5923323A (en) * 1996-06-26 1999-07-13 Xerox Corporation Method and apparatus for organizing and displaying long lists of data items on a work space of a computer controlled display system
US5914718A (en) * 1996-06-26 1999-06-22 Xerox Corporation Method and apparatus for organizing a work space for a computer controlled display system using borders and regions
US5784061A (en) * 1996-06-26 1998-07-21 Xerox Corporation Method and apparatus for collapsing and expanding selected regions on a work space of a computer controlled display system
US5889888A (en) 1996-12-05 1999-03-30 3Com Corporation Method and apparatus for immediate response handwriting recognition system that handles multiple character sets
KR19990011180A (ko) * 1997-07-22 1999-02-18 구자홍 화상인식을 이용한 메뉴 선택 방법
US6018346A (en) * 1998-01-12 2000-01-25 Xerox Corporation Freeform graphics system having meeting objects for supporting meeting objectives
US6377288B1 (en) 1998-01-12 2002-04-23 Xerox Corporation Domain objects having computed attribute values for use in a freeform graphics system
US6509912B1 (en) 1998-01-12 2003-01-21 Xerox Corporation Domain objects for use in a freeform graphics system
US7808479B1 (en) 2003-09-02 2010-10-05 Apple Inc. Ambidextrous mouse
US8479122B2 (en) 2004-07-30 2013-07-02 Apple Inc. Gestures for touch sensitive input devices
US7844914B2 (en) * 2004-07-30 2010-11-30 Apple Inc. Activating virtual keys of a touch-screen virtual keyboard
CA2318815C (en) * 1998-01-26 2004-08-10 Wayne Westerman Method and apparatus for integrating manual input
US7614008B2 (en) 2004-07-30 2009-11-03 Apple Inc. Operation of a computer with touch screen interface
US9292111B2 (en) * 1998-01-26 2016-03-22 Apple Inc. Gesturing with a multipoint sensing device
US20060033724A1 (en) * 2004-07-30 2006-02-16 Apple Computer, Inc. Virtual input device placement on a touch screen user interface
US9239673B2 (en) 1998-01-26 2016-01-19 Apple Inc. Gesturing with a multipoint sensing device
US7760187B2 (en) * 2004-07-30 2010-07-20 Apple Inc. Visual expander
US7663607B2 (en) 2004-05-06 2010-02-16 Apple Inc. Multipoint touchscreen
EP0965907A3 (de) 1998-06-15 2000-12-20 Xerox Corporation Verfahren und System zur Erzeugung von ad-hoc Verbindungen aus handgeschriebenen Kommentaren
US6429846B2 (en) * 1998-06-23 2002-08-06 Immersion Corporation Haptic feedback for touchpads and other touch controls
US20020018051A1 (en) * 1998-09-15 2002-02-14 Mona Singh Apparatus and method for moving objects on a touchscreen display
US7966078B2 (en) 1999-02-01 2011-06-21 Steven Hoffberg Network media appliance system and method
AUPQ439299A0 (en) 1999-12-01 1999-12-23 Silverbrook Research Pty Ltd Interface system
AUPQ291299A0 (en) * 1999-09-17 1999-10-07 Silverbrook Research Pty Ltd A self mapping surface and related applications
US6822635B2 (en) * 2000-01-19 2004-11-23 Immersion Corporation Haptic interface for laptop computers and other portable devices
US7450114B2 (en) * 2000-04-14 2008-11-11 Picsel (Research) Limited User interface systems and methods for manipulating and viewing digital documents
US7055095B1 (en) 2000-04-14 2006-05-30 Picsel Research Limited Systems and methods for digital document processing
US7576730B2 (en) * 2000-04-14 2009-08-18 Picsel (Research) Limited User interface systems and methods for viewing and manipulating digital documents
GB2365189A (en) * 2000-07-26 2002-02-13 Canon Kk Voice-controlled machine
GB2365145A (en) * 2000-07-26 2002-02-13 Canon Kk Voice control of a machine
US7102628B2 (en) * 2000-10-06 2006-09-05 International Business Machines Corporation Data steering flip pen system
JP5039911B2 (ja) * 2000-10-11 2012-10-03 インターナショナル・ビジネス・マシーンズ・コーポレーション データ処理装置、入出力装置、タッチパネルの制御方法、記憶媒体及びプログラム伝送装置
US6941507B2 (en) 2000-11-10 2005-09-06 Microsoft Corporation Insertion point bungee space tool
US6903730B2 (en) * 2000-11-10 2005-06-07 Microsoft Corporation In-air gestures for electromagnetic coordinate digitizers
US7272788B2 (en) * 2000-12-29 2007-09-18 Fotomedia Technologies, Llc Client-server system for merging of metadata with images
US7030861B1 (en) * 2001-02-10 2006-04-18 Wayne Carl Westerman System and method for packing multi-touch gestures onto a hand
US20070083823A1 (en) * 2001-02-15 2007-04-12 Denny Jaeger Scroll bar for computer display
US6883145B2 (en) * 2001-02-15 2005-04-19 Denny Jaeger Arrow logic system for creating and operating control systems
US7240300B2 (en) * 2001-02-15 2007-07-03 Nbor Corporation Method for creating user-defined computer operations using arrows
US20040034801A1 (en) * 2001-02-15 2004-02-19 Denny Jaeger Method for creating and using computer passwords
US6658147B2 (en) * 2001-04-16 2003-12-02 Parascript Llc Reshaping freehand drawn lines and shapes in an electronic document
US6690364B1 (en) * 2001-05-31 2004-02-10 Palm Source, Inc. Method and system for on screen text correction via pen interface
US7246321B2 (en) * 2001-07-13 2007-07-17 Anoto Ab Editing data
US7136082B2 (en) * 2002-01-25 2006-11-14 Xerox Corporation Method and apparatus to convert digital ink images for use in a structured text/graphics editor
US7028256B2 (en) * 2002-05-10 2006-04-11 Microsoft Corporation Adding white space to a document generating adjusted page sizing
US20030226113A1 (en) * 2002-05-31 2003-12-04 Microsoft Corporation Automatic page size setting
US11275405B2 (en) * 2005-03-04 2022-03-15 Apple Inc. Multi-functional hand-held device
US7656393B2 (en) 2005-03-04 2010-02-02 Apple Inc. Electronic device having display and surrounding touch sensitive bezel for user interface and control
US7137077B2 (en) * 2002-07-30 2006-11-14 Microsoft Corporation Freeform encounter selection tool
EP1387291A3 (de) * 2002-07-30 2005-10-19 Canon Kabushiki Kaisha Anordnung, Verfahren, Datenträger und Programm zur Formularbearbeitung
US7065718B2 (en) 2002-08-08 2006-06-20 International Business Machines Corporation System and method for configuring time related settings using a graphical interface
US7089507B2 (en) 2002-08-12 2006-08-08 International Business Machines Corporation System and method for display views using a single stroke control
US7221376B2 (en) * 2002-08-15 2007-05-22 Microsoft Corporation Space tool feedback by changing the displayed visual appearance of objects to be moved before deletion of displayed objects occurs
US20040036680A1 (en) * 2002-08-26 2004-02-26 Mark Davis User-interface features for computers with contact-sensitive displays
US20060188162A1 (en) * 2002-10-31 2006-08-24 Microsoft Corporation Common interface for ink trees
US20040090439A1 (en) * 2002-11-07 2004-05-13 Holger Dillner Recognition and interpretation of graphical and diagrammatic representations
GB2428118B (en) * 2002-12-08 2007-08-22 Immersion Corp Haptic Communication devices
US8059088B2 (en) * 2002-12-08 2011-11-15 Immersion Corporation Methods and systems for providing haptic messaging to handheld communication devices
US20060136630A1 (en) * 2002-12-08 2006-06-22 Immersion Corporation, A Delaware Corporation Methods and systems for providing haptic messaging to handheld communication devices
US7554530B2 (en) * 2002-12-23 2009-06-30 Nokia Corporation Touch screen user interface featuring stroke-based object selection and functional object activation
US20040119762A1 (en) * 2002-12-24 2004-06-24 Fuji Xerox Co., Ltd. Systems and methods for freeform pasting
WO2004068331A1 (ja) 2003-01-30 2004-08-12 Fujitsu Limited 手書き入力装置及び方法
AU2003262759B8 (en) 2003-08-21 2010-01-07 Microsoft Corporation Electronic ink processing
KR20100102733A (ko) * 2003-08-21 2010-09-24 마이크로소프트 코포레이션 전자 잉크를 분석하기 위한 애플리케이션 프로그래밍 인터페이스를 포함하는 컴퓨터 판독가능 기록 매체, 전자 잉크 분석 방법 및 분석 콘텍스트 대상 생성 방법
US7324691B2 (en) * 2003-09-24 2008-01-29 Microsoft Corporation System and method for shape recognition of hand-drawn objects
US7295708B2 (en) 2003-09-24 2007-11-13 Microsoft Corporation System and method for detecting a list in ink input
US7352902B2 (en) * 2003-09-24 2008-04-01 Microsoft Corporation System and method for detecting a hand-drawn object in ink input
US20050068312A1 (en) * 2003-09-26 2005-03-31 Denny Jaeger Method for programming a graphic control device with numeric and textual characters
US8442331B2 (en) 2004-02-15 2013-05-14 Google Inc. Capturing text from rendered documents using supplemental information
US7707039B2 (en) * 2004-02-15 2010-04-27 Exbiblio B.V. Automatic modification of web pages
US20060053097A1 (en) * 2004-04-01 2006-03-09 King Martin T Searching and accessing documents on private networks for use with captures from rendered documents
US20060041484A1 (en) * 2004-04-01 2006-02-23 King Martin T Methods and systems for initiating application processes by data capture from rendered documents
US7812860B2 (en) * 2004-04-01 2010-10-12 Exbiblio B.V. Handheld device for capturing text from both a document printed on paper and a document displayed on a dynamic display device
US20060122983A1 (en) * 2004-12-03 2006-06-08 King Martin T Locating electronic instances of documents based on rendered instances, document fragment digest generation, and digest based document fragment determination
US20060041605A1 (en) * 2004-04-01 2006-02-23 King Martin T Determining actions involving captured information and electronic content associated with rendered documents
US10635723B2 (en) 2004-02-15 2020-04-28 Google Llc Search engines and systems with handheld document data capture devices
US7161598B2 (en) * 2004-02-26 2007-01-09 Research In Motion Limited Method of rendering text on an output device
US8146156B2 (en) 2004-04-01 2012-03-27 Google Inc. Archive of text captures from rendered documents
US9116890B2 (en) 2004-04-01 2015-08-25 Google Inc. Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US20060098900A1 (en) * 2004-09-27 2006-05-11 King Martin T Secure data gathering from rendered documents
US9143638B2 (en) 2004-04-01 2015-09-22 Google Inc. Data capture from rendered documents using handheld device
US20060081714A1 (en) 2004-08-23 2006-04-20 King Martin T Portable scanning device
US9008447B2 (en) 2004-04-01 2015-04-14 Google Inc. Method and system for character recognition
US8081849B2 (en) * 2004-12-03 2011-12-20 Google Inc. Portable scanning and memory device
US20080313172A1 (en) * 2004-12-03 2008-12-18 King Martin T Determining actions involving captured information and electronic content associated with rendered documents
US7894670B2 (en) 2004-04-01 2011-02-22 Exbiblio B.V. Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US20070300142A1 (en) * 2005-04-01 2007-12-27 King Martin T Contextual dynamic advertising based upon captured rendered text
US7990556B2 (en) 2004-12-03 2011-08-02 Google Inc. Association of a portable scanner with input/output and storage devices
US8713418B2 (en) * 2004-04-12 2014-04-29 Google Inc. Adding value to a rendered document
US8874504B2 (en) 2004-12-03 2014-10-28 Google Inc. Processing techniques for visual capture data from a rendered document
US8489624B2 (en) 2004-05-17 2013-07-16 Google, Inc. Processing techniques for text capture from a rendered document
US8620083B2 (en) 2004-12-03 2013-12-31 Google Inc. Method and system for character recognition
US7788606B2 (en) * 2004-06-14 2010-08-31 Sas Institute Inc. Computer-implemented system and method for defining graphics primitives
US20060001656A1 (en) * 2004-07-02 2006-01-05 Laviola Joseph J Jr Electronic ink system
US8346620B2 (en) 2004-07-19 2013-01-01 Google Inc. Automatic modification of web pages
US8381135B2 (en) 2004-07-30 2013-02-19 Apple Inc. Proximity detector in handheld device
US7653883B2 (en) 2004-07-30 2010-01-26 Apple Inc. Proximity detector in handheld device
CN100555200C (zh) 2004-08-16 2009-10-28 苹果公司 触敏器件和提高触敏器件的空间分辨率的方法
US7440616B2 (en) * 2004-09-21 2008-10-21 Microsoft Corporation System and method for recognition of a hand-drawn chart in ink input
US7394935B2 (en) * 2004-09-21 2008-07-01 Microsoft Corporation System and method for editing a hand-drawn chart in ink input
US7503015B2 (en) * 2004-09-21 2009-03-10 Microsoft Corporation System and method for editing ink objects
US7412094B2 (en) * 2004-09-21 2008-08-12 Microsoft Corporation System and method for editing a hand-drawn table in ink input
US7904810B2 (en) * 2004-09-21 2011-03-08 Microsoft Corporation System and method for editing a hand-drawn list in ink input
US7394936B2 (en) * 2004-09-21 2008-07-01 Microsoft Corporation System and method for curve recognition in a hand-drawn chart in ink input
US7409088B2 (en) * 2004-09-21 2008-08-05 Microsoft Corporation System and method for connectivity-based recognition of a hand-drawn chart in ink input
US7400771B2 (en) * 2004-09-21 2008-07-15 Microsoft Corporation System and method for connected container recognition of a hand-drawn chart in ink input
US7506245B2 (en) * 2004-09-27 2009-03-17 Nbor Corporation Method for performing a load-on-demand operation on assigned graphic objects in a computer operating environment
US8169410B2 (en) 2004-10-20 2012-05-01 Nintendo Co., Ltd. Gesture inputs for a portable display device
US7583819B2 (en) * 2004-11-05 2009-09-01 Kyprianos Papademetriou Digital signal processing methods, systems and computer program products that identify threshold positions and values
EP4177708B1 (de) * 2005-03-04 2025-01-29 Apple Inc. Multifunktionales handgerät
US20060267967A1 (en) * 2005-05-24 2006-11-30 Microsoft Corporation Phrasing extensions and multiple modes in one spring-loaded control
KR100703331B1 (ko) * 2005-06-01 2007-04-03 삼성전자주식회사 문자 입력에 대해 비주얼 효과를 부여하는 문자 입력 방법및 이를 위한 이동 단말기
US7294089B2 (en) * 2005-08-15 2007-11-13 Ford Global Technologies, Llc Multiple-speed automatic transmission
US7636794B2 (en) * 2005-10-31 2009-12-22 Microsoft Corporation Distributed sensing techniques for mobile devices
US8643605B2 (en) 2005-11-21 2014-02-04 Core Wireless Licensing S.A.R.L Gesture based document editor
US8018440B2 (en) 2005-12-30 2011-09-13 Microsoft Corporation Unintentional touch rejection
US7817991B2 (en) * 2006-02-14 2010-10-19 Microsoft Corporation Dynamic interconnection of mobile devices
US20070188473A1 (en) * 2006-02-14 2007-08-16 Picsel Research Limited System and methods for document navigation
US7538760B2 (en) 2006-03-30 2009-05-26 Apple Inc. Force imaging input device and system
US7511702B2 (en) * 2006-03-30 2009-03-31 Apple Inc. Force and location sensitive display
KR20070113018A (ko) * 2006-05-24 2007-11-28 엘지전자 주식회사 터치스크린 장치 및 그 실행방법
TWI328185B (en) * 2006-04-19 2010-08-01 Lg Electronics Inc Touch screen device for potable terminal and method of displaying and selecting menus thereon
KR101327581B1 (ko) * 2006-05-24 2013-11-12 엘지전자 주식회사 터치스크린 장치 및 이의 작동방법
US20090213086A1 (en) * 2006-04-19 2009-08-27 Ji Suk Chae Touch screen device and operating method thereof
KR20070113025A (ko) * 2006-05-24 2007-11-28 엘지전자 주식회사 터치스크린 장치 및 이의 작동방법
KR101269375B1 (ko) 2006-05-24 2013-05-29 엘지전자 주식회사 터치스크린 장치 및 이의 이미지 표시방법
KR20070113022A (ko) * 2006-05-24 2007-11-28 엘지전자 주식회사 사용자 입력에 반응하는 터치스크린 장치 및 이의 작동방법
US7978181B2 (en) 2006-04-25 2011-07-12 Apple Inc. Keystroke tactility arrangement on a smooth touch surface
US8279180B2 (en) 2006-05-02 2012-10-02 Apple Inc. Multipoint touch surface controller
TW200805131A (en) * 2006-05-24 2008-01-16 Lg Electronics Inc Touch screen device and method of selecting files thereon
CN104965621B (zh) 2006-06-09 2018-06-12 苹果公司 触摸屏液晶显示器及其操作方法
US8552989B2 (en) * 2006-06-09 2013-10-08 Apple Inc. Integrated display and touch screen
DE112007002544A1 (de) 2006-06-09 2010-07-22 Apple Inc., Cupertino Flüssigkristallanzeige mit Berührungsbildschirm
US7934156B2 (en) * 2006-09-06 2011-04-26 Apple Inc. Deletion gestures on a portable multifunction device
EP2067119A2 (de) 2006-09-08 2009-06-10 Exbiblio B.V. Optische scanner, zum beispiel tragbare optische scanner
US7856605B2 (en) 2006-10-26 2010-12-21 Apple Inc. Method, system, and graphical user interface for positioning an insertion marker in a touch screen display
US8570278B2 (en) 2006-10-26 2013-10-29 Apple Inc. Portable multifunction device, method, and graphical user interface for adjusting an insertion point marker
US8493330B2 (en) * 2007-01-03 2013-07-23 Apple Inc. Individual channel phase delay scheme
US9710095B2 (en) 2007-01-05 2017-07-18 Apple Inc. Touch screen stack-ups
US7877707B2 (en) 2007-01-06 2011-01-25 Apple Inc. Detecting and interpreting real-world and security gestures on touch and hover sensitive devices
US9817436B2 (en) * 2007-01-07 2017-11-14 Apple Inc. Portable multifunction device, method, and graphical user interface for displaying user interface objects adaptively
US8091045B2 (en) * 2007-01-07 2012-01-03 Apple Inc. System and method for managing lists
WO2008112650A2 (en) * 2007-03-15 2008-09-18 Yazaki Corporation Capacitor electrodes comprising carbon nanotubes filled with one or more non- carbon materials
US8065603B2 (en) * 2007-04-30 2011-11-22 Google Inc. Hiding portions of display content
US8370755B2 (en) * 2007-12-27 2013-02-05 Core Wireless Licensing S.A.R.L. User interface controlled by environmental cues
US8201109B2 (en) * 2008-03-04 2012-06-12 Apple Inc. Methods and graphical user interfaces for editing on a portable multifunction device
US8650507B2 (en) 2008-03-04 2014-02-11 Apple Inc. Selecting of text using gestures
WO2009114009A1 (en) * 2008-03-11 2009-09-17 Hewlett-Packard Development Company, L.P. Systems and methods of processing touchpad input
US9058067B2 (en) * 2008-04-03 2015-06-16 Livescribe Digital bookclip
US8665228B2 (en) 2008-06-19 2014-03-04 Tactile Displays, Llc Energy efficient interactive display with energy regenerative keyboard
US8115745B2 (en) 2008-06-19 2012-02-14 Tactile Displays, Llc Apparatus and method for interactive display with tactile feedback
US8217908B2 (en) 2008-06-19 2012-07-10 Tactile Displays, Llc Apparatus and method for interactive display with tactile feedback
US9513705B2 (en) 2008-06-19 2016-12-06 Tactile Displays, Llc Interactive display with tactile feedback
US8826174B2 (en) 2008-06-27 2014-09-02 Microsoft Corporation Using visual landmarks to organize diagrams
JP5118609B2 (ja) * 2008-11-20 2013-01-16 キヤノン株式会社 オブジェクト処理装置、その処理方法及びプログラム
DE112008004156B4 (de) * 2008-12-15 2021-06-24 Hewlett-Packard Development Company, L.P. System und verfahren für einen gestenbasierten editiermodus und computerlesbares medium hierfür
US8319736B2 (en) * 2009-01-19 2012-11-27 Microsoft Corporation Touch sensitive computing device and method
US9069398B1 (en) * 2009-01-30 2015-06-30 Cellco Partnership Electronic device having a touch panel display and a method for operating the same
WO2010096193A2 (en) 2009-02-18 2010-08-26 Exbiblio B.V. Identifying a document by performing spectral analysis on the contents of the document
US8447066B2 (en) 2009-03-12 2013-05-21 Google Inc. Performing actions based on capturing information from rendered documents, such as documents under copyright
WO2010105245A2 (en) 2009-03-12 2010-09-16 Exbiblio B.V. Automatically providing content associated with captured information, such as information captured in real-time
US9875013B2 (en) * 2009-03-16 2018-01-23 Apple Inc. Methods and graphical user interfaces for editing on a multifunction device with a touch screen display
US9250788B2 (en) * 2009-03-18 2016-02-02 IdentifyMine, Inc. Gesture handlers of a gesture engine
US20100281435A1 (en) * 2009-04-30 2010-11-04 At&T Intellectual Property I, L.P. System and method for multimodal interaction using robust gesture processing
US8836648B2 (en) * 2009-05-27 2014-09-16 Microsoft Corporation Touch pull-in gesture
US8654524B2 (en) 2009-08-17 2014-02-18 Apple Inc. Housing as an I/O device
US9081799B2 (en) 2009-12-04 2015-07-14 Google Inc. Using gestalt information to identify locations in printed information
US9323784B2 (en) 2009-12-09 2016-04-26 Google Inc. Image search using text-based elements within the contents of images
CN102103593B (zh) * 2009-12-18 2012-10-31 北大方正集团有限公司 一种文字的笔画拆分排版方法及系统
US9207765B2 (en) * 2009-12-31 2015-12-08 Microsoft Technology Licensing, Llc Recognizing interactive media input
US8786559B2 (en) * 2010-01-06 2014-07-22 Apple Inc. Device, method, and graphical user interface for manipulating tables using multi-contact gestures
US8239785B2 (en) * 2010-01-27 2012-08-07 Microsoft Corporation Edge gestures
US9411504B2 (en) 2010-01-28 2016-08-09 Microsoft Technology Licensing, Llc Copy and staple gestures
US8261213B2 (en) 2010-01-28 2012-09-04 Microsoft Corporation Brush, carbon-copy, and fill gestures
US20110185299A1 (en) * 2010-01-28 2011-07-28 Microsoft Corporation Stamp Gestures
US20110185320A1 (en) * 2010-01-28 2011-07-28 Microsoft Corporation Cross-reference Gestures
US9519356B2 (en) * 2010-02-04 2016-12-13 Microsoft Technology Licensing, Llc Link gestures
US20110191719A1 (en) * 2010-02-04 2011-08-04 Microsoft Corporation Cut, Punch-Out, and Rip Gestures
US20110191704A1 (en) * 2010-02-04 2011-08-04 Microsoft Corporation Contextual multiplexing gestures
US9965165B2 (en) * 2010-02-19 2018-05-08 Microsoft Technology Licensing, Llc Multi-finger gestures
US9274682B2 (en) * 2010-02-19 2016-03-01 Microsoft Technology Licensing, Llc Off-screen gestures to create on-screen input
US8799827B2 (en) * 2010-02-19 2014-08-05 Microsoft Corporation Page manipulations using on and off-screen gestures
US9367205B2 (en) * 2010-02-19 2016-06-14 Microsoft Technolgoy Licensing, Llc Radial menus with bezel gestures
US9310994B2 (en) 2010-02-19 2016-04-12 Microsoft Technology Licensing, Llc Use of bezel as an input mechanism
US9454304B2 (en) * 2010-02-25 2016-09-27 Microsoft Technology Licensing, Llc Multi-screen dual tap gesture
US20110209089A1 (en) * 2010-02-25 2011-08-25 Hinckley Kenneth P Multi-screen object-hold and page-change gesture
US8707174B2 (en) * 2010-02-25 2014-04-22 Microsoft Corporation Multi-screen hold and page-flip gesture
US9075522B2 (en) * 2010-02-25 2015-07-07 Microsoft Technology Licensing, Llc Multi-screen bookmark hold gesture
US8473870B2 (en) 2010-02-25 2013-06-25 Microsoft Corporation Multi-screen hold and drag gesture
US20110209101A1 (en) * 2010-02-25 2011-08-25 Hinckley Kenneth P Multi-screen pinch-to-pocket gesture
US20110209058A1 (en) * 2010-02-25 2011-08-25 Microsoft Corporation Multi-screen hold and tap gesture
US8539384B2 (en) 2010-02-25 2013-09-17 Microsoft Corporation Multi-screen pinch and expand gestures
US8751970B2 (en) * 2010-02-25 2014-06-10 Microsoft Corporation Multi-screen synchronous slide gesture
JP5032624B2 (ja) * 2010-03-29 2012-09-26 株式会社エヌ・ティ・ティ・ドコモ 携帯端末及び携帯端末における文字列表現変更方法
US10719131B2 (en) 2010-04-05 2020-07-21 Tactile Displays, Llc Interactive display with tactile feedback
US20200393907A1 (en) 2010-04-13 2020-12-17 Tactile Displays, Llc Interactive display with tactile feedback
US8635555B2 (en) 2010-06-08 2014-01-21 Adobe Systems Incorporated Jump, checkmark, and strikethrough gestures
US20110304556A1 (en) * 2010-06-09 2011-12-15 Microsoft Corporation Activate, fill, and level gestures
US8370767B2 (en) 2010-06-22 2013-02-05 Microsoft Corporation List authoring surface
US8773370B2 (en) * 2010-07-13 2014-07-08 Apple Inc. Table editing systems with gesture-based insertion and deletion of columns and rows
US8887038B2 (en) * 2010-10-08 2014-11-11 Business Objects Software Limited Extrapolating tabular structure in a freeform document
US20120092269A1 (en) * 2010-10-15 2012-04-19 Hon Hai Precision Industry Co., Ltd. Computer-implemented method for manipulating onscreen data
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US8804056B2 (en) 2010-12-22 2014-08-12 Apple Inc. Integrated touch screens
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US9785335B2 (en) * 2010-12-27 2017-10-10 Sling Media Inc. Systems and methods for adaptive gesture recognition
US9223471B2 (en) 2010-12-28 2015-12-29 Microsoft Technology Licensing, Llc Touch screen control
JP5650564B2 (ja) * 2011-03-01 2015-01-07 株式会社ユビキタスエンターテインメント スプレッドシート制御プログラム、スプレッドシート制御装置及びスプレッドシートの制御方法
US8793624B2 (en) * 2011-05-18 2014-07-29 Google Inc. Control of a device using gestures
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US8893033B2 (en) 2011-05-27 2014-11-18 Microsoft Corporation Application notifications
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9092130B2 (en) 2011-05-31 2015-07-28 Apple Inc. Devices, methods, and graphical user interfaces for document manipulation
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US9612670B2 (en) 2011-09-12 2017-04-04 Microsoft Technology Licensing, Llc Explicit touch selection and cursor placement
US10192176B2 (en) 2011-10-11 2019-01-29 Microsoft Technology Licensing, Llc Motivation of task completion and personalization of tasks and lists
US9251144B2 (en) * 2011-10-19 2016-02-02 Microsoft Technology Licensing, Llc Translating language characters in media content
JP5862260B2 (ja) * 2011-12-09 2016-02-16 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
KR101812380B1 (ko) 2012-01-23 2017-12-26 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 공식 검출 엔진
US20130201161A1 (en) * 2012-02-03 2013-08-08 John E. Dolan Methods, Systems and Apparatus for Digital-Marking-Surface Content-Unit Manipulation
US9400592B2 (en) 2012-03-26 2016-07-26 Sharp Laboratories Of America, Inc. Methods, systems and apparatus for digital-marking-surface space and display management
US9323443B2 (en) 2012-05-02 2016-04-26 International Business Machines Corporation Drilling of displayed content in a touch screen device
US9229539B2 (en) * 2012-06-07 2016-01-05 Microsoft Technology Licensing, Llc Information triage using screen-contacting gestures
JP5209132B2 (ja) * 2012-06-28 2013-06-12 株式会社エヌ・ティ・ティ・ドコモ 携帯端末及び携帯端末における文字列表現変更方法
CN102799367B (zh) * 2012-06-29 2015-05-13 鸿富锦精密工业(深圳)有限公司 电子设备及其触摸控制方法
CN102768617B (zh) * 2012-06-29 2016-12-28 惠州Tcl移动通信有限公司 手持式电子设备及基于触摸屏的列表项编辑的方法
US20140002377A1 (en) * 2012-07-02 2014-01-02 Microsoft Corporation Manipulating content on a canvas with touch gestures
JP5518142B2 (ja) * 2012-08-02 2014-06-11 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、プログラム及び記録媒体
US9557846B2 (en) 2012-10-04 2017-01-31 Corning Incorporated Pressure-sensing touch system utilizing optical and capacitive systems
US9582122B2 (en) 2012-11-12 2017-02-28 Microsoft Technology Licensing, Llc Touch-sensitive bezel techniques
KR20140068595A (ko) * 2012-11-28 2014-06-09 삼성디스플레이 주식회사 단말기 및 그의 조작 방법
TW201426511A (zh) * 2012-12-27 2014-07-01 Au Optronics Corp 顯示器系統及其控制方法
KR102004884B1 (ko) 2013-01-07 2019-07-29 삼성전자주식회사 전자 장치에서 움직이는 사진 제어 장치 및 방법
US9047268B2 (en) 2013-01-31 2015-06-02 Google Inc. Character and word level language models for out-of-vocabulary text input
US9454240B2 (en) 2013-02-05 2016-09-27 Google Inc. Gesture keyboard input of non-dictionary character strings
US9330070B2 (en) * 2013-03-11 2016-05-03 Microsoft Technology Licensing, Llc Detection and reconstruction of east asian layout features in a fixed format document
KR101337872B1 (ko) * 2013-04-04 2013-12-06 주식회사 디오텍 잉크 텍스트 데이터 편집장치 및 잉크 텍스트 데이터 편집방법
US8756499B1 (en) * 2013-04-29 2014-06-17 Google Inc. Gesture keyboard input of non-dictionary character strings using substitute scoring
KR20140139247A (ko) * 2013-05-27 2014-12-05 삼성전자주식회사 오브젝트 운용 방법 및 그 전자 장치
KR20150009199A (ko) * 2013-07-16 2015-01-26 삼성전자주식회사 객체 편집을 위한 전자 장치 및 방법
US9811238B2 (en) 2013-08-29 2017-11-07 Sharp Laboratories Of America, Inc. Methods and systems for interacting with a digital marking surface
US9977772B1 (en) * 2013-09-24 2018-05-22 Mehrdad Samadani Method and system for cellular text processor and display
US9507520B2 (en) 2013-12-16 2016-11-29 Microsoft Technology Licensing, Llc Touch-based reorganization of page element
US9477337B2 (en) 2014-03-14 2016-10-25 Microsoft Technology Licensing, Llc Conductive trace routing for display and bezel sensors
US10078411B2 (en) 2014-04-02 2018-09-18 Microsoft Technology Licensing, Llc Organization mode support mechanisms
US10318613B2 (en) 2015-08-25 2019-06-11 Myscript System and method of digital note taking
US10210383B2 (en) 2015-09-03 2019-02-19 Microsoft Technology Licensing, Llc Interacting with an assistant component based on captured stroke information
US10387034B2 (en) * 2015-09-03 2019-08-20 Microsoft Technology Licensing, Llc Modifying captured stroke information into an actionable form
US10643067B2 (en) 2015-10-19 2020-05-05 Myscript System and method of handwriting recognition in diagrams
US10417491B2 (en) 2015-10-19 2019-09-17 Myscript System and method for recognition of handwritten diagram connectors
US11500535B2 (en) 2015-10-29 2022-11-15 Lenovo (Singapore) Pte. Ltd. Two stroke quick input selection
US10637986B2 (en) 2016-06-10 2020-04-28 Apple Inc. Displaying and updating a set of application views
US11275499B2 (en) * 2016-06-10 2022-03-15 Apple Inc. Device, method, and graphical user interface for changing a number of columns of an application region
WO2018109084A1 (en) 2016-12-15 2018-06-21 Myscript System and method for management of handwritten diagram connectors
US10613748B2 (en) * 2017-10-03 2020-04-07 Google Llc Stylus assist
US11131967B2 (en) 2019-05-06 2021-09-28 Apple Inc. Clock faces for an electronic device
EP3736677A1 (de) * 2019-05-10 2020-11-11 MyScript Verfahren und zugehörige vorrichtung zur auswahl und bearbeitung von handschrifteingabeelementen
US11379113B2 (en) 2019-06-01 2022-07-05 Apple Inc. Techniques for selecting text
US11074408B2 (en) 2019-06-01 2021-07-27 Apple Inc. Mail application features
EP3754537B1 (de) 2019-06-20 2024-05-22 MyScript Verarbeitung der handschriftlichen texteingabe in einem freien handschreibmodus
EP3772015B1 (de) 2019-07-31 2023-11-08 MyScript Textzeilenextraktion
EP3796145B1 (de) 2019-09-19 2024-07-03 MyScript Verfahren und entsprechende vorrichtung zur auswahl von grafischen objekten
US11257396B2 (en) * 2020-03-18 2022-02-22 Sas Institute Inc. User interfaces for converting geospatial data into audio outputs
US11822896B2 (en) 2020-07-08 2023-11-21 International Business Machines Corporation Contextual diagram-text alignment through machine learning
US12072925B2 (en) * 2021-03-19 2024-08-27 Google Llc Visual search via free-form visual feature selection
US20230315271A1 (en) * 2022-03-18 2023-10-05 Sony Group Corporation Collaborative whiteboard for meetings
US11460973B1 (en) 2022-04-11 2022-10-04 Sas Institute Inc:. User interfaces for converting node-link data into audio outputs
US20240176482A1 (en) * 2022-11-29 2024-05-30 Microsoft Technology Licensing, Llc Gesture Based Space Adjustment for Editing

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5181129A (en) * 1989-03-17 1993-01-19 Hitachi, Ltd. Electronic blackboard
US5347295A (en) * 1990-10-31 1994-09-13 Go Corporation Control of a computer through a position-sensed stylus
US5220649A (en) * 1991-03-20 1993-06-15 Forcier Mitchell D Script/binary-encoded-character processing method and system with moving space insertion mode
US5231698A (en) * 1991-03-20 1993-07-27 Forcier Mitchell D Script/binary-encoded-character processing method and system
CA2089784C (en) * 1992-04-15 1996-12-24 William Joseph Anderson Apparatus and method for disambiguating an input stream generated by a stylus-based user interface

Also Published As

Publication number Publication date
EP0667567B1 (de) 2001-10-17
US6525749B1 (en) 2003-02-25
EP0667567A3 (de) 1996-01-17
EP0667567A2 (de) 1995-08-16
CA2139256A1 (en) 1995-07-01
CA2139256C (en) 2010-10-05
DE69428675D1 (de) 2001-11-22
JPH086707A (ja) 1996-01-12

Similar Documents

Publication Publication Date Title
DE69428675T2 (de) Apparat und Verfahren zur Unterstützung einer impliziten Strukturation von Freiform-Listen, Übersichten, Texten, Tabellen und Diagrammen in einem auf Handzeichen basierenden Eingabesystem und Editiersystem
DE69426919T2 (de) Gerät und Verfahren zur Ausführung von vielen verkettenden Befehlsgesten in einen System mit Gestenbenutzerschnittstelle
DE69428489T2 (de) Verfahren und System zur Erzeugung von für die Datenverarbeitung bedeutenden Verknüpfungen zwischen uninterpretierten Daten in einem auf Graphik basierten Computersystem
DE3586342T2 (de) Anlage fuer automatische auspassung und aufbereitung handgeschriebener textbilder.
DE69916225T2 (de) Verfahren und System zur Wartung von Freiformtinteannotationen auf ändernden Ansichten
DE60314563T2 (de) Überlagerung mit elektronischer Tinte
DE69332727T2 (de) Informationsverarbeitungsgerät
DE69426281T2 (de) Verfahren zur dynamischen Beibehaltung mehrfacher struktureller Interpretationen in einem Grafiksystem
US6470095B2 (en) Automatic extraction of text regions and region borders for an electronic work surface
DE69812280T2 (de) Steuereinheit zur Bildverschiebung
DE69033079T2 (de) Aufbereitung von Text in einem Bild
DE69432579T2 (de) Verfahren und Vorrichtung zum Bearbeiten von Modell-Datenstrukturen eines Bildes, um ein für Menschen erkennbares Resultat zu erreichen
DE69333096T2 (de) Vorrichtungen und Verfahren zum graphischen Zeichnen und Ausgabe
DE69330979T2 (de) Verfahren und Vorrichtung zum graphischen Zeichnen und Editieren
DE69329482T2 (de) Griffelseingabeverarbeitungsgerät
DE69328802T2 (de) Vorrichtung und Verfahren zur Identifizierung von Eingabedaten, die von einer Stift-basierten Benutzerschnittstelle erzeugt werden
DE69105997T2 (de) Rechner mit tabletteingabe in standardprogramme.
DE69429853T2 (de) Verfahren zur Analyse ein Bild definierender Daten
DE60312572T2 (de) Verfahren und Gerät zum Konvertieren digitaler Bilder von Handzeichnungen zur weiteren Verwendung in einem strukturierten Text/Graphik Editor.
DE69732547T2 (de) Verfahren und Gerät zum Zusammenklappen und zur Ausdehnung auserwählter Bereiche von Arbeitsräumen auf einem von einem Rechner kontrollierten Anzeigesystem
DE69615236T2 (de) Verfahren zur vergrösserten Sichtbarkeit und Auswahlmöglichkeit von Ikonen
DE3689034T2 (de) Elektronisches System zur Text-Grafik-Aufbereitung.
DE69432344T2 (de) Dateneingabevorrichtung mit Anzeigetastatur
DE69718721T2 (de) Verfahren und Vorrichtung zum Organisieren und zur Anzeige von langen Datenlisten in einem Arbeitsraum eines Rechneranzeigesystems
DE3885085T2 (de) Verfahren zur automatischen Änderung der Abmessungen von angezeigten Objekten in Bezug auf die Änderungen der Abmessungen des Bildfensters.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition