DE102016109517A1 - Reduzierte Speicherung von Strichen in Dokumenten - Google Patents

Reduzierte Speicherung von Strichen in Dokumenten Download PDF

Info

Publication number
DE102016109517A1
DE102016109517A1 DE102016109517.6A DE102016109517A DE102016109517A1 DE 102016109517 A1 DE102016109517 A1 DE 102016109517A1 DE 102016109517 A DE102016109517 A DE 102016109517A DE 102016109517 A1 DE102016109517 A1 DE 102016109517A1
Authority
DE
Germany
Prior art keywords
character
font
handwriting
user
stroke data
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.)
Pending
Application number
DE102016109517.6A
Other languages
English (en)
Inventor
Russell Speight VanBlon
Grigori M. Zaitsev
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.)
Lenovo Singapore Pte Ltd
Original Assignee
Lenovo Singapore Pte Ltd
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 Lenovo Singapore Pte Ltd filed Critical Lenovo Singapore Pte Ltd
Publication of DE102016109517A1 publication Critical patent/DE102016109517A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/17Image acquisition using hand-held instruments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/142Image acquisition using hand-held instruments; Constructional details of the instruments
    • G06V30/1423Image acquisition using hand-held instruments; Constructional details of the instruments the instrument generating sequences of position coordinates corresponding to handwriting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/24Character recognition characterised by the processing or recognition method
    • G06V30/242Division of the character sequences into groups prior to recognition; Selection of dictionaries
    • G06V30/244Division of the character sequences into groups prior to recognition; Selection of dictionaries using graphical properties, e.g. alphabet type or font
    • G06V30/245Font recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/333Preprocessing; Feature extraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/333Preprocessing; Feature extraction
    • G06V30/347Sampling; Contour coding; Stroke extraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/36Matching; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Character Discrimination (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Für ein reduziertes Speichern von Nutzerstrichdaten werden Systeme, Vorrichtungen und Verfahren offenbart. Die Vorrichtung umfasst ein Handschrift-Eingabegerät, das Eingabe-Strichdaten empfängt, einen Prozessor und einen Speicher, der einen Code speichert, der durch den Prozessor ausführbar ist, wobei der Code einen Code einschließt, der ein Handschriftzeichen in den Strichdaten identifiziert, das Handschriftzeichen auf ein nutzerspezifisches Schriftartzeichen basierend auf den Strichdaten abbildet und eine Datei erzeugt, die eine Zeichen-Kodierung entsprechend dem nutzerspezifischen Schriftartzeichen speichert. Das Handschrift-Eingabegerät kann ein Eingabegerät einschließen, das aus der Gruppe ausgewählt wird, bestehend aus: einem Berührungsbildschirm bzw. Touchscreen, einem Touch-Panel, einem Digitalisierer, einem digitalen Stift, einem Scanner, einem Bildwandler und einer digitalen Kamera.

Description

  • GEBIET
  • Der Gegenstand, der hierin offenbart wird, betrifft ein Speichern von Strichdaten und insbesondere betrifft er ein Reduzieren der Speicherung von Strichen in Dokumenten.
  • HINTERGRUND
  • BESCHREIBUNG DER RELEVANTEN TECHNIK
  • Strichdaten beanspruchen große Mengen von Speicherplatz. Eine Proberate kann 133 Punkte pro Sekunde erreichen, welche in Daten-Bitraten größer als 5 kbps konvertiert werden, was in einer durchschnittlichen Dokumentgröße von 10–20 MB resultiert. Ein durchschnittlicher Student macht 4 Stunden pro Tag digitale Notizen, was in einem Speicheraufwand von 1,5 GB pro Monat und etwa 13 GB pro Schuljahr resultiert (unter der Annahme von 9 Monaten Unterrichtslektionen und 3 Monaten Unterbrechung). Ein derartiger Umfang stellt ein Problem für die örtliche Speicherung dar, insbesondere für limitierte SSD auf Tablets. Die große Speichernachfrage ist auch problematisch für entfernte (z.B. Cloud-basierende) Speicherlösungen, welche wachsenden Problemen in Bezug auf hohe Bandbreite und Speichervolumen ausgesetzt sein können.
  • KURZE ZUSAMMENFASSUNG
  • Eine Vorrichtung für ein reduziertes Speichern von Strichdaten wird offenbart. Ein Verfahren und ein Computerprogrammprodukt führen auch Funktionen der Vorrichtung aus. Die Vorrichtung umfasst ein Handschrift-Eingabegerät, das Eingabe-Strichdaten empfängt, einen Prozessor und einen Speicher, der einen Code speichert, der durch den Prozessor ausführbar ist, wobei der Code einen Code einschließt, der ein Handschriftzeichen in den Strichdaten identifiziert, das Handschriftzeichen auf ein nutzerspezifisches Schriftartzeichen Zeichen abbildet, basierend auf den Strichdaten, und eine Datei erzeugt, die ein Zeichen, das entsprechend dem nutzerspezifischen Schriftartzeichen kodiert ist, speichert. Das Handschrift-Eingabegerät kann ein Eingabegerät einschließen, das aus der Gruppe ausgewählt wird, bestehend aus: einem Berührungsbildschirm bzw. Touchscreen, einem Touch-Panel, einem Digitalisierer, einem digitalen Stift, einem Scanner, einem Bildwandler und einer digitalen Kamera.
  • In bestimmten Ausführungsformen umfasst das Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen ein Bestimmen, ob die Strichdaten des Handschriftzeichens mit einem Schriftartzeichen eines nutzerspezifischen Schriftartsatzes, der mit einer Nutzereingabe der Strichdaten assoziiert wird, übereinstimmen, ein Auswählen eines übereinstimmenden Schriftartzeichen in Reaktion darauf, dass die Strichdaten mit dem Schriftartzeichen übereinstimmen, und ein Erzeugen eines neuen Schriftartzeichens basierend auf den Strichdaten, in Reaktion darauf, dass die Strichdaten nicht mit irgendeinem Schriftartzeichen des Schriftartsatzes übereinstimmen. Der nutzerspezifische Schriftartsatz kann eine Vielzahl von Varianten eines Textzeichens, das dem Handschriftzeichen entspricht, einschließen, wobei ein Auswählen eines übereinstimmenden Schriftartzeichens ein Auswählen einer bestpassenden Variante basierend auf den Strichdaten einschließt.
  • In einigen Ausführungsformen umfasst die Vorrichtung einen Code, der die Datei liest und ein Textzeichen, angegeben durch die Zeichen-Kodierung unter Verwenden des nutzerspezifischen Schriftartzeichens, anzeigt. Die Vorrichtung kann auch einen Code einschließen, der eine Zeichenposition des Handschriftzeichens in der Datei speichert, wobei ein Anzeigen des Textzeichens ein Anzeigen des Textzeichens an der Zeichen-Position einschließt.
  • In einigen Ausführungsformen umfasst die Vorrichtung einen Code, welcher die Strichdaten löscht, in Reaktion auf ein Abbilden des Handschriftzeichens basierend auf den Strichdaten zu einem nutzerspezifischen Schriftartzeichen. Die Vorrichtung kann ferner einen Code einschließen, der eine Abweichung zwischen dem Handschriftzeichen und einem Modellzeichen bestimmt, wobei die Datei ferner die Abweichung zwischen dem Handschriftzeichen und dem Modellzeichen speichert.
  • In bestimmten Ausführungsformen umfasst das Identifizieren des Handschriftzeichens ein Empfangen von Strichdaten von dem Handschrift-Eingabegerät, wobei die Strichdaten eine Nutzerhandschrift einschließen, ein Ausführen von Handschrifterkennung auf den Strichdaten und ein Identifizieren eines Textzeichens, das mit dem Handschriftzeichen übereinstimmt, basierend auf der Handschrifterkennung, wobei die Zeichen-Kodierung dem identifizierten Textzeichen entspricht. In bestimmten Ausführungsformen umfasst ein Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen ein Erzeugen eines einzigen nutzerspezifischen Schriftartzeichens, das zwei benachbarte Handschriftbuchstaben repräsentiert.
  • Das Verfahren umfasst ein Identifizieren eines Handschriftzeichens von den Strichdaten durch den Gebrauch eines Prozessors, ein Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen, basierend auf den Strichdaten, und ein Speichern eines Zeichens, das entsprechend dem nutzerspezifischen Schriftartzeichen kodiert ist. In einigen Ausführungsformen umfasst das Verfahren ferner ein Berechnen einer Größe und einer Ausrichtung des Handschriftzeichens, basierend auf den Strichdaten.
  • In bestimmten Ausführungsformen umfasst das Verfahren ferner ein Berechnen eines horizontalen Maßstab-Faktors des Handschriftzeichens, basierend auf den Strichdaten, wobei ein Speichern eines Zeichens, das entsprechend dem nutzerspezifischen Schriftartzeichen kodiert ist, ferner ein Speichern der Größe, Ausrichtung und des horizontalen Maßstab-Faktors des Handschriftzeichens umfasst. In bestimmten Ausführungsformen umfasst das Verfahren ferner ein Identifizieren einer Nutzeremotion, basierend auf der Ausrichtung des Handschriftzeichens, und ein Assoziieren des nutzerspezifischen Schriftartzeichens mit einem nutzerspezifischen Schriftartsatz, basierend auf der Nutzeremotion.
  • In einigen Ausführungsform umfasst das Verfahren ein Bestimmen einer Zeichenposition des Handschriftzeichens, wobei ein Speichern eines Zeichens, das entsprechend dem nutzerspezifischen Schriftartzeichen kodiert ist, ferner ein Erzeugen einer Datei umfasst, welche die Zeichen-Kodierung mit der Zeichenposition und mit dem nutzerspezifischen Schriftartzeichen assoziiert. In einigen Ausführungsformen umfasst das Verfahren ein Anzeigen eines Textzeichens, das durch die Zeichen-Kodierung unter Verwenden des nutzerspezifischen Schriftartzeichens gezeigt wird.
  • In bestimmten Ausführungsformen umfasst ein Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen ein Bestimmen einer Abweichung zwischen den Strichdaten und einem nutzerspezifischen Schriftartzeichen, welches mit dem Handschriftzeichen übereinstimmt, und ein Erzeugen eines neuen Schriftartzeichens, basierend auf den Strichdaten, in Reaktion darauf, dass die Abweichung einen Zeichenvariantenschwellwert übersteigt. In einigen Ausführungsformen umfasst ein Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen ein Bestimmen, ob die Strichdaten des Handschriftzeichens mit einem Schriftartzeichen eines nutzerspezifischen Schriftartsatzes, der mit einem Nutzer assoziiert wird, der die Strichdaten eingibt, übereinstimmen, ein Auswählen eines passenden Schriftartzeichens, in Reaktion darauf, dass die Strichdaten mit dem Schriftartzeichen übereinstimmen, und ein Erzeugen eines neuen Schriftartzeichens, basierend auf den Strichdaten, in Reaktion darauf, dass die Strichdaten nicht mit irgendeinem Schriftartzeichen des Schriftartsatzes übereinstimmen.
  • Das Computerprogrammprodukt umfasst ein computerlesbares Speichermedium, das einen Code speichert, der durch einen Prozessor ausführbar ist, wobei der ausführbare Code einen Code umfasst, zum Durchführen von: einem Empfangen von Strichdaten von einem Handschrift-Eingabegerät, einem Identifizieren eines oder mehrerer Handschriftzeichen von den Strichdaten, einem Abbilden des einen oder der mehreren Handschriftzeichen auf wenigstens ein nutzerspezifisches Schriftartzeichen, basierend auf den Strichdaten, und einem Speichern, in einer Datei, eines Zeichens, das entsprechend dem nutzerspezifischen Schriftartzeichen kodiert ist. Das Computerprogrammprodukt kann auch ein Anzeigen eines Textzeichens, das durch die Zeichen-Kodierung unter Verwenden des nutzerspezifischen Schriftartzeichens gezeigt wird, umfassen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Eine speziellere Beschreibung der Ausführungsformen, die oben kurz beschrieben sind, wird durch Bezugnahme auf spezifische Ausführungsformen, die in den anhängenden Zeichnungen dargestellt werden, erbracht. Mit dem Verständnis, dass diese Zeichnungen nur einige Ausführungsformen zeigen und deshalb nicht als den Umfang begrenzend zu betrachten sind, werden die Ausführungsformen mit zusätzlicher Spezifizierung und Details durch den Gebrauch der begleitenden Zeichnungen beschrieben und erläutert, in welchen:
  • 1 ein schematisches Blockdiagramm ist, das eine Ausführungsform eines Systems zum reduzierten Speichern von Nutzer-Strichdaten darstellt;
  • 2 ein schematisches Blockdiagramm ist, das eine Ausführungsform einer Vorrichtung zum reduzierten Speichern von Nutzer-Strichdaten darstellt;
  • 3A ein schematisches Blockdiagramm ist, das eine Ausführungsform eines mobilen Gerätes darstellt, das Nutzer-Strichdaten empfängt;
  • 3B ein schematisches Blockdiagramm ist, das eine andere Ausführungsform eines Wortes in den Nutzer-Strichdaten darstellt;
  • 3C ein schematisches Blockdiagramm ist, das eine andere Ausführungsform eines Wortes in den Nutzer-Strichdaten darstellt;
  • 3D ein schematisches Blockdiagramm ist, das eine Ausführungsform einer Strichdatenanalyse darstellt;
  • 3E ein schematisches Blockdiagramm ist, das eine andere Ausführungsform einer Strichdatenanalyse darstellt;
  • 4A ein schematisches Flussdiagramm ist, das eine Ausführungsform eines Verfahrens zum reduzierten Speichern von Strichdaten darstellt;
  • 4B ein schematisches Flussdiagramm ist, das eine Ausführungsform eines Verfahrens zum Reproduzieren von Strichdaten darstellt;
  • 5 ein schematisches Flussdiagramm ist, das eine Ausführungsform eines Verfahrens zum reduzierten Speichern von Strichdaten darstellt; und
  • 6 ein schematisches Flussdiagramm ist, das eine andere Ausführungsform eines Verfahrens zum Speichern und Reproduzieren von Strichdaten darstellt.
  • DETAILIERTE BESCHREIBUNG
  • Wie durch einen Fachmann der Technik ersichtlich, können Aspekte der Ausführungsformen als ein System, ein Verfahren oder ein Programmprodukt verkörpert werden. Dementsprechend können Ausführungsformen die Form einer vollständigen Hardware-Ausführungsform, einer vollständigen Software-Ausführungsform (einschließlich Firmware, residenter Software, Mikrocode usw.) oder einer Ausführungsform annehmen, die Software- und Hardwareaspekte kombiniert, auf die hierin im Allgemeinen als ein “Schaltkreis", ein "Modul" oder ein "System" Bezug genommen wird. Darüber hinaus können Ausführungsformen die Form eines Programmprodukts annehmen, das in einem oder mehreren computerlesbaren Speichergeräten enthalten ist, welche einen maschinenlesbaren Code, einen computerlesbaren Code und/oder einen Programmcode, auf welche hiernach als Code Bezug genommen wird, speichern. Die Speichergeräte können materiell, nicht-transitorisch und/oder nicht-übertragend sein. Die Speichergeräte können keine Signale verkörpern. In einer bestimmten Ausführungsform verwenden die Speichergeräte Signale nur zum Zugriff auf einen Code.
  • Viele der funktionellen Einheiten, die in dieser Spezifikation beschrieben werden, wurden als Module bezeichnet, um besonders ihre Unabhängigkeit von Ausführungsformen zu hervorzuheben. Zum Beispiel kann ein Modul als ein Hardwareschaltkreis ausgeführt sein, der benutzerdefinierte VLSI-Schaltungen oder Gate-Arrays, standardmäßige Halbleiter wie Logikchips, Transistoren oder andere diskrete Komponenten umfasst. Ein Modul kann auch in programmierbaren Hardwaregeräten ausgeführt werden wie Field Programmable Gate-Arrays, programmierbarerer Array-Logik, programmierbaren Logik-Geräten und dergleichen.
  • Module können auch in einem Code und/oder in Software zur Ausführung der verschiedenen Arten der Prozesse verwendet werden. Ein identifiziertes Modul eines Codes kann zum Beispiel ein oder mehrere physikalische oder logische Blöcke eines ausführbaren Codes aufweisen, welche zum Beispiel als ein Objekt, ein Vorgang oder eine Funktion organisiert sein können. Nichts desto weniger muss die Ausführbarkeit eines identifizierten Moduls nicht physikalisch zusammen angeordnet sein, sondern kann verteilte Instruktionen aufweisen, die an unterschiedlichen Orten gespeichert sind, welche, wenn sie logisch zusammengeführt werden, das Modul umfassen und den festgelegten Zweck des Moduls erfüllen.
  • Tatsächlich kann ein Modul eines Codes eine einzige Instruktion oder viele Instruktionen sein und kann sogar über mehrere verschiedene Code-Segmente unter verschiedenen Programmen und über mehrere Speichergeräte verteilt sein. Auf ähnliche Weise können betriebliche Daten innerhalb von Modulen hierin identifiziert und dargestellt werden und können in irgendeiner geeigneten Form enthalten sein und innerhalb irgendeiner geeigneten Art von Datenstruktur organisiert sein. Die betrieblichen Daten können als ein einzelner Datensatz gesammelt sein oder können über verschiedene Orte, einschließlich über verschiedene computerlesbare Speichergeräte verteilt sein. Wo ein Modul oder Abschnitte eines Moduls in Software ausgeführt sind, werden die Softwareabschnitte auf einem oder mehreren computerlesbaren Speichergeräten gespeichert.
  • Irgendeine Kombination von einem oder mehreren computerlesbaren Medien können verwendet werden. Das computerlesbare Medium kann ein computerlesbares Speichermedium sein. Das computerlesbare Speichermedium kann ein Speichergerät sein, das den Code speichert. Das Speichergerät kann zum Beispiel ein elektronisches, magnetisches, optisches, elektromagnetisches, infrarotes, holografisches, mikromechanisches oder Halbleiter-System, Vorrichtung oder Gerät oder irgendeine geeignete Kombination der Vorhergehenden sein, ist aber nicht darauf begrenzt.
  • Spezifischere Beispiele (einer nicht erschöpfenden Liste) der Speichergeräte würde die Folgenden umfassen: eine elektrische Verbindung, die ein oder mehrere Geräte aufweist, eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Festwertspeicher (ROM), einen löschbaren programmierbaren Festwertspeicher (EPROM oder Flash-Speicher), einen tragbarer Kompaktdisk-Festwertspeicher (CD-ROM), ein optisches Speichergerät, ein magnetisches Speichergerät oder irgendeine geeignete Kombination der Vorhergehenden. In dem Kontext dieses Dokuments kann ein computerlesbares Speichermedium irgendein materielles Medium sein, das ein Programm für den Gebrauch durch oder in Verbindung mit einem Instruktionen ausführenden System, einer Vorrichtung oder einem Gerät enthalten oder speichern kann.
  • Ein Code zum Ausführen von Vorgängen für Ausführungsformen kann in irgendeiner Kombination von einer oder mehreren Programmsprachen, einschließlich einer Objekt orientierten Programmsprache wie Python, Ruby, Java, Smalltalk, C++ oder dergleichen und konventionellen prozesstechnischen Programmsprachen wie die "C"-Programmsprache oder dergleichen und/oder Maschinensprachen wie Assembly-Sprachen, geschrieben sein. Der Code kann vollständig auf dem Computer des Nutzers, teilweise auf dem Computer des Nutzers, als ein allein stehendes Softwarepaket, teilweise auf dem Computer des Nutzers und teilweise auf einem entfernten Computer oder vollständig auf dem entfernten Computer oder Server ausgeführt werden. In dem letzten Szenario kann der entfernte Computer mit dem Computer des Nutzers über irgendeine Art von Netzwerk, einschließlich eines lokalen Netzwerkes (LAN) oder eines Weitverkehrsnetzes (WAN), verbunden sein oder kann die Verbindung zu einem externen Computer hergestellt werden (zum Beispiel durch das Internet unter Verwendung eines Internet-Service-Providers).
  • Bezugnahmen in dieser gesamten Spezifikation auf "eine einzige Ausführungsform", "eine Ausführungsform" oder ähnliche Ausdrücke bedeuten, dass ein besonderes Merkmal, eine Struktur oder ein Kennzeichen, das in Verbindung mit der Ausführungsform beschrieben wird, in wenigstens einer Ausführungsform enthalten ist. Somit können, müssen jedoch nicht notwendigerweise, sich Erscheinungsformen der Begriffe "in einer einzigen Ausführungsform", "in einer Ausführungsform" und ähnliche Ausdrücke in dieser gesamten Spezifikation, alle auf die gleiche Ausführungsform beziehen, aber bedeuten "eine oder mehrere, aber nicht alle Ausführungsformen", außer es wird ausdrücklich auf andere Weise spezifiziert. Die Ausdrücke "einschließlich", "umfassend", "aufweisend" und Variationen davon bedeuten "einschließlich, aber nicht darauf begrenzt", außer es wird ausdrücklich auf andere Weise spezifiziert. Ein nummeriertes Auflisten von Gegenständen bedeutet nicht, dass irgendeiner oder alle der Gegenstände wechselseitig exklusiv sind, außer es wird ausdrücklich auf andere Weise spezifiziert. Die Ausdrücke "ein", "eine" und "der, die, das" beziehen sich auch auf "ein oder mehrere", außer es wird ausdrücklich auf andere Weise spezifiziert.
  • Darüber hinaus können die beschriebenen Merkmale, Strukturen oder Kennzeichen der Ausführungsformen in irgendeiner geeigneten Weise kombiniert werden. In der nachfolgenden Beschreibung wird eine Anzahl spezifischer Details bereitgestellt, wie Beispiele des Programmierens, der Software-Module, der Nutzerauswahl, der Netzwerktransaktionen, der Datenbank-Anfragen, der Datenbank-Strukturen, der Hardware-Module, der Hardwareschaltkreise, der Hardware-Chips, usw., um ein sorgfältiges Verständnis der Ausführungsformen bereitzustellen. Ein Fachmann der relevanten Technik wird jedoch erkennen, dass Ausführungsformen ohne ein oder mehrere der spezifischen Details oder mit anderen Verfahren, Komponenten, Materialien und so weiter praktiziert werden können. In anderen Fällen werden gut bekannte Strukturen, Materialen oder Vorgänge im Detail nicht gezeigt oder beschrieben, um verwirrende Aspekte einer Ausführungsform zu vermeiden.
  • Aspekte der Ausführungsformen werden unten mit Bezug auf schematische Flussdiagramme und/oder schematische Blockdiagramme der Verfahren, Vorrichtungen, Systeme und Programmprodukte gemäß den Ausführungsformen beschrieben. Es ist verständlich, dass jeder Block der schematischen Flussdiagramme und/oder schematischen Blockdiagramme und Kombinationen der Blöcke in den schematischen Flussdiagrammen und/oder schematischen Blockdiagrammen durch einen Code ausgeführt werden können. Dieser Code kann einem Prozessor eines Computers für einen allgemeinen Zweck, eines Computers für einen speziellen Zweck oder anderer programmierbarer Datenverarbeitungsvorrichtungen zur Verfügung gestellt werden, um eine Maschine zu erzeugen, so dass die Instruktionen, die über den Prozessor des Computers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Mittel zum Ausführen der Funktionen/Aktionen erzeugen, die in den schematischen Flussdiagrammen und/oder schematischen Blockdiagrammen in einem Block oder Blöcken spezifiziert werden.
  • Der Code kann auch in einem Speichergerät gespeichert werden, das einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Geräte anweisen kann, in einer bestimmten Weise zu funktionieren, so dass die Instruktionen, die in dem Speichergerät gespeichert sind, einen Herstellungsgegenstand erzeugen, einschließlich Instruktionen, welche die Funktionen/Aktionen ausführen, die in den schematischen Flussdiagrammen und/oder schematischen Blockdiagrammen in einem Block oder Blöcken spezifiziert werden.
  • Der Code kann auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Geräte geladen werden, um zu veranlassen, dass eine Serie von Verfahrensschritten auf dem Computer, der anderen programmierbaren Vorrichtung oder den anderen Geräten ausgeführt werden, um einen computerausführbaren Prozess zu erzeugen, so dass der Code, der auf dem Computer oder der anderen programmierbaren Vorrichtung ausgeführt wird, Prozesse zum Ausführen der Funktionen/Aktionen, die in den schematischen Flussdiagrammen und/oder schematischen Blockdiagrammen in einem Block oder Blöcken spezifiziert werden, bereitstellt.
  • Die schematischen Flussdiagramme und/oder schematischen Blockdiagramme in den Figuren stellen die Architektur, Funktionalität und den Betrieb der möglichen Ausführungen der Vorrichtungen, Systeme, Verfahren und Programmprodukte gemäß verschiedenen Ausführungsformen dar. In dieser Beziehung kann jeder Block in den schematischen Flussdiagrammen und/oder schematischen Blockdiagrammen ein Modul, ein Segment oder einen Abschnitt des Codes darstellen, welcher ein oder mehrere ausführbare Instruktionen des Codes zum Ausführen der spezifizierten logischen Funktion(en) umfasst.
  • Es sollte auch angemerkt werden, dass in einigen alternativen Ausführungen die Funktionen, die in dem Block notiert sind, außerhalb der in den Figuren notierten Reihenfolge auftreten können. Zum Beispiel können zwei Blöcke, die aufeinander folgend gezeigt werden, tatsächlich im Wesentlichen gleichzeitig ausgeführt werden oder können die Blöcke manchmal in der umgekehrten Reihenfolge, abhängig von der betroffenen Funktionalität, ausgeführt werden. Andere Schritte und Verfahren, die in der Funktion, Logik oder Wirkung mit einem oder mehreren der Blöcke, oder Abschnitten davon, der dargestellten Figuren äquivalent sind, können denkbar sein.
  • Obwohl verschiedene Pfeilarten und Linienarten in den Flussdiagrammen und/oder Blockdiagrammen verwendet werden können, sind sie als für den Umfang der entsprechenden Ausführungsformen nicht begrenzend zu verstehen. Tatsächlich können einige Pfeile und andere Verbindungen verwendet werden, um nur den logischen Fluss der gezeigten Ausführungsform anzuzeigen. Zum Beispiel kann ein Pfeil eine Warte- oder Überwachungsperiode von unspezifischer Dauer zwischen den nummerierten Schritten der gezeigten Ausführungsform anzeigen. Es ist auch anzumerken, dass jeder Block der Blockdiagramme und/oder Flussdiagramme und Kombinationen der Blöcke in den Blockdiagrammen und/oder Flussdiagrammen durch Hardware basierende Systeme für einen speziellen Zweck ausgeführt sein können, welche die speziellen Funktionen oder Aktionen oder Kombinationen der Hardware für einen speziellen Zweck und des Codes ausführen.
  • Die Beschreibung der Elemente in jeder Figur kann sich auf Elemente der weiteren Figuren beziehen. Ähnliche Nummern beziehen sich auf ähnliche Elemente in allen Figuren, einschließlich alternativer Ausführungsformen von ähnlichen Elementen.
  • Im Allgemeinen empfangen die beschriebenen Ausführungsformen Nutzer-Strichdaten, bilden Handschriftzeichen innerhalb der Strichdaten auf ein nutzerspezifisches Schriftartzeichen ab und speichern ein Zeichen, das entsprechend dem nutzerspezifischen Schriftartzeichen kodiert ist. Konventionelle Strichdaten verbrauchen aufgrund der hohen Abtastraten große Mengen an Speicherplatz, die in einer mittleren Dokumentgröße von 10–20 MB resultieren. Während ein Sichern der Strichdaten wie angeregt Datenpakete ergeben kann, um exakte Daten-Bit-Raten zu erreichen, die von dem Digitalisierungsstift für eine gegebene Canvas-Größe empfangen werden, ermöglicht dieses keine weitere Kompression und ergibt auch große Dokumentausmaße.
  • Um die Strichdaten in einem kleinen Format zu speichern, wird eine Kundennutzerschrift unter Verwenden der Handschrift des Nutzers erzeugt. Nur Zeichen-Kodierungen, die sich auf die Kundennutzerschrift beziehen, werden gespeichert (z.B. aus erkannten Handschriftzeichen in den Strichdaten). Bei der Wiedergabe werden Strichdaten von der Schriftart des Nutzers nachgebildet. Dies reduziert Speichererfordernisse für die Handschrift, ohne die Fähigkeit zu verlieren, sie als persönliche Handschrift zu zeigen. In einigen Ausführungsformen werden Speicheranforderungen auf bis zu 0,4% der originalen Dateigröße reduziert.
  • Verschiedene Varianten von Handschriftzeichen können in der Schriftart gespeichert und verwendet werden, wenn die Schriftart wiedergegeben wird, bzw. dreidimensional dargestellt wird (entweder willkürlich oder welche Variante auch immer am besten passt). Manchmal kann die Handschrift des Nutzers abhängig von der Stimmung des Nutzers unterschiedlich sein. Somit können einige Ausführungsformen mehrere Schriftarten des Nutzers speichern, die mit unterschiedlichen Stimmungen assoziiert sind. Auch können verschiedene Varianten der Handschrift des Nutzers für verschiedene Zeichenposition in dem Wort oder Zeichenposition relativ zu anderen Zeichen, usw., verwendet werden. Zum Beispiel durchkreuzen Menschen ihre doppelten t´s zusammen, so dass sie anders als zwei einzelnen t´s aussehen, die zusammengebracht werden.
  • Um die Strichdaten genauer zu reproduzieren, können Unterschiede zwischen gespeicherten Schriftart-Strichdaten und aktuellen Probedaten, zusammen mit den Zeichen-Kodierungen, ihren Positionen und Ausrichtungen gespeichert werden. Derartige Unterschiede enthalten nur zufällige Abweichungen von der Handschrift des Nutzers, so dass sie weniger Informationen enthalten als Strichdaten, was folglich in kleineren Bit-Raten als für die originalen Strichdaten und folglich in geringeren Verlusten resultiert. In dem gemittelten Studentenbeispiel wird die erforderliche Speicherrate für Notizen auf 0,5 MB/Monat oder 5 MB/Jahr reduziert, was eine 0,03% Kompressionsrate mit Bewahren des Anblicks, der Haptik, des Zeichens und der Individualität der Handschriftnotizen ergibt.
  • 1 zeigt ein System 100 für eine reduzierte Speicherung von Strichdaten. Das System 100 kann ein elektronisches Gerät 105, das selbst einen Prozessor 110 umfasst, einen Speicher 115, ein Strichdatenspeichermodul 120, ein Handschrift-Eingabegerät 125 und eine Netzwerkschnittstelle 130 einschließen. In einigen Ausführungsformen kann das elektronische Gerät mit einem anderen Gerät, wie einem Server 110, über ein Datennetzwerk verbunden sein. Das Netzwerk kann ein Internet, ein lokales Netzwerk, ein Weitverkehrsnetz, ein Wi-Fi-Netzwerk, ein mobiles Telefon-Netzwerk oder Kombinationen davon sein.
  • Das elektronische Gerät 105 kann irgendein digitales Gerät sein, das in der Lage ist, Nutzer-Strichdaten zu empfangen, einschließlich, aber nicht begrenzt auf einen Touchpad, einen Trackpad, einen Touchscreen und dergleichen. In einigen Ausführungsformen kann das elektronische Gerät ein elektronisches Gerät sein, in das ein Touch-Panel eingebaut ist, der in der Lage ist, mehrfache Touch-Klick-Aktionen und Ausgaben eines Klick-Vorgangs zu empfangen, einschließlich, aber nicht begrenzt auf ein mobiles Telefon, ein Smartphone, einen Tablet-Computer, einen Laptop-Computer, einen Desktop-Computer, eine tragbare Spielekonsole oder dergleichen. In anderen Ausführungsformen kann das elektronische Gerät 105 ein elektronisches Gerät für ein reduziertes Speichern von Nutzer-Strichdaten sein, wie ein Server oder ein Netzwerkspeichergerät, das Notizen vom Nutzergerät empfangen und speichern kann. Der Server kann in einer Ausführungsform einen Konversions-Dienst zum Bereitstellen für ein Nutzergerät und/oder ein Speichergerät zur Verfügung stellen.
  • Der Prozessor 110 kann in einer Ausführungsform irgendein bekanntes Steuergerät sein, das in der Lage ist computerlesbare Instruktionen auszuführen und/oder in der Lage ist, logische Operationen durchzuführen. Zum Beispiel kann der Prozessor 110 ein Mikrosteuergerät, ein Mikroprozessor, eine zentrale Verarbeitungseinheit (CPU), eine grafische Verarbeitungseinheit (GPU), eine Hilfsverarbeitungseinheit, eine FPGA oder ein ähnlich programmierbares Steuergerät sein. In einigen Ausführungsformen führt der Prozessor 110 Instruktionen aus, die in dem Speicher 115 gespeichert sind, um die Verfahren und Routinen, die hierin beschrieben sind, auszuführen. Der Prozessor 110 ist kommunikativ mit dem Speicher 115, dem Strichdatenspeichermodul 120 und dem Handschrift-Eingabegerät 125 gekoppelt.
  • Der Speicher 115 ist in einer Ausführungsform ein computerlesbares Speichermedium. In einigen Ausführungsformen umfasst der Speicher 115 einen Direktzugriffsspeicher (RAM), einschließlich eines dynamischen RAM (DRAM), synchronen dynamischen RAM (SDRAM) und/oder statischen RAM (SRAM). In einigen Ausführungsformen umfasst der Speicher 115 nicht-flüchtige Computerspeichermedien. Zum Beispiel kann der Speicher 115 ein Festplattenlaufwerk, einen Flash-Speicher oder irgendein anderes geeignetes nicht-flüchtiges Computerspeichergerät aufweisen. In einigen Ausführungsformen umfasst der Speicher 115 sowohl flüchtige als auch nicht-flüchtige Computerspeichermedien.
  • In einigen Ausführungsformen speichert der Speicher 115 Daten, die sich auf ein Konvertieren von Strichdaten beziehen, zum Beispiel kann der Speicher 115 nutzerspezifische Schriftarten speichern und dergleichen. In einigen Ausführungsformen speichert der Speicher 115 auch Programmcodes und darauf bezogene Daten, wie ein Betriebssystem oder andere Steuergeräte-Algorithmen, die auf dem elektronischen Gerät 105 arbeiten.
  • Das Strichdatenspeichermodul 120 ist in einer Ausführungsform konfiguriert, um ein Handschriftzeichen in den Strichdaten zu identifizieren, das Handschriftzeichen auf ein nutzerspezifisches Schriftartzeichen abzubilden, basierend auf den Strichdaten, und eine Datei (z.B. eine computerlesbare Datei) zu erzeugen, die ein Zeichen, das entsprechend dem Handschriftzeichen und zu dem nutzerspezifischen Schriftartzeichen kodiert ist, speichert. Das Strichdatenspeichermodul kann eine Größe, Position, Ausrichtung und/oder eine Abweichung zwischen dem Handschriftzeichen und einem Modellzeichen bestimmen, wobei die Datei ferner die Größe, Position, Ausrichtung und/oder Abweichung speichert.
  • In einigen Ausführungsformen bestimmt das Strichdatenspeichermodul 120, ob die Strichdaten des Handschriftzeichens mit einem Schriftartzeichen eines nutzerspezifischen Schriftartsatzes übereinstimmen, der mit einem Nutzer assoziiert wird, welcher die Strichdaten eingibt und entweder das passende Schriftartzeichen in Reaktion darauf, dass die Strichdaten mit dem Schriftartzeichen übereinstimmen, auswählt, oder basierend auf den Strichdaten ein neues Schriftartzeichen erzeugt, in Reaktion darauf, dass die Strichdaten nicht mit irgendeinem Schriftartzeichen des Schriftartsatzes übereinstimmen.
  • In einer Ausführungsform kann das Strichdaten-Speichermodul 120 als ein Gerätetreiber für das Handschrift-Eingabegerät 125 ausgeführt sein, das eine Softwareschnittstelle zu dem Handschrift-Eingabegerät 125 bereitstellt. In einer anderen Ausführungsform kann das Datenspeichermodul 120 als Steuergerät und/oder Firmware des Handschrift-Eingabegerätes 125 ausgeführt sein.
  • Das Handschrift-Eingabegerät 125 ist in einer Ausführungsform ein Eingabegerät, das eine Handschrifteingabe empfängt und Strichdaten, die einer Nutzerhandschrift entsprechen, erzeugt. In bestimmten Ausführungsformen umfasst das Handschrift-Eingabegerät 125 einen taktilen Sensor in einer Schreiboberfläche, der verwendet wird, um Positionen und Bewegungen in Strichdaten zu übertragen, die für ein oder mehrere Zeichen repräsentativ sind (z.B. Buchstaben, Symbole, Worte usw.). Zum Beispiel kann das Handschrift-Eingabegerät 125 einen Touch-Panel, einen Digitalisierer, ein Grafiktablett, einen Touchpad, einen Trackpad oder andere geeignete berührungssensitive Schreiboberflächen einschließen. In bestimmten Ausführungsformen verfolgt das Handschrift-Eingabegerät 125 die Bewegung eines Stiftes oder eines Eingabestiftes, mit dem der Nutzer (z.B. handschriftlich) Buchstaben, Zeichen, Worte und dergleichen eingibt. Zum Beispiel kann das Handschrift-Eingabegerät 125 einen digitalen Stift einschließen (z.B. einen aktiven digitalen Stift), einen Lichtstift, einen Eingabestift oder ein anderes Stift/Eingabestift-Bewegungsverfolgungsgerät.
  • In einigen Ausführungsformen umfasst das Handschrift-Eingabegerät 125 ein Bildaufnahme-Eingabegerät, das verwendet wird, um die Bilddaten in Strichdaten, die repräsentativ für ein oder mehrere Zeichen sind, zu übersetzen. Zum Beispiel kann das Handschrift-Eingabegerät 125 einen Scanner, einen Bilderzeuger, eine digitale Kamera, einen kamerabasierten digitalen Stift oder andere geeignete Bildaufnahmegeräte umfassen. In weiteren Ausführungsformen kann das Handschrift-Eingabegerät 125 eine Kombination aus berührungsempfindlicher Schreiboberfläche, einem Stift/Eingabestift und/oder einem Bildaufnahmegerät umfassen. In bestimmten Ausführungsformen kann das Handschrift-Eingabegerät 125 mit einem Anzeigegerät integriert sein, zum Beispiel als ein Touchscreen oder eine ähnliche berührungsempfindliche Anzeige.
  • 2 zeigt eine Strichdaten-Speichervorrichtung 200 zum reduzierten Speichern von Strichdaten. Die Strichdaten-Speichervorrichtung 200 kann ein Strichdaten-Speichermodul 120 aufweisen und kann verbindbar mit dem Handschrift-Eingabegerät 125 gekoppelt sein, das Eingabeschriftdaten empfängt. Wie gezeigt, umfasst das Strichdaten-Speichermodul 120 ein Kennzeichenmodul 205, ein Korrelationsmodul 210 und ein Speichermodul 215. In einigen Ausführungsformen kann die Strichdaten-Speichervorrichtung 200 auch ein oder mehrere von einem Präsentationsmodul 220, einem Erkennungsmodul 225, einem Positionsmodul 230, einem Dimensionsmodul 235, einem Emotionsmodul 240, einem Vergleichsmodul 245, einem Anpassungsmodul 250, einem Kreationsmodul 255 und einem Löschungsmodul 260 einschließen. Die Module 205260 können zusammenhängend miteinander gekoppelt sein. In bestimmten Ausführungsformen kann jedes der Module 205260 in einer Hardwareschaltung, wie oben beschrieben, ausgeführt sein. In anderen Ausführungsformen können ein oder mehrere Module 205260 als Firmware und/oder Software sowie einem Programmcode ausgeführt sein, der in einem computerlesbaren Medium, wie oben beschrieben, eingebaut ist.
  • Das Zeichenmodul 205 ist in einer Ausführungsform konfiguriert, um ein oder mehrere Handschriftzeichen in den Eingabe-Strichdaten zu identifizieren. Das Handschriftzeichen kann aus einem oder mehreren Strichen der Eingabe-Strichdaten zusammengesetzt sein. In bestimmten Ausführungsformen ist das Zeichenmodul 205 kommunikativ mit dem Handschrift-Eingabegerät 125 gekoppelt, wobei das Zeichenmodul 205 Strichdaten von dem Handschrift-Eingabegerät 125 empfängt und/oder Strichdaten von den Eingaben, die durch das Handschrift-Eingabegerät 125 gemessen werden, erzeugt. Dementsprechend empfängt das Zeichenmodul 205 Strichdaten von dem Handschrift-Eingabegerät 125, wobei die Strichdaten eine Nutzerhandschrift umfassen, und analysiert die Strichdaten, um wenigstens ein Handschriftzeichen zu identifizieren. Wie hierin verwendet, bezieht sich ein Handschriftzeichen auf ein Symbol, einen Buchstaben, ein Bildzeichen, eine Markierung, ein Icon, ein Logogramm, ein Phonogramm oder andere Zeichen, die durch den Nutzer (z.B. handschriftlich) zusammengestellt werden. Beispiele von Handschriftzeichen umfassen, sind aber nicht begrenzt auf Buchstaben, Symbole, Logogramme (z.B. Chinesische Zeichen) Doodles (z.B. Smiley-Gesichter oder Herzen), Interpunktionszeichen und dergleichen.
  • In bestimmten Ausführungsformen können Handschriftzeichen benachbarte Handschriftbuchstaben einschließen, wobei die benachbarten Handschriftbuchstaben als ein einziges Zeichen dargestellt sind. Zum Beispiel durchkreuzen Nutzer zwei benachbarte Buchstaben “t” mit einer einzelnen Linie beim Handschreiben, somit kann ein Doppelbuchstabe “t” als ein einzelnes Zeichen dargestellt werden. Als anderes Beispiel können zwei benachbarte Buchstaben “f” auch durch ein einziges Zeichen dargestellt werden. In bestimmten Ausführungsformen können benachbarte handschriftliche Buchstaben als einzelne unterschiedliche handschriftliche Buchstaben falsch interpretiert werden. Zum Beispiel kann ein doppeltes kleines “L” als großes “U” falsch interpretiert werden, ein doppeltes kleines “I” kann als ein kleines “U” falsch interpretiert werden und/oder ein doppeltes “V” kann als ein “W” falsch interpretiert werden. In diesen Situationen gestaltet das Korrelationsmodul 210 jedoch die falsch interpretierten Zeichen als nutzerspezifische Schriftartzeichen, welche mit der Handschrifteingabe übereinstimmen, wie in größerem Detail unten beschrieben, wodurch die Falschinterpretation gemildert wird.
  • In einigen Ausführungsformen führt das Zeichenmodul 205 eine Handschrifterkennung von den Strichdaten durch, bestimmt eine Zeichenposition, Größe und Ausrichtung des Handschriftzeichens und/oder bestimmt eine Nutzerbewegung, die mit dem Handschriftzeichen assoziiert ist. In weiteren Ausführungsformen kann das Zeichenmodul 205 ein oder mehrere Hilfsmodule, wie das Erkennungsmodul 225, das Positionsmodul 230, das Dimensionsmodul 235 und/oder das Emotionsmodul 240 zum Ausführen dieser Funktionen einschließen. Zusätzlich kann das Zeichenmodul 205 ein identifiziertes Handschriftzeichen mit dem Korrelationsmodul 210 und/oder dem Speichermodul 215 kommunizieren.
  • Das Erkennungsmodul 225 ist in einer Ausführungsform konfiguriert, um Handschrifterkennung von den Strichdaten durchzuführen, um ein oder mehrere Handschriftzeichen in den Eingabe-Strichdaten zu identifizieren (z.B. Eingabe der Nutzerhandschrift). Das Erkennungsmodul 225 kann irgendeine Anzahl von Handschrift-Erkennungsanalysen ausführen, um Strichdaten zu interpretieren. Beispielsweise umfassen die Handschrift-Erkennungsanalysen Zeichenerkennung (z.B. optische Zeichenerkennung, dynamische Zeichenerkennung und/oder intelligente Zeichenerkennung), Worterkennung, Handschrift-Bewegungsanalysen, Mutererkennung und dergleichen. Das Erkennungsmodul 225 kann ein oder mehrere Werkzeuge und/oder Algorithmen für das Durchführen einer Handschrift-Erkennungsanalyse umfassen.
  • In einigen Ausführungsformen segmentiert das Erkennungsmodul 225 die Strichdaten in eine Vielzahl von Handschriftzeichen (z.B. Buchstaben, Symbole oder andere Zeichen). In einer weiteren Ausführungsform kann das Erkennungsmodul 225 Kombinationen von Buchstaben, Symbolen und dergleichen mit einzigartigen Handschriftformen erkennen, so dass die Buchstaben der Kombination in der bestimmten Kombination unterschiedlich geschrieben werden, als wenn sie außerhalb der Kombination geschrieben werden. Zum Beispiel durchkreuzen einige Nutzer benachbarte Buchstaben “T” mit einer einzigen Line beim Handschreiben. Das Erkennungsmodul 225 kann ein Doppel-“T” als ein einziges Zeichen erkennen. Als anderes Beispiel werden bestimmte Buchstaben, wenn sie kursiv geschrieben werden, unterschiedlich geschrieben, wenn unmittelbar ein Buchstabe “O” folgt. Das Erkennungsmodul 225 kann jede Kombination des Buchstabens “O”, gefolgt von einem anderen Buchstaben, als einzigartige Zeichen erkennen.
  • In bestimmten Ausführungsformen kann das Erkennungsmodul 225 ein handschriftliches Zeichen in einen digitalen Text übersetzen, wie ein Textzeichen, das durch einen Computer verwendet wird. Zum Beispiel kann das Erkennungsmodul 225 ein Textzeichen identifizieren, das mit dem Handschriftzeichen übereinstimmt, basierend auf der Handschrifterkennung. Der digitale Text kann in einer Ausführungsform unter Verwenden von einer oder mehrerer Zeichen-Kodierungen dargestellt werden, wobei jedes einzigartige Zeichen durch eine einzigartige Zeichen-Kodierung, die dem identifizierten Textzeichen entspricht, dargestellt werden kann. Zum Beispiel kann das Erkennungsmodul 225 das Handschriftzeichen in eine Einheitscode-Textzeichen-Kodierung oder andere Zeichen-Kodierungsschemata übersetzen. Wo das handgeschriebene Zeichen nicht mit einer existierenden Zeichen-Kodierung (z.B. einer existierenden Einheitscode-Textzeichen-Kodierung) übereinstimmt, kann das Erkennungsmodul 225, um dem Handschriftzeichen zu entsprechen, eine neue Kodierung erzeugen.
  • Das Positionsmodul 230 ist in einer Ausführungsform konfiguriert, um eine Zeichenposition des Handschriftzeichens zu bestimmen. In einigen Ausführungsformen umfasst die Zeichenposition einen Bildschirm-(z.B. einen angezeigten)Ort, der Strichdaten, die zu dem Handschriftzeichen gehören, zeigt. In anderen Ausführungsformen ist die Zeichenposition ein Ort, der mit Bezug auf das Handschriftzeichen-Eingabegerät 125 definiert wird, zum Beispiel eine Stift/Eingabestift-Koordinate auf der Schreiboberfläche. Die Zeichenposition kann eine Ecke oder einen Startpunkt des Handschriftzeichens, das Zentrum des Handschriftzeichens, einen Bereich, der durch das Handschriftzeichen eingenommen wird, oder dergleichen anzeigen.
  • In bestimmten Ausführungsformen bestimmt das Positionsmodul 230 die Zeichenposition eines ersten Buchstabens/Zeichens in einem Wort oder einer Linie der Strichdaten (z.B. Nutzerhandschrift). Nachfolgende Buchstaben/Zeichen in dem gleichen Wort/der Linie können mit der gleichen Zeichenposition wie der erste Buchstabe/das Zeichen assoziiert werden. Zum Beispiel kann das Positionsmodul 230 die Zeichenposition eines nachfolgenden Zeichens mit Bezug auf die Zeichenposition des vorhergehenden Zeichens identifizieren.
  • In einigen Ausführungsformen kann das Positionsmodul 230 die Zeichenposition mit Bezug auf einen Rand bestimmen, um somit eine Leertaste des Handschrifttextes zu erhalten. Zum Beispiel kann die Zeichenposition eines ersten Buchstabens/Zeichens in einem Wort oder einer Linie einen horizontalen Abstand von einem rechten und/oder linken Rand und einen vertikalen Abstand von einem obern und/oder unteren Rand anzeigen. Der Rand kann ein physikalischer Rand des Handschrift-Erkennungsgerätes 125 oder ein virtueller Rand, der durch ein Programm definiert wird, das den Handschrifttext empfängt (z.B. eine Notiz aufnehmende Applikation, eine Handschrift erfassende Applikation oder dergleichen).
  • Das Positionsmodul 230 sendet in einer Ausführungsform Zeichenpositionsdaten 215, die mit den Strichdaten assoziiert sind, zu dem Speichermodul 215, wobei das Speichermodul 215 die Zeichenpositionen, wie weiter unten im Detail erörtert wird, speichert. Das Präsentationsmodul 220 greift in bestimmten Ausführungsformen auf die gespeicherten Zeichenpositionen zu, um Eingabepositionen und/oder einen Abstand zu erhalten, wenn (z.B. beim Anzeigen) die Nutzerhandschrift (z.B. die Strichdaten) reproduziert wird.
  • Das Dimensionsmodul 235 ist in einer Ausführungsform konfiguriert, um eine Größe und Ausrichtung des Handschriftzeichens unter Verwenden der Strichdaten zu berechnen. In einigen Ausführungsformen bezieht sich die Größe des Handschriftzeichens auf eine Schriftartgröße, zum Beispiel eine Schriftartgröße eines nutzerspezifizierten Schriftartzeichens, das am besten zu den Strichdaten passt. In anderen Ausführungsformen bezieht sich die Größe des Handschriftzeichens auf die Dimensionen der Strichdaten (z.B. physikalische Strichgröße), die dem Handschriftzeichen entsprechen. In weiteren Ausführungsformen bezieht sich die Größe des Handschriftzeichens auf eine vertikale Dimension des Handschriftzeichens. In einer Ausführungsform kann die Größe des Handschriftzeichens durch das Speichermodul 215 gespeichert werden und durch das Präsentationsmodul 220 verwendet werden, wenn die Strichdaten (z.B. der Nutzerhandschrift) reproduziert werden.
  • In einigen Ausführungsformen bezieht sich die Ausrichtung des Handschriftzeichens auf eine Abschrägung des Handschriftzeichens, wie ein vorherrschender Winkel eines aufwärts gerichteten oder abwärts gerichteten Strichs des Handschriftzeichens. Die Abschrägung kann durch einen Winkel von der vertikalen Achse ausgedrückt werden. In anderen Ausführungsformen bezieht sich die Ausrichtung des Handschriftzeichens auf einen Versatz oder eine Scherung des Handschriftzeichens. In einer Ausführungsform kann die Ausrichtung des Handschriftzeichens durch das Speichermodul 215 gespeichert werden und durch das Präsentationsmodul 220 verwendet werden, wenn die Strichdaten (z.B. der Nutzerhandschrift) reproduziert werden. In einer anderen Ausführungsform kann das Dimensionsmodul 235 die Ausrichtung des Handschriftzeichens dem Emotionsmodul 240 anzeigen, wobei das Emotionsmodul 240 basierend auf der Ausrichtung eine Nutzeremotion identifiziert.
  • In einigen Ausführungsformen berechnet das Dimensionsmodul 235 einen horizontalen Maßstab-Faktor des Handschriftzeichens, basierend auf den Strichdaten. Der horizontale Maßstab-Faktor kann als Verhältnis der Breite des Handschriftzeichens zu der Breite des Referenzzeichens berechnet werden, wie ein nutzerspezifisches Schriftartzeichen, das dem Handschriftzeichen entspricht. Das Dimensionsmodul 235 kann den horizontalen Maßstab-Faktor in Kombination mit der Größe des Handschriftzeichens verwenden, um sowohl die Breite als auch die Höhe des Handschriftzeichens genau auszudrücken. Zum Beispiel kann das Dimensionsmodul 235 ein großes, aber enges Handschriftzeichen unter Verwenden einer Größe, die auf der Handschriftzeichenhöhe und einem horizontalen Maßstab-Faktor basiert, darstellen, basierend auf der Breite des Handschriftzeichens. In einer Ausführungsform kann der horizontale Maßstab-Faktor durch das Speichermodul 215 gespeichert werden und durch das Präsentationsmodul 220 verwendet werden, wenn die Strichdaten (z.B. die Nutzerhandschrift) reproduziert werden.
  • Das Emotionsmodul 240 ist in einer Ausführungsform konfiguriert, um eine Nutzeremotion, basierend auf physikalischen Kennzeichen und/oder Mustern eines Handschriftzeichens, zu identifizieren. Zum Beispiel kann das Bewegungsmodul 240 eine Nutzeremotion basierend auf der Ausrichtung des Handschriftzeichens identifizieren. Große Forschungen sind erfolgt, die zeigen, welche Emotionen in den physikalischen Zeichen und/oder Mustern der Handschrift offenbart werden. Zum Beispiel kann die Abschrägung (z.B. nach rechts oder nach links) einer Handschrift des Nutzers mit einer Emotion, die der Nutzer beim Schreiben empfindet, korreliert werden. Das Bewegungsmodul 240 kann in bestimmten Ausführungsformen die physikalischen Zeichen und/oder Muster einer Handschrift des Nutzers überprüfen, um die entsprechende Emotion zu identifizieren.
  • In einigen Ausführungsformen zeigt das Emotionsmodul 240 die identifizierte Emotion dem Korrelationsmodul 210 und/oder dem Speichermodul 215 an. Das Korrelationsmodul 210 und/oder das Speichermodul 215 können dann das Handschriftzeichen mit einer besonderen nutzerspezifischen Schriftart, basierend auf der identifizierten Emotion, assoziieren. Zum Beispiel kann eine Vielzahl von nutzerspezifischen Schriftarten für einen bestimmten Nutzer gespeichert werden, wobei jede nutzerspezifische Schriftart mit einer besonderen Emotion verbunden ist. In einer Ausführungsform kann das Korrelationsmodul 210 das Handschriftzeichen zu einem nutzerspezifischen Schriftartzeichen gestalten, das der identifizierten Emotion entspricht. In einer anderen Ausführungsform kann das Speichermodul 215 eine Indikation der Emotion, die mit einer Zeichen-Kodierung assoziiert ist, speichern, so dass eine nutzerspezifische Schriftart, die mit der Emotion assoziiert wird, mit der Zeichen-Kodierung assoziiert ist.
  • Das Korrelationsmodul 210 ist in einer Ausführungsform konfiguriert, um das eine oder die mehreren Handschriftzeichen auf wenigstens eine nutzerspezifische Schriftart, basierend auf den Strichdaten, abzubilden. Das Korrelationsmodul 210 empfängt, von dem Zeichenmodul 205, eine Indikation von einem oder mehreren Handschriftzeichen, die durch das Zeichenmodul 205 identifiziert wurden. Zusätzlich sendet das Korrelationsmodul 210 die Zeichenabbildung an das Speichermodul 215 in Reaktion auf das Abbilden von einem oder mehreren Handschriftzeichen auf wenigstens ein nutzerspezifisches Schriftartzeichen. In einigen Ausführungsformen übersetzt das Korrelationsmodul 210 Strichdaten in einen digitalen Text, der zum Beispiel Textzeichen identifiziert, die den Handschriftzeichen, welche durch das Zeichenmodul 205 identifiziert wurden, entsprechen. In anderen Ausführungsformen übersetzt das Zeichenmodul 205 Strichdaten in digitalen Text und liefert den digitalen Text an das Korrelationsmodul 210.
  • Wie hierin verwendet, bezieht sich ein nutzerspezifisches Schriftartzeichen auf ein Zeichen einer nutzerspezifischen Computerschriftart. Die nutzerspezifische Computerschriftart kann eine benutzerdefinierte Computerschriftart sein, basierend auf der Handschrift des Nutzers. Die nutzerspezifische Computerschriftart umfasst eine Vielzahl von Schriftartzeichen, wobei jedes Schriftartzeichen einen Stil, in dem ein Textzeichen dargestellt und/oder angezeigt wird, angibt. In bestimmten Ausführungsformen kann das Handschriftzeichen zwei benachbarte Handschriftbuchstaben einschließen, wobei das Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen ein Erzeugen eines einzigen nutzerspezifischen Schriftartzeichens umfasst, das zwei benachbarte Handschriftbuchstaben darstellt.
  • In einer Ausführungsform vergleicht das Korrelationsmodul 210 die Strichdaten mit einer Vielzahl von nutzerspezifischen Schriftartzeichen, um ein Schriftartzeichen zu finden, das am besten zu dem Handschriftzeichen passt. In einer Ausführungsform erzeugt das Korrelationsmodul 210 ein neues nutzerspezifisches Schriftartzeichen, basierend auf den Strichdaten, wenn keine beste Übereinstimmung gefunden wird. Dementsprechend kann das Korrelationsmodul 210 die nutzerspezifische Computerschriftart in Reaktion auf das Strichdatenspeichermodul 120, das zusätzliche Strichdaten von dem Handschrift-Eingabegerät 125 empfängt, dynamisch erzeugen.
  • In einer anderen Ausführungsform kann das Korrelationsmodul 210 eine Abweichung zwischen den Strichdaten und einem Bezugszeichen, wie einem existierenden nutzerspezifischen Schriftartzeichen, bestimmen. Wenn die Abweichung einen Zeichenvariantenschwellwert überschreitet, kann das Korrelationsmodul 210 ein neues nutzerspezifisches Schriftartzeichen erzeugen. Andererseits kann das Korrelationsmodul 210 ein nutzerspezifisches Schriftartzeichen auswählen, das die geringste Abweichung von den Strichdaten aufweist. In Reaktion auf das Abbilden eines Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen, kann das Korrelationsmodul 210 die Strichdaten, welche dem Handschriftzeichen entsprechen, löschen. In bestimmten Ausführungsformen kann das Korrelationsmodul 210 ein oder mehrere Hilfsmodule umfassen, wie das Vergleichsmodul 245, das Anpassungsmodul 250, das Kreationsmodul 255 und/oder das Löschungsmodul 260 zum Durchführen der obigen Funktionen.
  • Das Vergleichsmodul 245 ist in einer Ausführungsform konfiguriert, um zu bestimmen, ob die Strichdaten des Handschriftzeichens zu einem Schriftartzeichen passen. In einigen Ausführungsformen gehört das Schriftartzeichen zu einer nutzerspezifischen Schriftart, die mit einer Nutzereingabe der Strichdaten assoziiert ist. In bestimmten Ausführungsformen, die bestimmen, ob die Strichdaten des Handschriftzeichens den Schriftartzeichen entsprechen, umfasst das Vergleichsmodul 245 Vergleichsdimensionen (z.B. Höhe und/oder Breite), Liniendicke, Ausrichtung oder dergleichen zwischen den Strichdaten (die zu dem Handschriftzeichen gehören) und dem Schriftartzeichen.
  • In einigen Ausführungsformen kann das Vergleichen der Strichdaten mit einem Schriftartzeichen einschließen, dass das Vergleichsmodul 245 Abweichungen zwischen den Strichdaten (z.B. dem Handschriftzeichen) und den Schriftartzeichen identifiziert. Zum Beispiel kann das Vergleichsmodul 245 Linien, Kurven, Ecken, Schnittstellen oder andere Merkmale der Strichdaten mit Merkmalen eines Modell-(eines Referenz-)Zeichens, wie dem Schriftartzeichen, vergleichen. In bestimmten Ausführungsformen werden Abweichungen in einer Datei gespeichert, um die Nutzerhandschrift (z.B. Strichdaten) durch Modifizieren des Schriftartzeichens, basierend auf den gespeicherten Abweichungen, besser zu reproduzieren, wie in größerem Detail unten beschrieben.
  • Wo korrespondierende Merkmale in beiden, den Strichdaten und den Schriftartzeichen, existieren, kann das Vergleichsmodul 245 die Abweichungen zwischen den Strichdatenmerkmalen und den Schriftartzeichenmerkmalen identifizieren. In einer Ausführungsform kann das Korrelationsmodul 210 ein bestes Zusammenpassen (z.B. eine engste Übereinstimmung) des Schriftartzeichens basierend auf dem Merkmalsvergleich auswählen. In einer anderen Ausführungsform kann das Korrelationsmodul 210 ein neues Schriftartzeichen erzeugen, wenn die Abweichungen einen Zeichenvariantenschwellwert übersteigen. Wo entsprechende Merkmale nicht existieren, kann das Korrelationsmodul 210 das Schriftartzeichen als einen Kandidaten für ein Übereinstimmungszeichen eliminieren und entweder ein anderes Schriftartzeichen prüfen oder ein neues Schriftartzeichen, basierend auf den Strichdaten, erzeugen.
  • In bestimmten Ausführungsformen kann der nutzerspezifische Schriftartsatz zwei oder mehr Varianten eines Textzeichens (z.B. eines Buchstabens) aufweisen, wobei jede Variante ihre eigene Zeichencodierung aufweist. Zum Beispiel kann der nutzerspezifische Schriftartsatz mehrfache Versionen eines Buchstabens aufweisen, um Varianten der Handschrift zwischen den gleichen Buchstaben aufzunehmen, wenn dieser zu Beginn in der Mitte und/oder am Ende eines Wortes verwendet wird. Als anderes Beispiel kann die nutzerspezifische Schriftart mehrere Versionen eines Buchstabens einschließen, um Variationen in der Nutzeremotion bei der Handschrift aufzunehmen. Dementsprechend kann in einer Ausführungsform das Vergleichsmodul 245 die Strichdaten vergleichen, um mehrfache Schriftartzeichen, die zu unterschiedlichen Variationen des gleichen Buchstabens gehören, zu vergleichen, wobei das Korrelationsmodul 210 basierend auf dem Vergleich eine bestpassende Variante auswählt.
  • Das Anpassungsmodul 250 ist in einer Ausführungsform konfiguriert, um zu bestimmen, ob die Strichdaten des Handschriftzeichens mit einer nutzerspezifischen Schriftart übereinstimmen, die mit einer Nutzereingabe der Strichdaten assoziiert ist. Zum Beispiel kann das Anpassungsmodul 250 Daten verwenden, die von dem Vergleichsmodul 245 beim Bestimmen, ob die Strichdaten mit einem Schriftartzeichen übereinstimmen, empfangen werden. In einigen Ausführungsformen kann das Anpassungsmodul 250 bestimmen, ob die Strichdaten mit einem oder mehreren der Schriftartzeichendaten übereinstimmen. In einer Ausführungsform stellt das Anpassungsmodul 250 fest, dass die Strichdaten nicht mit einem Kandidaten der Schriftartzeichen übereinstimmen, wenn die Strichdaten Zeichenmerkmale aufweisen (wie Linien, Kurven, Ecken, Schnittstellen oder andere Markierungen), die in einem Schriftartzeichen fehlen.
  • In einigen Ausführungsformen wird das Anpassungsmodul 250 verwendet, um dynamisch neue Schriftartzeichen des nutzerspezifischen Schriftartsatzes zu erzeugen, wobei neue Schriftartsatzzeichen in Reaktion darauf erzeugt werden, dass die Strichdaten starke Unterschiede gegenüber den bestehenden Schriftartzeichen in dem nutzerspezifischen Schriftartsatz aufweisen. Als solches kann das Anpassungsmodul 250 auf ein oder zwei Zeichen verschiedene Schwellwerte beziehen, wenn bestimmt wird, ob die Schriftdaten mit einem bestehenden Schriftartzeichen übereinstimmen. In weiteren Ausführungsformen kann das Anpassungsmodul 250 ein Textzeichen identifizieren und/oder ein Zeichen für eine Buchstaben/Zeichen-Variante kodieren, die mit den Strichdaten übereinstimmt (z.B. Handschriftzeichen), wobei die Zeichen-Kodierung die spezielle Variante angibt. Wo das Handschriftzeichen nicht mit einer existierenden Zeichen-Kodierung (z.B. einem existierenden Einheitscode-Textzeichen) übereinstimmt, kann das Anpassungsmodul 250 eine neue Kodierung erzeugen, um dem Handschriftzeichen zu entsprechen. Beispiele der Handschriftzeichen ohne vorher existierender Zeichen-Kodierung umfassen, sind aber nicht begrenzt auf Zeichenkombinationen (z.B. einem Doppel-“T”), Icons und Doodles (z.B. Herzen). Ferner kann das Anpassungsmodul und/oder das Korrelationsmodul 210 eine neue Zeichenkodierung nach einem Identifizieren einer neuen Buchstaben/Zeichen-Variante einer existierenden Zeichen-Kodierung erzeugen.
  • In bestimmten Ausführungsformen ist das Anpassungsmodul 250 ferner konfiguriert, um das bestpassende Schriftartzeichen aus dem nutzerspezifischen Schriftartsatz auszuwählen, das mit dem Handschriftzeichen übereinstimmt, wobei das Speichermodul 215 eine Zeichen-Kodierung des ausgewählten nutzerspezifischen Schriftartzeichens speichert. Zum Beispiel kann das Anpassungsmodul 250 ein vorher existierendes nutzerspezifisches Schriftartzeichen auswählen, das die kleinste Abweichung von den Strichdaten aufweist. In einigen Ausführungsformen wählt das Anpassungsmodul 250 das bestpassende Schriftartzeichen in Reaktion darauf, dass die Abweichung unter einem Zeichenvariantenschwellwert liegt, aus. Andererseits stellt das Korrelationsmodul 210, wenn die Abweichung oberhalb des Zeichenvariantenschwellwerts liegt, fest, dass das Handschriftzeichen ein neues Zeichen ist oder eine neue Variante eines existierenden Schriftartzeichens und das Kreationsmodul 255 erzeugt ein neues Schriftartzeichen. In einigen Ausführungsformen zeigt das Anpassungsmodul 250 dem Löschungsmodul 260 an, dass ein nutzerspezifisches Schriftartzeichen ausgewählt wurde, wobei das Löschungsmodul 260 die Strichdaten, die für das Auswählen des nutzerspezifischen Schriftartzeichens verwendet wurden, löscht.
  • Das Kreationsmodul 255 ist in einer Ausführungsform konfiguriert, um ein neues Schriftartzeichen, basierend auf den Strichdaten, zu erzeugen. Das Kreationsmodul 255 ist in der Lage dynamisch neue Schriftartzeichen von den Strichdaten zu erzeugen, wenn existierende Schriftartzeichen keine geeigneten Übereinstimmungen mit den Strichdaten aufweisen. Zum Beispiel kann das Kreationsmodul 255 ein neues Schriftartzeichen in Reaktion darauf, dass das Anpassungsmodul 250 bestimmt, dass die Strichdaten nicht mit irgendeinem existierenden nutzerspezifischen Schriftartsatz übereinstimmen, erzeugen. Als anderes Beispiel kann das Kreationsmodul 255 ein neues Schriftartsatzzeichen in Reaktion darauf, dass das Vergleichsmodul 245 bestimmt, dass die Abweichung zwischen den Strichdaten und den existierenden Schriftartzeichen des nutzerspezifischen Schriftartsatzes einen vorbestimmten Schwellwert überschreitet, wie den Zeichenvariantenschwellwert, der oben erörtert wurde, erzeugen. In noch einem anderen Beispiel kann das Zeichenmodul 205 erfassen, dass es ein ähnliches Objekt gibt, das immer wieder herangezogen wird (so wie wenn es der Nutzer liebt, Herzen zu zeichnen), wobei das Kreationsmodul 255 ein benutzerspezifisches Zeichen, das dem Objekt entspricht, erzeugen kann.
  • In einigen Ausführungsformen erzeugt das Kreationsmodul 255 ein Bit-Karten-Schriftartzeichen unter Verwenden der Strichdaten. In anderen Ausführungsformen erzeugt das Kreationsmodul 255 ein Vektor-Schriftartzeichen (z.B. einen Umriss oder ein auf Striche basierendes Schriftartzeichen) unter Verwenden der Strichdaten. Zum Beispiel kann das Kreationsmodul 255 das Vektor-Schriftartzeichen durch Definieren eines Satzes von Eckpunkten und Linien/Kurven zwischen den Eckpunkten, welche den Strichdaten folgen, die durch das Handschrift-Eingabegerät 125 empfangen werden, erzeugen. In einigen Ausführungsformen zeigt das Kreationsmodul 255 dem Löschungsmodul 260 an, dass neue Schriftartzeichen erzeugt wurden, wobei das Löschungsmodul 260 die Strichdaten, die zum Erzeugen der neuen Schriftartzeichen verwendet wurden, löscht.
  • Das Löschungsmodul 260 ist in einer anderen Ausführungsform konfiguriert, um Strichdaten, in Reaktion auf das Abbilden der Handschriftzeichen basierend auf den Strichdaten auf ein nutzerspezifisches Schriftartzeichen, zu löschen. In einigen Ausführungsformen löscht das Löschungsmodul 260 Strichdaten, die einem Handschriftzeichen entsprechen, in Reaktion darauf, dass das Anpassungsmodul 250 die Strichdaten erfolgreich auf ein nutzerspezifisches Schriftartzeichen des nutzerspezifischen Schriftartsatzes abgebildet hat. In anderen Ausführungsformen kann das Löschungsmodul 260 in Reaktion darauf, dass das Kreationsmodul 255 ein neues nutzerspezifisches Schriftartzeichen basierend auf den Strichdaten erzeugt hat, Strichdaten löschen, die einem Handschriftzeichen entsprechen. In einer weiteren Ausführungsform kann das Löschungsmodul 260 warten bis das Speichermodul 210 eine Zeichen-Kodierung speichert, welche dem nutzerspezifischen Schriftartzeichen entspricht, welches basierend auf den Strichdaten ausgewählt und/oder erzeugt wurde, bevor die Strichdaten gelöscht werden.
  • Das Speichermodul 215 ist in einer Ausführungsform konfiguriert, um eine Zeichen-Kodierung zu speichern, die dem nutzerspezifischen Schriftartzeichen entspricht. Das Speichermodul 215 kann die Zeichen-Kodierung in Reaktion auf Informationen, die von dem Zeichenmodul 205 und dem Korrelationsmodul 210 empfangen werden, speichern. In einigen Ausführungsformen speichert das Speichermodul 215 die Zeichen-Kodierung durch Erzeugen einer Datei (z.B. einer computerlesbaren Datei), die eine Zeichen-Kodierung, welche dem Handschriftzeichen und dem nutzerspezifischen Schriftartzeichen entspricht, speichert. Zum Beispiel kann das Speichermodul 215 eine Textdatei erzeugen, die Zeichen-Kodierungen speichert, wodurch der Text (z.B. als Folge von Buchstaben/Zeichen) gespeichert wird, der in den Strichdaten enthalten ist. Die Textdatei kann später durch das Präsentationsmodul 220, oder durch ein anderes Gerät und/oder eine Applikation, gelesen werden, um so die Strichdaten zu reproduzieren. In einigen Ausführungsformen zeigt das Speichermodul 215 dem Löschungsmodul 260 an, dass die Zeichen-Kodierung gespeichert wurde, wobei das Löschungsmodul 260 die Strichdaten, die mit der Zeichen-Kodierung assoziiert sind, löscht (z.B. Strichdaten, die dem Handschriftzeichen, das durch das nutzerspezifische Schriftartzeichen, angezeigt durch die Zeichen-Kodierung, abgebildet wurde, entsprechen).
  • Wie oben erörtert, können in bestimmten Ausführungsformen ein einzelner Buchstabe, ein Zeichen oder ein Symbol mit einer Vielzahl von Zeichenvarianten assoziiert werden. In einigen Ausführungsformen kann der Nutzer eine erste Variante mit der Hand schreiben, wenn der Buchstabe/das Zeichen in einem ersten Kontext (z.B. einer Zeichenkombination) verwendet wird, und eine zweite Variante in einem zweiten Kontext mit der Hand schreiben, wie unten erörtert. In einer Ausführungsform zeigt die Zeichen-Kodierung, welche Variante unter einer Vielzahl von Varianten eines einzelnen Buchstabens/Zeichens zu verwenden ist. Jede Zeichen-Kodierung kann mit einem unterschiedlichen Schriftartzeichen assoziiert werden, wobei der Schriftartsatz eine Vielzahl von Schriftartzeichen für unterschiedliche Varianten eines Textzeichens einschließt. In einer anderen Ausführungsform werden Abweichungsdaten gespeichert, wobei das Schriftartzeichen, das durch die Zeichen-Kodierung angezeigt wird, basierend auf Abweichungsdaten modifiziert ist, um die Varianten eines einzelnen Buchstabens, Zeichens oder Symbols zu reproduzieren.
  • Das Speichermodul 215 kann ferner zusätzliche Informationen speichern, die sich auf das Handschriftzeichen beziehen, wie eine Position, eine Ausrichtung, eine Größe (einschließlich eines horizontalen Maßstab-Faktors), eine Abweichung von einem Referenzzeichen und dergleichen. Zum Beispiel kann die Textdatei, welche die Zeichen-Kodierungen einschließt, auch eine Position, Ausrichtung, Größe und/oder Abweichungsdaten für die Zeichen-Kodierungen umfassen. In weiteren Ausführungsformen können sich die Position, Ausrichtung und/oder Größe auf eine Gruppierung von Zeichen-Kodierungen beziehen, wie einem Wort, einer Zeile, eines Abschnitts. Zum Beispiel können alle Zeichen in einem Wort die gleiche Größe und Ausrichtung aufweisen (z.B. Abschrägung), wobei die gespeicherten Positionsinformationen den Start des Wortes anzeigen.
  • In einigen Ausführungsformen ist das Speichermodul 215 konfiguriert, um eine Schriftartdatei zu speichern, welche die nutzerspezifische Schriftart enthält. In bestimmten Ausführungsformen kann die Schriftartdatei Teil eines Nutzerprofils für die Nutzereingabe der Strichdaten sein. In einer Ausführungsform speichert das Speichermodul 215 die Schriftartdatei auf einem vernetzten Speichergerät, wie einem Server, so dass die Schriftartdatei über eine Vielzahl von Geräten verteilt sein kann, welche durch den gleichen Nutzer verwendet werden. In einigen Ausführungsformen ist die Schriftartdatei mit der Textdatei assoziiert, so dass die Textdatei, wenn sie angezeigt wird, immer unter Verwenden des spezifischen Schriftartsatzes des Autors gezeigt wird. Zum Beispiel kann die Schriftartdatei innerhalb der Textdatei eingebaut sein. In einem anderen Beispiel kann die Schriftartdatei eine mehrfach genutzte Datei auf einem öffentlich zugreifbaren Server sein, so dass eine dritte Partei, welche die Textdatei liest/anzeigt, auf die Schriftartdatei, die mit der Textdatei des Autors assoziiert ist, zugreifen kann.
  • In einigen Ausführungsformen wird eine Vielzahl von nutzerspezifischen Schriftarten erzeugt, wobei jede Schriftart mit einer besonderen Nutzeremotion, wie oben beschrieben, assoziiert ist. Somit ist in einigen Ausführungsformen das Speichermodul 215 ferner konfiguriert, um ein bestimmtes nutzerspezifisches Schriftartzeichen in einer besonderen Schriftartdatei, basierend auf einer Nutzeremotion, zu speichern, die durch das Emotionsmodul 240 identifiziert wird, wobei alle Schriftartzeichen in der besonderen Schriftartdatei mit der gleichen Nutzeremotion assoziiert werden. Das Speichermodul 215 kann zusätzlich in der Textdatei eine Indikation der Nutzeremotion speichern, die mit der Zeichen-Kodierung assoziiert wird, wodurch sichergestellt wird, dass die richtige Schriftartdatei mit dem Text assoziiert ist.
  • Wie beschrieben, erzeugt die Strichdaten-Speichervorrichtung 200 effektiv unter Verwenden der Strichdaten eine neue Datei, wodurch der Platz, der benötigt wird, um die Handschrift, die in den Strichdaten enthalten ist, zu speichern, reduziert wird. Dementsprechend werden in einer Ausführungsform die Strichdaten, nachdem das Speichermodul 215 die Textdatei und/oder die Schriftartdatei erzeugt hat, verworfen. Somit konvertiert die Strichdaten-Speichervorrichtung 200 die rohen Strichdaten in eine kompakte Datei, die den Text der Strichdaten und einen nutzerspezifischen Kundenschriftartsatz zum Anzeigen des Textes umfasst, wobei der nutzerspezifische Schriftartsatz von den Strichdaten erzeugt wird. Dementsprechend reduziert in einigen Ausführungsformen die Strichdaten-Speichervorrichtung 200 die Speichergröße der Strichdaten auf bis zu 0,4% der ursprünglichen Dateigröße.
  • Das Präsentationsmodul 220 ist in einer Ausführungsform konfiguriert, um ein Textzeichen anzuzeigen, das durch die Zeichenkodierung unter Verwenden des nutzerspezifischen Schriftartzeichens gekennzeichnet wird. In einigen Ausführungsformen liest das Präsentationsmodul 220 eine Datei (z.B. eine computerlesbare Datei), die ein oder mehrere Zeichen-Kodierungen umfasst, die sich auf einen nutzerspezifischen Schriftartsatz beziehen, und zeigt ein Textzeichen an, das durch die Zeichen-Kodierung unter Verwenden des nutzerspezifischen Schriftartzeichens gekennzeichnet ist. In bestimmten Ausführungsformen umfasst die Datei eine Schriftartdatei, welche die nutzerspezifischen Schriftartzeichen umfasst.
  • In einigen Ausführungsformen lädt das Präsentationsmodul 220 eine Kundenschriftart basierend auf einem Nutzer, der mit der Datei assoziiert ist (z.B. einem Autor der Datei). Zum Beispiel kann eine Autorenkennzeichnung als Metadaten der Datei gespeichert werden, wobei das Präsentationsmodul 220 eine nutzerspezifische Schriftartdatei basierend auf der Autorenkennzeichnung lädt, und wobei die nutzerspezifische Schriftartdatei einen Kundenschriftartsatz enthält, der unter Verwenden der Strichdaten des Autors erzeugt wird.
  • In bestimmten Ausführungsformen identifiziert das Präsentationsmodul 220 Position, Ausrichtung, Größe, Breite und/oder andere Zeicheninformationen für das Textzeichen von der Datei. Das Präsentationsmodul 220 kann dann das Textzeichen auf dem angezeigten Bildschirmort anzeigen und mit der angezeigten Ausrichtung, Größe, Breite usw. anzeigen. Somit reproduziert das Präsentationsmodul 220 die Strichdaten durch Anzeigen des Textzeichens an der Position des Eingabe-(z.B. handschriftlichen)Zeichens unter Verwenden des nutzerspezifischen Schriftartzeichens (abgeleitet von den Strichdaten) und der Ausrichtung, Größe, Breite usw. des Eingabezeichens. Auf diese Weise kann das Präsentationsmodul 220 Handschrift-Notizen, Dokumente und andere Strukturen unter Verwenden von deutlich weniger Computerspeicherplatz wiederherstellen, verglichen mit traditionellen Verfahren zum Speichern komprimierter Strichdaten oder Bildern der Strichdaten.
  • 3A3E zeigen Ausführungsformen eines notizaufnehmenden Systems 300 zum reduzierten Speichern von Strichdaten. Das notizaufnehmende System 300 kann in einer Ausführungsform ein mobiles Gerät 302 und einen Stift 310 einschließen. In einigen Ausführungsformen kann das mobile Gerät 302 ein Strichdatenspeichermodul 120 einschließen, das oben mit Bezug auf 1 und 2 beschrieben wurde. In einer Ausführungsform kann das mobile Gerät 302 im Wesentlichen ähnlich zu dem elektronischen Gerät 105, das oben mit Bezug auf 1 beschrieben wurde, sein. Das mobile Gerät 302 umfasst eine Anzeige 304, die in der Lage ist Strichdaten entsprechend der Nutzereingabe anzuzeigen. Das mobile Gerät 302 kann dann die Strichdaten konvertieren und speichern, wie weiter unten im Detail erörtert.
  • In einigen Ausführungsformen ist der Stift 310 ein passiver Stift, der für das Schreiben auf einer Anzeige 304 verwendet wird. Dementsprechend kann die Anzeige 304 eine digitalisierende Touchscreenanzeige einschließen, welche Striche des Stiftes 310 über die Anzeige 304 in Strichdaten konvertiert. In anderen Ausführungsformen ist der Stift 310 ein aktiver Stift, der die Strichdaten über optische, Trägheits- oder andere Sensoren misst, wenn der Stift 310 mit Bezug auf das mobile Gerät 302 bewegt wird. Der Stift 310 kann die gemessenen Strichdaten zu dem mobilen Gerät 302 kommunizieren, wobei das mobile Gerät 302 die Strichdaten konvertiert und speichert, wie in weiterem Detail weiter unten erörtert.
  • 3A ist ein schematisches Blockdiagramm, das eine Ausführungsform des notizaufnehmenden Systems 300, welches Strichdaten empfängt, darstellt. In einigen Ausführungsformen umfassen die Strichdaten wenigstens ein erstes handgeschriebenes Wort 306 und ein zweites handgeschriebenes Wort 308. Während die Strichdaten irgendeine Anzahl von Worten, Linien, Absätze oder dergleichen umfassen können, werden hier zum Zweck der Vereinfachung nur zwei Worte gezeigt. Die Strichdaten können von dem Nutzer, der auf der Anzeige 304 mit dem Stift 310 schreibt, resultieren. Wie gezeigt, hat der Nutzer“-salad-dressing” geschrieben.
  • 3B ist ein schematisches Blockdiagramm, das eine Ausführungsform eines ersten handschriftlichen Wortes 306 darstellt. Wie gezeigt, hat der Nutzer das Wort “salad” sowie ein Symbolzeichen 312 (einen Bindestrich) geschrieben. Das erste handgeschriebene Wort 306 umfasst fünf Zeichen, ein erstes Zeichen 314 (“s”), ein zweites Zeichen 316 (“a”), ein drittes Zeichen 318 (“l”), ein viertes Zeichen 320 (“a”) und ein fünftes Zeichen 322 (“d”). Wie gezeigt, korrespondieren das zweite Zeichen 316 und das vierte Zeichen 320 mit dem gleichen Textbuchstaben (“a”), jedoch ist jeder Buchstabe unterschiedlich geschrieben. In einigen Ausführungsformen kann das mobile Gerät 302 sowohl das zweite Zeichen 316 als auch das vierte Zeichen 320 auf das gleiche nutzerspezifische Schriftartzeichen abbilden. In anderen Ausführungsformen kann das mobile Gerät 302 das zweite Zeichen 314 und das vierte Zeichen 320 aufgrund ihrer Differenzen auf unterschiedliche Varianten des gleichen Zeichens (dem Buchstaben “a”) abbilden.
  • 3C ist ein schematisches Blockdiagramm, das eine Ausführungsform eines zweiten handgeschriebenen Wortes 308 zeigt. Wie gezeigt, hat der Nutzer das Wort “dressing” geschrieben. Das zweite handgeschriebene Wort 308 umfasst acht Zeichen, ein erstes Zeichen 324 (“d”), ein zweites Zeichen 326 (“r”), ein drittes Zeichen 328 (“e”), ein viertes Zeichen 330 (“s”), ein fünftes Zeichen 332 (“s”), ein sechstes Zeichen 334 (“i”), ein siebtes Zeichen 336 (“n”) und ein achtes Zeichen 338 (“g”). Wie gezeigt, korrespondieren das vierte Zeichen 330 und das fünfte Zeichen 332 mit dem gleichen Textbuchstaben (“s”), jedoch ist jeder Buchstabe unterschiedlich geschrieben. Zusätzlich korrespondieren das vierte Zeichen 330 und das fünfte Zeichen 332 mit dem gleichen Textbuchstaben wie das erste Zeichen 314, während das fünfte Zeichen 322 des ersten Handschriftwortes 306 und das erste Zeichen 324 des zweiten Handschriftwortes 308 mit dem gleichen Buchstaben (“d”) korrespondieren. In einigen Ausführungsformen kann das mobile Gerät 302 alle Handschriftzeichen, die mit dem gleichen Textbuchstaben korrespondieren, auf das gleiche nutzerspezifische Schriftartzeichen abbilden. In anderen Ausführungsformen kann das mobile Gerät 302 ein oder mehrere Handschriftzeichen, die mit dem gleichen Textbuchstaben korrespondieren, aufgrund ihrer Unterschiede auf unterschiedliche Varianten des gleichen Zeichens abbilden.
  • 3D ist ein schematisches Blockdiagramm, das eine Ausführungsform einer Strichdatenanalyse 340 darstellt. Wie gezeigt, wird das erste Zeichen 314 mit drei Kandidaten der Schriftartzeichen 342346, welche aus einem nutzerspezifischen Schriftartsatz ausgewählt werden, verglichen. In einigen Ausführungsformen werden die Kandidaten der Schriftartzeichen durch Identifizieren bestehender Schriftartzeichen mit Merkmalen (z.B. Linien, Kurven, Eckpunkten, Schnittstellen usw.), ähnlich zu den Eingabe-Handschriftzeichen (z.B. dem ersten Zeichen 314) ausgewählt. Jeder der Kandidaten der Schriftartzeichen 342346 ist zu der Zeit der Strichdatenanalyse 340 in dem nutzerspezifischen Schriftartsatz enthalten. Der nutzerspezifische Schriftartsatz wird dynamisch von den Strichdateneingaben des Nutzers erzeugt. Wie gezeigt, ist jeder der Kandidaten der Schriftartzeichen 342346 eine Variante des gleichen Textbuchstabens (“s”). Während drei Varianten in der dargestellten Ausführungsform gezeigt werden, kann in anderen Ausführungsformen irgendeine Anzahl von Varianten in dem nutzerspezifischen Schriftartsatz enthalten sein.
  • In einigen Ausführungsformen identifiziert das mobile Gerät 302 Abweichungen unter den ähnlichen Merkmalen des ersten Zeichens 314 und einem Kandidaten der Schriftartzeichen 342346. Zum Beispiel kann das mobile Gerät 302 Unterschiede in den Start- und/oder Endpunkten zwischen dem ersten Zeichen 314 und dem ersten Kandidatenzeichen 342 identifizieren. In einem anderen Beispiel kann das mobile Gerät 302 eine Kurvenabweichung zwischen dem ersten Zeichen 314 und dem zweiten Kandidatenzeichen 344 oder dem dritten Kandidatenzeichen 346 bestimmen.
  • Basierend auf dem Vergleich, kann das mobile Gerät 302 ein bestpassendes Schriftartzeichen auswählen. Zum Beispiel kann das mobile Gerät 302 bestimmen, dass das erste Zeichen 314 sich am wenigsten von dem zweiten Kandidatenzeichen 344 unterscheidet, wodurch das zweiten Kandidatenzeichen 344 als bestpassendes Schriftartzeichen ausgewählt wird. In einer weiteren Ausführungsform kann das mobile Gerät 302 die Abweichungen mit einem Schwellwert vergleichen, wie dem Zeichenvariantenschwellwert, der oben erörtert wurde, wobei das mobile Gerät 302, in Reaktion darauf, dass die Abweichungen den Schwellwert übersteigen, kein Kandidatenzeichen auswählt, sondern, anstelle dessen, ein neues Schriftartzeichen aus den Strichdaten erzeugt.
  • In Reaktion auf ein Identifizieren eines bestpassenden Schriftartzeichens (oder eines Erzeugens eines neuen Schriftartzeichens), bestimmt das mobile Gerät 302 eine Zeichen-Kodierung, die mit dem Schriftartzeichen assoziiert wird. Das mobile Gerät 302 kann dann die Zeichen-Kodierung speichern und dadurch eine spätere Reproduktion der Strichdaten unter Verwenden der Zeichen-Kodierungen ermöglichen, die mit den Handschriftzeichen assoziiert werden. In bestimmten Ausführungsformen identifiziert und speichert das mobile Gerät 302 zusätzlich eine Größe 348, eine Ausrichtung (z.B. Abschrägung) 350 und/oder eine Position 352 des ersten Zeichens 314 für eine genaue Reproduktion der Strichdaten.
  • 3E ist ein schematisches Blockdiagramm, das eine andere Ausführungsform der Strichdatenanalyse 360 darstellt. Wie gezeigt, wird das achte Zeichen 338 mit dem dritten Kandidaten der Schriftartzeichen 362366, die von einem nutzerspezifischen Schriftartsatz ausgewählt werden, verglichen. Jeder der Kandidaten der Schriftartzeichen 362366 wird von den Strichdaten erzeugt, die mit dem Nutzer assoziiert sind. In einigen Ausführungsformen werden die Kandidaten der Schriftartzeichen durch Identifizieren existierender Schriftartzeichen mit Merkmalen (z.B. Linien, Kurven, Eckpunkten, Schnittstellen usw.), ähnlich zu den Eingabehandschriftzeichen (z.B. dem achten Zeichen 338), ausgewählt. Wie gezeigt, korrespondiert ein Schriftartzeichen mit dem Buchstaben “g”, der nicht innerhalb des nutzerspezifischen Schriftartsatzes existiert. In den beschriebenen Ausführungsformen erweitert das mobile Gerät 302 jedoch dynamisch (z.B. durch Zuaddieren) den nutzerspezifischen Schriftartsatz jedes Mal, wenn ein handschriftliches Zeichen analysiert wird, das nicht mit einem existierenden Schriftartzeichen übereinstimmt.
  • In einigen Ausführungsformen identifiziert das mobile Gerät 302 Abweichungen unter den ähnlichen Merkmalen des achten Zeichens 338 und eines Kandidaten der Schriftartzeichen 362366. Zum Beispiel kann das mobile Gerät 302 Unterschiede der Start- und/oder Endpunkte zwischen dem achten Zeichen 338 und dem vierten Kandidatenzeichen 362 identifizieren. In einem anderen Beispiel kann das mobile Gerät 302 eine Kurvenabweichung und/oder ein Eckpunkteabweichen zwischen dem achten Zeichen 338 und dem zweiten Kandidatenzeichen 364 oder dem dritten Kandidatenzeichen 366 bestimmen. Basierend auf dem Vergleich, kann das mobile Gerät 302 bestimmen, dass kein Kandidatenzeichen mit dem achten Zeichen 338 übereinstimmt. In einer Ausführungsform kann das mobile Gerät 302 identifizieren, dass das achte Zeichen 338 von den Kandidatenzeichen 362366 über eine Schwellwertgröße hinaus abweicht.
  • In Reaktion auf ein Bestimmen, dass das zweite Kandidatenzeichen 344 nicht mit irgendeinem Kandidaten übereinstimmt, kann das mobile Gerät 302 ein neues Schriftartzeichen, basierend auf den Strichdaten, erzeugen und dieses neue Schriftartzeichen zu dem nutzerspezifischen Schriftartsatz hinzufügen. Wie gezeigt, addiert das mobile Gerät 302 ein Schriftartzeichen, das einem neu aufegfundenem Textzeichen entspricht. Im Laufe der Zeit werden weniger Einträge zu dem nutzerspezifischen Schriftartsatz hinzugefügt. Der nutzerspezifische Schriftartsatz kann in einer computerlesbaren Schriftartdatei gespeichert werden.
  • In einigen Ausführungsformen kann der Nutzer die Größe der Schriftartdatei, die mit der Nutzerschriftart assoziiert ist, durch Anpassen des Zeichenvariantenschwellwerts steuern. Ein hoher Schwellwert ergibt weniger Varianten des gleichen Buchstabens, während ein niedriger Schwellwert viele Varianten des gleichen Buchstabens ergibt. Alternativ kann der Zeichenvariantenschwellwert basierend auf einer Schriftartdateigrößenpräferenz des Nutzers bestimmt werden, wobei ein Vorzug für kleinere Dateien (oder eine niedrigere Qualität der Strichdatenreproduktion) in einem höheren Schwellwert resultiert, während ein Vorzug für größere Dateien (oder eine höhere Qualität der Strichdatenreproduktion) in einem niedrigeren Schwellwert resultiert. In einigen Ausführungsformen kann der Nutzer zu einer Schriftartdateigrößenpräferenz und/oder zu einer Reproduktionsqualitätspräferenz aufgefordert werden.
  • Das mobile Gerät 302, welches das neue Schriftartzeichen erzeugt hat, erzeugt eine Zeichen-Kodierung für das Schriftartzeichen. Das mobile Gerät 302 kann dann die Zeichen-Kodierung speichern, wodurch spätere Reproduktionen für die Strichdaten unter Verwenden der Zeichen-Kodierungen ermöglicht werden, die mit den Handschriftzeichen assoziiert sind. In bestimmten Ausführungsformen identifiziert und speichert das mobile Gerät 302 zusätzlich eine Größe 368, eine Ausrichtung (z.B. Abschrägung) 370 und/oder eine Position 372 des achten Zeichens 338 für eine genaue Reproduktion der Strichdaten.
  • 4A ist ein Flussdiagramm, das eine Ausführungsform eines Verfahrens 400 zum reduzierten Speichern von Strichdaten darstellt. In einer Ausführungsform wird das Verfahren 400 durch das elektronische Gerät 105 ausgeführt. In einer anderen Ausführungsform kann das Verfahren 400 durch die Strichdaten-Speichervorrichtung 200 ausgeführt werden. Alternativ kann das Verfahren 400 durch ein computerlesbares Speichermedium, wie dem Speicher 115, ausgeführt werden. Das computerlesbare Speichermedium kann einen Code speichern, der durch den Prozessor 110 ausgeführt wird, um die Funktionen des Verfahrens 400 auszuführen.
  • Das Verfahren 400 beginnt und das Zeichenmodul 205 identifiziert bei 405 das Handschriftzeichen in den Strichdaten. In einigen Ausführungsformen werden die Strichdaten durch das Zeichenmodul 204 von einem Eingabegerät empfangen, wie dem Handschrift-Eingabegerät 125, wobei die Strichdaten ein oder mehrere Handschriftstriche umfassen, die das Handschriftzeichen bilden. In bestimmten Ausführungsformen identifiziert das Zeichenmodul 205 bei 405 eine Vielzahl von Handschriftzeichen innerhalb der Strichdaten. Zum Beispiel können die Strichdaten mit einem Buchstaben, einem Wort, einer Zeile, einem Absatz oder einer anderen Einheit der Handschrift korrespondieren.
  • In einigen Ausführungsformen umfasst ein Identifizieren des Handschriftzeichens bei 405 ferner ein Übersetzen des Handschriftzeichens in ein Textzeichen. Zum Beispiel kann das Zeichenmodul 205 einen optischen Zeichenerkennungsalgorithmus oder einen ähnlichen Zeichenerkennungsalgorithmus auf die Strichdaten anwenden, um das Handschriftzeichen zu identifizieren. In bestimmten Ausführungsformen umfasst das Identifizieren bei 405 des Handschriftzeichens ein Segmentieren der Strichdaten in eine Vielzahl von Handschriftzeichen und ein Übersetzen jedes Handschriftzeichens. In weiteren Ausführungsformen kann das Identifizieren des Handschriftzeichens bei 405 ein Identifizieren einer Größe, einer Position und/oder einer Ausrichtung des Handschriftzeichens umfassen.
  • Das Korrelationsmodul 210 bildet dann bei 410 das Handschriftzeichen basierend auf den Strichdaten auf ein nutzerspezifisches Schriftartzeichen ab. Ein Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen bei 410 kann ein Identifizieren einer Vielzahl von Merkmalen (wie Linien, Kurven, Ecken und/oder Schnittstellen) innerhalb des Handschriftzeichens und ein Identifizieren einer Vielzahl von Kandidaten der Schriftartzeichen, die ähnliche Merkmale aufweisen, einschließen, wobei die Kandidaten der Schriftartzeichen zu einem nutzerspezifischen Schriftartsatz gehören. Das Korrelationsmodul 210 kann dann ein bestpassendes nutzerspezifisches Schriftartzeichen aus der Vielzahl der Kandidaten der Schriftartzeichen auswählen.
  • In einer Ausführungsform kann das Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen bei 410 ein Bestimmen einer Varianz zwischen den Strichdaten und einem oder mehreren Bezugszeichen einschließen, wie einem Kandidaten der Schriftartzeichen. Ein Kandidat der Schriftartzeichen, der die kleinste Varianz aufweist, kann dann als ein bestpassendes nutzerspezifisches Schriftartzeichen ausgewählt werden. In einigen Ausführungsformen kann die Größe der Varianz mit einem Zeichenvariantenschwellwert verglichen werden, wobei das Korrelationsmodul 210 ein neues nutzerspezifisches Schriftartzeichen (z.B. eine neue Variante des Handschriftzeichens) in Reaktion darauf, dass die Varianz den Zeichenvariantenschwellwert übersteigt, erzeugt.
  • Das Speichermodul 215 speichert dann bei 415 eine Zeichen-Kodierung, entsprechend dem nutzerspezifischen Schriftartzeichen. In einer Ausführungsform korrespondiert die Zeichen-Kodierung mit einem identifizierten Textzeichen, das dem Handschriftzeichen entspricht. In bestimmten Ausführungsformen erzeugt das Speichermodul 215 eine Datei, die bei 415 die Zeichen-Kodierung speichert. Zum Beispiel kann das Speichermodul 215 eine Textdatei erzeugen, einschließlich Textzeichen, die von den Handschrift-Strichdaten übersetzt wurden und nutzerspezifischen Schriftartzeichen entsprechen, wobei die Textzeichen unter Verwenden der nutzerspezifischen Schriftartzeichen anzuzeigen sind, um die Strichdaten zu reproduzieren. In einigen Ausführungsformen umfasst das Speichern bei 510 der Zeichen-Kodierung ein Speichern von Größen-, Positions- und/oder Ausrichtungsdaten für das Handschriftzeichen, entsprechend der Zeichen-Kodierung. Das Verfahren 400 endet.
  • 4B ist ein Flussdiagramm, das eine Ausführungsform eines Verfahrens 450 zum Reproduzieren der Strichdaten darstellt. In einer Ausführungsform wird das Verfahren 450 durch das elektronische Gerät 105 ausgeführt. In einer anderen Ausführungsform kann das Verfahren 450 durch die Strichdaten-Speichervorrichtung 200 ausgeführt werden. Alternativ kann das Verfahren 450 durch ein computerlesbares Speichermedium, wie dem Speicher 115, ausgeführt werden. Das computerlesbare Speichermedium kann einen Code speichern, der durch den Prozessor 110 ausgeführt wird, um die Funktionen des Verfahrens 450 auszuführen.
  • Das Verfahren 450 beginnt und das Präsentationsmodul 220 greift bei 455 auf eine Datei zu, die Zeichen-Kodierungen basierend auf Eingabe-Strichdaten speichert. In einer Ausführungsform kennzeichnen die Zeichen-Kodierungen ein nutzerspezifisches Schriftartzeichen, wobei das nutzerspezifische Schriftartzeichen auf den Eingabe-Strichdaten basiert. In anderen Ausführungsformen kennzeichnet die Datei einen nutzerspezifischen Schriftartsatz, der mit den gespeicherten Zeichen-Kodierungen verwendet wird. Das Präsentationsmodul 220 bestimmt dann bei 460 eine Zeichengröße und eine Zeichenposition von der Datei. In einigen Ausführungsformen sind die Zeichengröße und die Zeichenposition für jedes Zeichen in einem Wort, einer Zeile oder einem Absatz gleich.
  • Das Präsentationsmodul 220 zeigt bei 465 ein nutzerspezifisches Schriftartzeichen basierend auf der Zeichen-Kodierung, der Zeichengröße und der Zeichenposition der Datei an. In einer Ausführungsform kennzeichnet jede Zeichen-Kodierung ein besonderes nutzerspezifisches Schriftartzeichen. In einer weiteren Ausführungsform kann ein Textzeichen auf eine Mehrzahl von nutzerspezifischen Schriftartzeichen abgebildet werden, wobei die Zeichen-Kodierung eine besondere Variante des Textzeichens kennzeichnet, die am besten zu den Strichdaten passt. Das Verfahren 450 endet.
  • 5 ist ein schematisches Flussdiagramm, das eine Ausführungsform eines Verfahrens 500 für reduziertes Speichern von Strichdaten darstellt. In einer Ausführungsform wird das Verfahren 500 durch das elektronische Gerät 105 ausgeführt. In einer anderen Ausführungsform kann das Verfahren 500 durch die Strichdaten-Speichervorrichtung 200 ausgeführt werden. Alternativ kann das Verfahren 500 durch ein computerlesbares Speichermedium, wie dem Speicher 115, ausgeführt werden. Das computerlesbare Speichermedium kann einen Code speichern, der durch den Prozessor 110 ausgeführt wird, um die Funktionen des Verfahrens 500 auszuführen.
  • Das Verfahren 500 beginnt und das Zeichenmodul 205 empfängt bei 505 Strichdaten von einem Handschrift-Eingabegerät 125. Das Zeichenmodul 205 identifiziert bei 510 ein oder mehrere Handschriftzeichen von den Strichdaten. Zum Beispiel können die Strichdaten mit einem Buchstaben, einem Wort, einer Zeile, einem Absatz oder einer anderen Einheit der Handschrift korrespondieren. In bestimmten Ausführungsformen umfasst das Identifizieren bei 510 des Handschriftzeichens ein Segmentieren der Strichdaten in eine Vielzahl von Handschriftzeichen und ein Übersetzen jedes Handschriftzeichens. In einigen Ausführungsformen umfasst ein Identifizieren bei 510 des Handschriftzeichens ferner ein Übersetzen des Handschriftzeichens in ein Textzeichen.
  • Das Vergleichsmodul 245 vergleicht bei 515 Strichdaten mit einem oder mehreren Schriftartzeichen eines nutzerspezifischen Schriftartsatzes. In einer Ausführungsform umfasst ein Vergleichen von Strichdaten mit einem oder mehreren Schriftartzeichen bei 515 ein Identifizieren einer Vielzahl von Merkmalen (wie Linien, Kurven, Ecken und/oder Schnittstellen) innerhalb des Handschriftzeichens und ein Identifizieren einer Vielzahl von Kandidaten der Schriftartzeichen, die ähnliche Merkmale aufweisen, wobei die Kandidaten der Schriftartzeichen zu dem nutzerspezifischen Schriftartsatz gehören. In einer weiteren Ausführungsform umfasst ein Vergleichen von Strichdaten mit einem oder mehreren Schriftartzeichen bei 515 ein Bestimmen einer Varianz zwischen den Strichdaten und dem einen oder den mehreren Schriftartzeichen.
  • Das Anpassungsmodul 250 bestimmt bei 520, ob die Strichdaten mit einem Kandidaten der Schriftartzeichen übereinstimmen. In einer Ausführungsform umfasst ein Bestimmen ob die Strichdaten zu einem Schriftartzeichen passen bei 520, ein Bestimmen, ob das Schriftartzeichen und der Kandidat der Schriftartzeichen passende Zeichenmerkmale (wie Linien, Kurven, Ecken und/oder Schnittstellen) aufweisen. In einer anderen Ausführungsform umfasst ein Bestimmen ob die Strichdaten zu einem Schriftartzeichen passen bei 520, ein Bestimmen, ob die Varianz zwischen den Strichdaten und dem Kandidaten der Schriftartzeichen geringer als ein Zeichenvariantenschwellwert ist. Wenn die Varianz zum Beispiel den Zeichenvariantenschwellwert für alle Kandidaten der Schriftartzeichen übersteigt, dann kann das Anpassungsmodul 250 bei 520 bestimmen, dass kein Schriftartzeichen zu den Strichdaten passt.
  • In Reaktion darauf, dass das Anpassungsmodul 250 bei 520 bestimmt, dass die Strichdaten mit einem Schriftartzeichen übereinstimmen, wählt das Korrelationsmodul 210 bei 525 ein bestpassendes Schriftartzeichen aus. Wenn in Reaktion darauf, dass das Anpassungsmodul 250 bei 520 andererseits bestimmt, dass die Strichdaten nicht mit einem Schriftartzeichen übereinstimmen, erzeugt das Kreationsmodul 255 bei 530 ein neues Schriftartzeichen, basierend auf den Strichdaten. In einigen Ausführungsformen umfasst das Erzeugen des neuen Schriftartzeichens bei 535 ein Definieren eines Satzes von Eckpunkten und Linien/Kurven zwischen den Eckpunkten, welche den Strichdaten folgen. In einer weiteren Ausführungsform kann ein Erzeugen des neuen Schriftartzeichens bei 535 ein Definieren einer neuen Zeichen-Kodierung umfassen, die dem neuen Schriftartzeichen entspricht.
  • In einigen Ausführungsformen umfasst das Auswählen bei 525 des bestpassenden Schriftartzeichens ein Identifizieren einer niedrigsten Varianz zwischen den Strichdaten und dem Kandidaten der Schriftartzeichen und ein Auswählen des Schriftartzeichens, das der niedrigsten Varianz entspricht. In Reaktion auf das Auswählen des bestpassenden Schriftartzeichens bei 525 kann das Vergleichsmodul 245 bei 530 Abweichungen zwischen den Strichdaten und dem ausgewählten Schriftartzeichen bestimmen. Abweichungen können Unterschiede in der Ausrichtung, Unterschiede in der Größe, Unterschiede in dem Zeichenmerkmalsort und/oder Unterschiede in der Strichlänge umfassen. Das Zeichenmodul 205 kann bei 540 eine Zeichenposition des Handschriftzeichens, in Reaktion auf entweder ein Auswählen des bestpassenden Schriftartzeichens bei 525 oder ein Erzeugen eines neuen Schriftartzeichens bei 535, bestimmen.
  • Das Speichermodul 215 speichert bei 545 die Zeichenposition und eine Zeichen-Kodierung, die dem Schriftartzeichen entspricht. In einer Ausführungsform korrespondiert die Zeichen-Kodierung mit einem identifizierten Textzeichen, das dem Handschriftzeichen entspricht. In bestimmten Ausführungsformen erzeugt das Speichermodul 215 beim Speichern bei 545 die Zeichen-Kodierung. Zum Beispiel kann das Speichermodul 215 eine Textdatei erzeugen, die sowohl Textzeichen, die von den Handschrift-Strichdaten übersetzt werden, und entsprechende nutzerspezifische Schriftartzeichen einschließen, wobei die Textzeichen unter Verwenden der nutzerspezifischen Schriftartzeichen anzuzeigen sind, um die Strichdaten zu reproduzieren. In einigen Ausführungsformen umfasst das Speichern der Zeichenposition und der Zeichen-Kodierung bei 545 ein Speichern der Größe und/oder der Ausrichtung der Daten für das Handschriftzeichen, das der Zeichen-Kodierung entspricht. Das Verfahren 500 endet.
  • 6 ist ein schematisches Flussdiagramm, das eine andere Ausführungsform eines Verfahrens 600 zum Speichern und Reproduzieren von Strichdaten darstellt. In einer Ausführungsform wird das Verfahren 600 durch das elektronische Gerät 105 ausgeführt. In einer anderen Ausführungsform kann das Verfahren 600 durch die Strichdaten-Speichervorrichtung 200 ausgeführt werden. Alternativ kann das Verfahren 600 durch ein computerlesbares Speichermedium, wie dem Speicher 115, ausgeführt werden. Das computerlesbare Speichermedium kann einen Code speichern, der durch den Prozessor 110 ausgeführt wird, um die Funktionen des Verfahrens 600 auszuführen.
  • Das Verfahren beginnt bei 600 und das Zeichenmodul 205 empfängt bei 605 Strichdaten von einem Handschrift-Eingabegerät 125. Das Zeichenmodul 205 identifiziert bei 610 ein oder mehrere Handschriftzeichen in den Strichdaten. Zum Beispiel können die Strichdaten mit einem Buchstaben, einem Wort, einer Zeile, einem Absatz oder einer anderen Einheit der Handschrift korrespondieren. In bestimmten Ausführungsformen umfasst das Identifizieren des Handschriftzeichens bei 610 ein Segmentieren der Strichdaten in eine Vielzahl von Handschriftzeichen und ein Übersetzen jedes Handschriftzeichens. In einigen Ausführungsformen umfasst ein Identifizieren bei 610 des Handschriftzeichens ferner ein Übersetzen des Handschriftzeichens in ein Textzeichen, zum Beispiel unter Verwenden eines Zeichenerkennungsalgorithmus.
  • Das Zeichenmodul 205 kann bei 615 die Größe und die Position des Handschriftzeichens bestimmen. In weiteren Ausführungsformen kann das Zeichenmodul 205 auch eine Abschrägung oder Ausrichtung des Handschriftzeichens bestimmen. Das Anpassungsmodul 250 identifiziert bei 620 ein bestpassendes Schriftartzeichen aus einem nutzerspezifischen Schriftartsatz, basierend auf den Strichdaten. In einigen Ausführungsformen umfasst ein Identifizieren des bestpassenden Schriftartzeichens bei 620 ein Vergleichen der Strichdaten mit einem oder mehreren Schriftartzeichen des nutzerspezifischen Schriftartsatzes.
  • Das Vergleichsmodul 245 berechnet bei 625 eine Abweichung zwischen den Strichdaten und dem bestpassenden Schriftartzeichen und das Korrelationsmodul 210 bestimmt bei 630, ob die Abweichung einen Zeichenvariantenschwellwert überssteigt. Die Abweichungen können Unterschiede in der Ausrichtung, Unterschiede in der Größe, Unterschiede in dem Zeichenmerkmalsort und/oder Unterschiede in der Strichlänge umfassen. In Reaktion auf ein Bestimmen des Korrelationsmoduls 210, dass die Abweichung den Schwellwert überschreitet, bei 630 erzeugt das Kreationsmodul 255 bei 635 ein neues Schriftartzeichen, basierend auf den Strichdaten. Andererseits, in Reaktion auf ein Bestimmen des Korrelationsmoduls 210, dass die Abweichung den Schwellwert nicht überschreitet, bei 630, wählt das Korrelationsmodul 210 bei 645 eine Zeichen-Kodierung aus, die dem bestpassenden Schriftartzeichen entspricht.
  • In einigen Ausführungsformen umfasst ein Erzeugen bei 635 des neuen Schriftartzeichens ein Bestimmen eines Satzes von Eckpunkten und Linien/Kurven zwischen den Eckpunkten, die den Strichdaten folgen. In anderen Ausführungsformen umfasst das Erzeugen bei 635 des neuen Schriftartzeichens ein Erzeugen eines Bit-Karten-Schriftartzeichens aus den Strichdaten. In Reaktion auf ein Erzeugen bei 635 des neuen Schriftartzeichens, wählt das Korrelationsmodul 210 bei 640 eine Zeichen-Kodierung, basierend auf dem neuen Schriftartzeichen, aus. In einer Ausführungsform kann das Auswählen basierend auf dem neuen Schriftartzeichen bei 640, ein Definieren einer neuen Zeichen-Kodierung, die dem neuen Schriftartzeichen entspricht, einschließen.
  • Das Speichermodul 215 speichert bei 650 die Zeichen-Kodierung, die Zeichenstandorte und die Zeichenposition. In einer Ausführungsform entspricht die Zeichen-Kodierung einem identifizierten Textzeichen, das mit dem Handschriftzeichen korrespondiert. In bestimmten Ausführungsformen erzeugt das Speichermodul 215 eine Datei, die das Schriftartzeichen, die Zeichenstandorte und die Zeichenposition bei 650 speichert.
  • Das Präsentationsmodul 220 zeigt bei 655 ein Textzeichen an, das auf der Zeichen-Kodierung, den Zeichenstandorten und der Zeichenposition basiert. In einigen Ausführungsformen umfasst das Anzeigen des Textzeichens bei 655 ein Zugreifen des Präsentationsmoduls 222 auf die Datei, die durch das Speichermodul 215 erzeugt wird. In einer Ausführungsform kennzeichnet jede Zeichen-Kodierung ein bestimmtes nutzerspezifisches Schriftartzeichen. In einer weiteren Ausführungsform kann ein Textzeichen auf eine Mehrzahl von nutzerspezifischen Schriftartzeichen abgebildet werden, wobei das Präsentationsmodul 220 bei 655 eine besondere Variante des Textzeichens, basierend auf der Zeichen-Kodierung, anzeigt. Das Verfahren 600 endet.
  • Ausführungsformen können in anderen spezifizierten Formen praktiziert werden. Die beschriebenen Ausführungsformen sind in jeder Hinsicht nur als darstellend und nicht begrenzend zu betrachten. Der Rahmen der Erfindung ist deshalb eher durch die anhängenden Ansprüche gekennzeichnet als durch die vorhergehende Beschreibung. Alle Änderungen, welche innerhalb der Bedeutung und dem Bereich der Äquivalenz der Ansprüche liegen, werden innerhalb ihres Schutzumfangs umfasst.

Claims (20)

  1. Vorrichtung, umfassend: – ein Handschrift-Eingabegerät, das Eingabe-Strichdaten empfängt; – einen Prozessor; und – einen Speicher, der einen Code speichert, der durch den Prozessor ausführbar ist, wobei der Code umfasst: – einen Code, der ein Handschriftzeichen in den Strichdaten identifiziert; – einen Code, der das Handschriftzeichen basierend auf den Strichdaten auf ein nutzerspezifisches Schriftartzeichen abbildet; und – einen Code, der eine Datei erzeugt, die eine Zeichen-Kodierung speichert, welche dem nutzerspezifischen Schriftartzeichen entspricht.
  2. Vorrichtung nach Anspruch 1, wobei das Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen umfasst: – Bestimmen, ob die Strichdaten des Handschriftzeichens mit einem Schriftartzeichen eines nutzerspezifischen Schriftartsatzes übereinstimmen, welcher mit einem Nutzer, der die Strichdaten eingibt, assoziiert ist; – Auswählen eines passenden Schriftartzeichens in Reaktion darauf, dass die Strichdaten mit dem Schriftartzeichen übereinstimmen; und – Erzeugen eines neuen Schriftartzeichens, basierend auf den Strichdaten, in Reaktion darauf, dass die Strichdaten nicht mit irgendeinem Schriftartzeichen des Schriftartsatzes übereinstimmen.
  3. Vorrichtung nach Anspruch 2, wobei der nutzerspezifische Schriftartsatz eine Mehrzahl von Varianten eines Textzeichens umfasst, das dem Handschriftzeichen entspricht, wobei das Auswählen eines passenden Schriftartzeichens ein Auswählen einer bestpassenden Variante, basierend auf den Strichdaten, umfasst.
  4. Vorrichtung nach Anspruch 1, ferner umfassend: – einen Code, der die Datei liest; und – einen Code, der ein Textzeichen anzeigt, das durch die Zeichen-Kodierung unter Verwenden des nutzerspezifischen Schriftartzeichens gekennzeichnet ist.
  5. Vorrichtung nach Anspruch 4, ferner einen Code umfassend, der in der Datei eine Zeichenposition des Handschriftzeichens speichert, wobei ein Anzeigen des Textzeichens ein Anzeigen des Textzeichens an der Zeichenposition umfasst.
  6. Vorrichtung nach Anspruch 1, ferner einen Code umfassend, der eine Abweichung zwischen dem Handschriftzeichen und einem Modellzeichen bestimmt, wobei die Datei ferner die Abweichung zwischen dem Handschriftzeichen und dem Modellzeichen speichert.
  7. Vorrichtung nach Anspruch 1, ferner einen Code umfassend, der die Strichdaten in Reaktion auf das Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen basierend auf den Strichdaten löscht.
  8. Vorrichtung nach Anspruch 1, wobei ein Identifizieren des Handschriftzeichens umfasst: – ein Empfangen von Strichdaten von dem Handschrift-Eingabegerät, wobei die Strichdaten eine Nutzerhandschrift umfassen; – ein Ausführen einer Handschrifterkennung der Strichdaten; und – ein Identifizieren eines Textzeichens, das mit dem Handschriftzeichen übereinstimmt, basierend auf der Handschrifterkennung, wobei die Zeichen-Kodierung mit dem identifizierten Textzeichen korrespondiert.
  9. Vorrichtung nach Anspruch 1, wobei das Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen ein Erzeugen eines einzigen nutzerspezifischen Schriftartzeichens umfasst, das zwei benachbarte Buchstaben repräsentiert.
  10. Vorrichtung nach Anspruch 1, wobei das Handschrift-Eingabegerät ein Eingabegerät umfasst, das aus der Gruppe ausgewählt wird, bestehend aus einem Touchscreen, einem Touch-Panel, einem Digitalisierer, einem digitalen Stift, einem Scanner, einem Bildgeber und einer digitalen Kamera.
  11. Verfahren, umfassend: – Identifizieren eines Handschriftzeichens in Strichdaten unter Verwendung eines Prozessors; – Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen, basierend auf den Strichdaten; und – Speichern einer Zeichen-Kodierung, entsprechend dem nutzerspezifischen Schriftartzeichen.
  12. Verfahren nach Anspruch 11, weiterhin umfassend, ein Berechnen einer Größe und Ausrichtung des Handschriftzeichens, basierend auf den Strichdaten.
  13. Verfahren nach Anspruch 12, weiterhin umfassend: ein Berechnen eines horizontalen Maßstab-Faktors des Handschriftzeichens, basierend auf den Strichdaten, wobei das Speichern einer Zeichen-Kodierung entsprechend dem nutzerspezifischen Schriftartzeichen, weiterhin ein Speichern der Größe, Ausrichtung und des horizontalen Maßstab-Faktors des Handschriftzeichens umfasst.
  14. Verfahren nach Anspruch 12, weiterhin umfassend: – Identifizieren einer Nutzeremotion basierend auf der Ausrichtung des Handschriftzeichens; und – Zuordnen des nutzerspezifischen Schriftartzeichens zu einem spezifischen nutzerspezifischen Schriftartsatz, basierend auf der Nutzeremotion.
  15. Verfahren nach Anspruch 11, weiterhin ein Bestimmen einer Zeichenposition des Handschriftzeichens umfassend, wobei das Speichern einer Zeichen-Kodierung, die dem nutzerspezifischen Schriftartzeichen entspricht, weiterhin ein Erzeugen einer Datei umfasst, welche die Zeichen-Kodierung mit der Zeichenposition und mit dem nutzerspezifischen Schriftartzeichen assoziiert.
  16. Verfahren nach Anspruch 11, weiterhin ein Anzeigen eines Textzeichens umfassend, das durch die Zeichen-Kodierung unter Verwenden des nutzerspezifischen Schriftartzeichens identifiziert wird.
  17. Verfahren nach Anspruch 11, wobei das Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen umfasst: – Bestimmen einer Abweichung zwischen den Strichdaten und einem nutzerspezifischen Schriftartzeichen, welches mit dem Handschriftzeichen übereinstimmt; und – Erzeugen eines neuen Schriftartzeichens, basierend auf den Strichdaten, in Reaktion darauf, dass die Abweichung einen Zeichenvariantenschwellwert übersteigt.
  18. Verfahren nach Anspruch 11, wobei das Abbilden des Handschriftzeichens auf ein nutzerspezifisches Schriftartzeichen umfasst: – Bestimmen, ob die Strichdaten des Handschriftzeichens mit einem Schriftartzeichen eines nutzerspezifischen Schriftartsatzes, der mit einem Nutzer assoziiert ist, der die Strichdaten eingibt, übereinstimmen; – Auswählen eines passenden Schriftartzeichens, in Reaktion darauf, dass die Strichdaten mit dem Schriftartzeichen übereinstimmen; und – Erzeugen eines neuen Schriftartzeichens, basierend auf den Strichdaten, in Reaktion darauf, dass die Strichdaten nicht mit irgendeinem Schriftartzeichen des Schriftartsatzes übereinstimmen.
  19. Programmprodukt, umfassend ein computerlesbares Speichermedium, das einen Code, der durch einen Prozessor ausführbar ist, speichert, wobei der ausführbare Code einen Code umfasst zum Ausführen von einem: – Empfangen von Strichdaten von einem Handschrift-Eingabegerät; – Identifizieren von einem oder mehreren Handschriftzeichen in den Strichdaten; – Abbilden von einem oder mehreren Handschriftzeichen auf wenigstens ein nutzerspezifisches Schriftartzeichen, basierend auf den Strichdaten; und – Speichern einer Zeichen-Kodierung entsprechend dem nutzerspezifischen Schriftartzeichen in einer Datei.
  20. Programmprodukt nach Anspruch 19, wobei der Code weiterhin ausführbar ist zum: Anzeigen eines Textzeichens, das durch die Zeichen-Kodierung unter Verwenden des nutzerspezifischen Schriftartzeichens identifiziert wird.
DE102016109517.6A 2015-06-10 2016-05-24 Reduzierte Speicherung von Strichen in Dokumenten Pending DE102016109517A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/736,035 2015-06-10
US14/736,035 US9715623B2 (en) 2015-06-10 2015-06-10 Reduced document stroke storage

Publications (1)

Publication Number Publication Date
DE102016109517A1 true DE102016109517A1 (de) 2016-12-15

Family

ID=56134151

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016109517.6A Pending DE102016109517A1 (de) 2015-06-10 2016-05-24 Reduzierte Speicherung von Strichen in Dokumenten

Country Status (5)

Country Link
US (1) US9715623B2 (de)
EP (1) EP3104305B1 (de)
CN (1) CN106250804B (de)
DE (1) DE102016109517A1 (de)
GB (1) GB2539797B (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014116262A1 (en) * 2013-01-28 2014-07-31 Empire Technology Development Llc Communication using handwritten input
WO2015040740A1 (ja) * 2013-09-20 2015-03-26 株式会社 東芝 電子機器および方法
WO2015141260A1 (ja) * 2014-03-17 2015-09-24 株式会社河合楽器製作所 手書き音楽記号認識装置およびプログラム
US20170236318A1 (en) * 2016-02-15 2017-08-17 Microsoft Technology Licensing, Llc Animated Digital Ink
US11210467B1 (en) * 2017-04-13 2021-12-28 Snap Inc. Machine learned language modeling and identification
JP2019028094A (ja) * 2017-07-25 2019-02-21 大日本印刷株式会社 文字生成装置、プログラム及び文字出力装置
CN109254717B (zh) * 2018-08-13 2021-06-22 广东小天才科技有限公司 一种写字板的手写引导方法、装置、写字板及存储介质
WO2020059527A1 (ja) 2018-09-20 2020-03-26 富士フイルム株式会社 フォント作成装置、フォント作成方法及びフォント作成プログラム
WO2020102937A1 (zh) * 2018-11-19 2020-05-28 深圳市柔宇科技有限公司 手写笔迹处理方法、手写输入设备及计算机可读存储介质
CN109472249A (zh) * 2018-11-22 2019-03-15 京东方科技集团股份有限公司 一种确定书写体优劣等级的方法及装置
KR20200103236A (ko) * 2019-02-22 2020-09-02 삼성전자주식회사 수기에 기반한 입력을 디스플레이하기 위한 방법 및 장치
US20210311551A1 (en) * 2020-04-01 2021-10-07 Wacom Co., Ltd. Handwritten data generation apparatus, handwritten data reproduction apparatus, and digital ink data structure
CN112487876A (zh) * 2020-11-12 2021-03-12 深圳市鹰硕教育服务有限公司 智能笔字符识别方法、装置及电子设备
CN112486337B (zh) * 2020-11-17 2023-11-24 深圳市鹰硕技术有限公司 笔迹图形分析方法、装置及电子设备
JP2022138285A (ja) * 2021-03-10 2022-09-26 株式会社リコー 表示装置、表示方法、プログラム
CN114826665A (zh) * 2022-03-21 2022-07-29 深圳市鹰硕教育服务有限公司 一种智能笔笔迹数据存储方法和系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3362913B2 (ja) * 1993-05-27 2003-01-07 松下電器産業株式会社 手書き文字入力装置
JPH08249422A (ja) * 1995-03-08 1996-09-27 Canon Inc 文字処理装置及び方法
US6320985B1 (en) * 1998-07-31 2001-11-20 International Business Machines Corporation Apparatus and method for augmenting data in handwriting recognition system
EP1192519A2 (de) 1999-12-17 2002-04-03 Koninklijke Philips Electronics N.V. Gerät und system zur wiedergabe von handgeschriebenen eingaben
WO2002098049A2 (en) * 2001-05-31 2002-12-05 Empower Technologies, Inc. System and method of pen-based data input into a computing device
AUPR824401A0 (en) * 2001-10-15 2001-11-08 Silverbrook Research Pty. Ltd. Methods and systems (npw002)
JP2004117714A (ja) * 2002-09-25 2004-04-15 Riso Kagaku Corp フォント生成装置及びフォント生成プログラム
US20050105799A1 (en) 2003-11-17 2005-05-19 Media Lab Europe Dynamic typography system
US7657094B2 (en) * 2005-12-29 2010-02-02 Microsoft Corporation Handwriting recognition training and synthesis
KR20090046142A (ko) * 2007-11-05 2009-05-11 삼성전자주식회사 입력 필체 자동 변환 시스템 및 방법
CN102323919A (zh) * 2011-08-12 2012-01-18 百度在线网络技术(北京)有限公司 一种基于用户情绪指示信息显示输入信息的方法与设备
KR20130089486A (ko) 2012-02-02 2013-08-12 삼성전자주식회사 휴대단말기의 키 입력 방법 및 장치
JP5389241B1 (ja) * 2012-09-26 2014-01-15 株式会社東芝 電子機器および手書き文書処理方法
US9330331B2 (en) * 2013-11-11 2016-05-03 Wipro Limited Systems and methods for offline character recognition

Also Published As

Publication number Publication date
EP3104305A2 (de) 2016-12-14
US9715623B2 (en) 2017-07-25
EP3104305A3 (de) 2017-03-01
CN106250804A (zh) 2016-12-21
US20160364607A1 (en) 2016-12-15
EP3104305B1 (de) 2020-08-19
GB2539797B (en) 2020-04-01
GB2539797A (en) 2016-12-28
CN106250804B (zh) 2020-02-21
GB201609218D0 (en) 2016-07-06

Similar Documents

Publication Publication Date Title
DE102016109517A1 (de) Reduzierte Speicherung von Strichen in Dokumenten
DE202012005717U1 (de) Zeichenerkennung für überlappende Benutzer-Texteingabe
DE60204005T2 (de) Verfahren und einrichtung zur erkennung eines handschriftlichen musters
DE69916225T2 (de) Verfahren und System zur Wartung von Freiformtinteannotationen auf ändernden Ansichten
DE112008004156B4 (de) System und verfahren für einen gestenbasierten editiermodus und computerlesbares medium hierfür
DE60312572T2 (de) Verfahren und Gerät zum Konvertieren digitaler Bilder von Handzeichnungen zur weiteren Verwendung in einem strukturierten Text/Graphik Editor.
DE60219048T2 (de) Sektionsextrahierungswerkzeug für pdf-dokumente
JP6379520B2 (ja) 処理方法、処理システム及びコンピュータプログラム
DE112013004769T5 (de) Leerstellenvorhersage für eine Texteingabe
DE212011100021U1 (de) Vorrichtung zum Wiedergeben oder Umbemessen von Text und Bildern zur Anzeige auf Mobil-/Kleinbildschirmgeräten
DE102019004300A1 (de) Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten
DE102015122764A1 (de) Umstellen von handschriftlichem inhalt
DE112013004585T5 (de) Inkrementelle merkmalbasierte Gestentastatur-Dekodierung
DE102012014603A1 (de) System und Verfahren für den synchronisierten Betrieb einer Touch-vorrichtung
US11687704B2 (en) Method, apparatus and electronic device for annotating information of structured document
WO2022161293A1 (zh) 图像处理方法及装置、电子设备和存储介质
DE102015122760A1 (de) Aufnahme von handschriftzügen
CN101763234A (zh) 一种模拟各种屏幕分辨率的方法及其装置
DE112010004914T5 (de) Indexieren von Dokumenten
DE112018006131T5 (de) Semantisches normalisieren beim digitalisieren von dokumenten
DE102016105584A1 (de) Verbesserte suche in handschriftlichen daten
DE102015122762A1 (de) In frage kommende handschriftliche wörter unter verwendung von optischer zeichenerkennung und rechtschreibprüfung
DE102017106663A1 (de) Informationsverarbeitungsverfahren und elektronisches gerät
JP6387207B1 (ja) デジタルインクの符号化方法、復号化方法
DE102012216024A1 (de) Erkennung taktiler eingaben über die entsprechung mit der höchsten übereinstimmung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009780000

Ipc: G06V0030200000

R082 Change of representative

Representative=s name: GRUENECKER PATENT- UND RECHTSANWAELTE PARTG MB, DE

R016 Response to examination communication