-
HINTERGRUND
-
Informationshandhabungsgeräte („Geräte”), beispielsweise Handys, Smartphones, Tablet-Geräte, Laptop-Computer und dergleichen, ermöglichen es Benutzern, unter Verwendung eines Fingers oder eines Stifts/Griffels Handschriftliches einzugeben. Dies ermöglicht es den Benutzern, natürlicher und ohne die Verwendung einer Tastatur zu schreiben.
-
Herkömmlicherweise wird dem Benutzer ein Feld, ein Kästchen oder ein Fenster für Handschrift als Overlay dargestellt, z.B. ein Rechteck in einem unteren Abschnitt der Anzeige eines Touchscreens. In diesem Bereich kann der Benutzer Eingabe-Handschriftzüge, z.B. Buchstaben, Zahlen, Zeichen, Symbole usw., bereitstellen. Das Gerät verwendet eine Software, welche die Eingabe-Handschriftzüge, welche im Allgemeinen auf dem Bildschirm gezeigt werden, um dem Benutzer eine visuelle Rückmeldung geben, als Eingabe verwendet, indem sie die Eingabepositionen der Handschriftzüge auf dem Touchscreen entsprechend der Spracheinstellung des Geräts in Maschinentext konvertiert. Alternativ kann eine Grafik oder ein Bild der handschriftlichen Eingabe in eine zugrundeliegende Anwendung eingesetzt werden, z.B. ein Bild der Unterschrift des Benutzers.
-
KURZE ZUSAMMENFASSUNG
-
Kurz gesagt stellt ein Aspekt ein Verfahren bereit, welches folgende Schritte umfasst: Annehmen von Handschriftzügen in einer Eingabe-Overlayanwendung; Bestimmen von Handschrifteinheiten für die Handschriftzüge; Annehmen einer Bearbeitungseingabe der Handschriftzüge; und Umstellen der Handschriftzüge basierend auf der Bearbeitungseingabe.
-
Ein anderer Aspekt stellt ein elektronisches Gerät bereit, welches Folgendes umfasst: ein Eingabe- und Anzeigegerät; einen Prozessor, welcher operativ mit dem Eingabe- und Anzeigegerät gekoppelt ist; und ein Speichergerät, welches Anweisungen speichert, welche durch den Prozessor ausführbar sind, zum: Annehmen von Handschriftzügen in einer Eingabe-Overlayanwendung; Bestimmen von Handschrifteinheiten für die Handschriftzüge; Annehmen einer Bearbeitungseingabe der Handschriftzüge; und Umstellen der Handschriftzüge basierend auf der Bearbeitungseingabe.
-
Ein weiterer Aspekt stellt ein Produkt bereit, welches Folgendes umfasst: ein Speichergerät, auf dem Code gespeichert ist, wobei der Code von einem Prozessor eines elektronischen Geräts ausführbar ist und Folgendes umfasst: Code, welcher in einer Eingabe-Overlayanwendung, Handschriftzüge annimmt; Code, welcher Handschrifteinheiten für die Handschriftzüge bestimmt; Code, welcher eine Bearbeitungseingabe der Handschriftzüge annimmt; und Code, welcher die Handschriftzüge basierend auf der Bearbeitungseingabe umstellt.
-
Das Vorstehende ist eine Zusammenfassung und kann somit Vereinfachungen, Verallgemeinerungen und fehlende Einzelheiten umfassen; folglich wird der Fachmann verstehen, dass die Kurzdarstellung rein erläuternd ist und keineswegs dazu gedacht ist, einschränkend zu sein.
-
Zum besseren Verständnis der Ausführungsbeispiele zusammen mit anderen und weiteren Merkmalen und Vorteilen derselben wird auf die nachstehende Beschreibung in Verbindung mit den beiliegenden Zeichnungen gesehen Bezug genommen. Der Umfang der Erfindung wird in den beiliegenden Ansprüchen ausgewiesen.
-
KURZE BESCHREIBUNG DER VERSCHIEDENEN ANSICHTEN DER ZEICHNUNGEN
-
1 zeigt ein Beispiel einer Schaltung eines Informationshandhabungsgeräts.
-
2 zeigt ein anderes Beispiel einer Schaltung eines Informationshandhabungsgeräts.
-
3 (A bis C) zeigt ein Beispiel eines Umstellens von handschriftlichem Inhalt.
-
DETAILLIERTE BESCHREIBUNG
-
Es versteht sich ohne Weiteres, dass die Komponenten der Ausführungsbeispiele, wie sie hierin allgemein beschrieben und in den Figuren abgebildet sind, zusätzlich zu den beschriebenen Ausführungsbeispielen in vielen verschiedenen Konfigurationen angeordnet und ausgelegt sein können. Somit ist die nachstehende ausführlichere Beschreibung der Ausführungsbeispiele, wie in den Figuren dargestellt, nicht dazu gedacht, den Umfang der beanspruchten Ausführungsbeispiele einzuschränken, sondern ist nur für Ausführungsbeispiele repräsentativ.
-
Eine Bezugnahme in der gesamten vorliegenden Beschreibung auf „ein Ausführungsbeispiel” (oder ähnliche Ausdrücke) bedeutet, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder ein bestimmtes Kennzeichen, welches bzw. die in Verbindung mit dem Ausführungsbeispiel beschrieben wird, in mindestens einem Ausführungsbeispiel enthalten ist. Somit bezieht sich das Vorkommen der Redewendungen „bei einem Ausführungsbeispiel” und dergleichen an verschiedenen Stellen in der gesamten vorliegenden Beschreibung nicht unbedingt immer auf das gleiche Ausführungsbeispiel.
-
Ferner können die beschriebenen Merkmale, Strukturen oder Kennzeichen in einer beliebigen geeigneten Art in einem oder mehreren Ausführungsbeispielen kombiniert werden. In der nachstehenden Beschreibung werden zahlreiche spezifische Einzelheiten bereitgestellt, um ein gründliches Verständnis der Ausführungsbeispiele bereitzustellen. Der Fachmann auf diesem Gebiet wird jedoch erkennen, dass die diversen Ausführungsbeispiele ohne eine oder mehrere der spezifischen Einzelheiten oder mit anderen Verfahren, Bauteilen, Materialien und so weiter in die Praxis umgesetzt werden können. In anderen Fällen werden hinlänglich bekannte Strukturen, Materialien oder Vorgänge der Übersichtlichkeit halber nicht gezeigt oder ausführlich beschrieben.
-
Handgeschriebene Schriftstücke weisen häufig eine inbegriffene Layoutstruktur auf. Strukturen wie Zeilen und Abschnitte werden durch den Leerraum nahegelegt, den der Verfasser auf der Seite freigelassen hat. Es ist schwierig, ein bestehendes Layout zu bewahren, während ein handgeschriebenes Schriftstück bearbeitet wird. Existierende Anwendungen zum Erstellen von Notizen ermöglichen es den Benutzern, Textelemente zu löschen oder Leerraum zwischen den Textelementzeilen einzufügen. Diese Anwendungen lassen jedoch unweigerlich Leerraum in dem Schriftstück, welcher nicht mit dem anfänglich festgelegten Layout zu vereinbaren ist. Was benötigt wird, ist ein System, welches sich eher wie eine Textverarbeitung verhält, wenn es Schriftzüge handhabt. D.h. das System soll erlauben, dass handgeschriebene Wörter als Reaktion auf das Einfügen oder Entfernen von Inhalt dynamisch bewegt werden.
-
Ein Ausführungsbeispiel stellt ein derartiges System bereit. Bei einem Ausführungsbeispiel wird die Struktur des Handschriftlichen des Benutzers dynamisch analysiert, während der Benutzer schreibt. Das Ergebnis der Layoutanalyse umfasst das Gruppieren von Strichen, welche als zu einzelnen Wörtern gehörend identifiziert werden, das Gruppieren von Strichen, welche als zu Zeilen gehörend identifiziert werden, das Gruppieren von Strichen, welche als zu Abschnitten gehörend identifiziert werden, Positionen an den linken und rechten Rändern von Zeilen und Abschnitten (Seitenränder), eine Identifizierung der Abstände zwischen Wörtern, Zeilen und Abschnitten (z.B. eines durchschnittlichen Abstands).
-
Ein Ausführungsbeispiel unterstützt auch eine Gestensteuerung des handschriftlichen Inhalts im Hinblick auf eine Bearbeitung. Beispielsweise kann ein Benutzer mit Gesten, wie etwa einem Stifteingabesymbol, den Wunsch angeben, Handschriftliches einzufügen oder zu löschen. Beispielhaft wird als Reaktion auf eine Löschgeste, wie etwa eine Durchstreichgeste, welche Handschriftliches, welches durch die Geste angegeben wird (bei diesem Beispiel die Schriftzüge, welche durchgestrichen sind), entfernt. Das verbleibende Handschriftliche wird bewegt (umpositioniert, umgestellt), um das zuvor identifizierte Layout zu bewahren, z.B. ähnlich wie Textverarbeitungen einen Schriftsatz handhaben.
-
Als spezifisches Beispiel bilden die logischen Verknüpfungen, welche durch ein Ausführungsbeispiel für das Handschriftliche erstellt wurden, logische Handschrifteinheiten (z.B. Wörter, Zeichen), welche so gehandhabt werden können, wie man derzeit einen Schriftsatz handhabt (z.B. umgestellt, in Reaktion auf ein Hinzufügen oder Löschungen darin, die Einführung von Leerraum, Zeilenumbrüchen usw.). Ein Ausführungsbeispiel bestimmt die Formatierung des handgeschriebenen Schriftstücks dynamisch und kann unter Verwendung der Handschrifteinheiten innerhalb des Formatierungsrahmens den handgeschriebenen Text automatisch umstellen, als wenn er Maschinengedrucktes wäre.
-
Beispielsweise können die Handschrifteinheiten auf der gleichen Zeile wie gestrichene Handschrifteinheiten umgestellt oder umpositioniert werden, wobei die Handschrifteinheiten links von der Löschung unverändert bleiben und die Handschrifteinheiten rechts von der Löschung nach links verschoben werden (wenn man eine Sprache von links nach rechts voraussetzt), d.h. die Leerraumeinheiten werden nach der Löschung entfernt. Für die Handschrifteinheiten auf jeder Zeile eines Abschnitts unter der Löschung werden vollständige handgeschriebene Worteinheiten zum linken Ende der Zeile direkt darüber bewegt, bis die Breite der Zeile mit der bestimmten Breite des Abschnittblocks übereinstimmt. Die übrigen Handschrifteinheiten auf der Zeile werden derart verschoben, dass sie auf den linken Seitenrand des Abschnittblocks ausgerichtet werden. Für die Handschrifteinheiten in Abschnitten unterhalb der Löschung wird der ganze Abschnitt hochgeschoben, um den Abstand zu bewahren, welcher zuvor vorhanden war. Ähnlich wird in Reaktion auf eine Einfügungsgeste ein Leerraum erstellt (z.B. rechts von der Einfügungsgeste), indem das Geschriebene nach rechts und nach unten verschoben wird und dabei die Layouteigenschaften bewahrt werden. Während der Benutzer schreibt, nimmt dieser Leerraum dynamisch zu, um mehr Platz für nachfolgende Wörter zu schaffen, ähnlich wie das Einfügen von gedruckten Zeichen in einem Textverarbeitungsdokument.
-
Da ein Ausführungsbeispiel Handschrifteinheiten erstellt, welche ähnlich wie Gedrucktes gehandhabt werden können, kann der Benutzer die Handschrifteinheiten auswählen, kopieren, ausschneiden und einfügen. Beispielsweise kann ein Benutzer handgeschriebene Wörter in oder aus einem Abschnitt ziehen und ablegen. Während das handgeschriebene Wort durch eine neue Position bewegt wird, können andere handgeschriebene Wörter in dem Abschnitt dazu animiert werden, sich zu bewegen, um das Layout des Abschnittblocks zu bewahren.
-
Mit anderen Gesten oder Steuereingaben kann der Benutzer Layouteigenschaften ändern. Wenn beispielsweise die Breite eines Abschnitts geändert wird, kann das Handschriftliche derart bewegt werden, dass jede Zeile des Abschnitts unter Berücksichtigung der Größe der Handschrifteinheiten, ähnlich wie die Größe von gedruckten Wörtern, möglichst nahe an die gewünschte Breite gebracht wird. Dies kann durchgehend in Echtzeit erfolgen. Während der Benutzer beispielsweise den Rand des Abschnitts, z.B. über eine Stifteingabe an einem Seitenbedienelement, welches sich oben an der Eingabeschnittstelle befindet, zieht, werden die Handschrifteinheiten wiederholt bewegt, um mit der neuen Layoutgröße des Abschnittblocks übereinzustimmen.
-
Die Handschriftzüge können unter Verwendung von Handschrifterkennung zu einer Handschrifteinheit zusammengefasst werden, um die Schriftzüge mit einem logischen Wort zu verknüpfen. Die Handschrifteinheiten können die Form eines Bereichs annehmen, welcher mit den Schriftzügen verknüpft ist und gemäß Formatierungsregeln ausgerichtet ist (z.B. in Zeilen, gemäß dem bestimmten Zeilenabstand und den Seitenrändern beabstandet und dimensioniert).
-
Die abgebildeten Ausführungsbeispiele sind am besten mit Bezug auf die Figuren zu verstehen. Die nachstehende Beschreibung ist dazu gedacht, rein beispielhaft zu sein und bildet nur gewisse Ausführungsbeispiele ab.
-
Obwohl diverse andere Schaltkreise, Schaltungen oder Bauteile in Informationshandhabungsgeräten verwendet werden können, umfasst mit Bezug auf die Schaltungen 100 eines Smartphones und/oder Tablets ein in 1 abgebildetes Beispiel eine System-on-Chip Design, welches beispielsweise bei Tablets oder in anderen mobilen Computerplattformen vorzufinden ist. Die Software und der oder die Prozessoren sind in einem einzigen Chip 110 kombiniert. Die Prozessoren umfassen interne arithmetische Einheiten, Register, Zwischenspeicher, Busse, E/A-Anschlüsse usw., wie es in der Technik wohlbekannt ist. Interne Busse und dergleichen sind von verschiedenen Herstellern abhängig, doch im Wesentlichen können alle Peripheriegeräte (120) an einem einzigen Chip 110 angebracht werden. Die Schaltungen 100 kombinieren den Prozessor, die Speichersteuerung und den E/A-Steuerknoten alle zusammen in einen einzigen Chip 110. Derartige Systeme 100 verwenden typischerweise auch kein SATA oder PCI oder LPC. Übliche Schnittstellen umfassen beispielsweise SDIO und I2C.
-
Es gibt einen oder mehrere Leistungsverwaltungschips 130, z.B. eine Batterieverwaltungseinheit, BMU, welcher bzw. die den Strom verwaltet bzw. verwalten, wie er beispielsweise über eine aufladbare Batterie 140 zugeführt wird, welche durch Anschließen an eine Stromquelle (nicht gezeigt) wiederaufgeladen werden kann. Bei mindestens einer Bauform wird ein einziger Chip, wie etwa 110, verwendet, um eine BIOS-artige Funktionalität und einen DRAM-Speicher bereitzustellen.
-
Das System 100 umfasst typischerweise einen oder mehrere von einem WWAN-Transceiver 150 und einem WLAN-Transceiver 160 zum Anschließen an diverse Netzwerke, wie etwa Telekommunikationsnetzwerke und drahtlose Internet-Geräte, z.B. Zugangspunkte. Gewöhnlich sind zusätzliche Geräte 120 enthalten, z.B. eine Kamera, Kurzstrecken-Funkgeräte, ein Mikrofon usw. Das System 100 umfasst häufig einen Touchscreen 170 zur Dateneingabe und Anzeige/Wiedergabe. Das System 100 umfasst typischerweise auch diverse Speichergeräte, beispielsweise einen Flash-Speicher 180 und einen SDRAM 190.
-
2 bildet ein Blockdiagramm eines anderen Beispiels der Schaltkreise, Schaltungen oder Bauteile eines Informationshandhabungsgeräts ab. Das in 2 abgebildete Beispiel kann Computersystemen, wie etwa der THINKPAD-Serie von PCs, welche von Lenovo (US) Inc. aus Morrisville, NC, verkauft wird, oder anderen Geräte entsprechen. Wie es aus der vorliegenden Beschreibung hervorgeht, können die Ausführungsbeispiele andere Merkmale oder nur einige der Merkmale des in 2 abgebildeten Beispiels umfassen.
-
Das Beispiel aus 2 umfasst einen so genannten Chipsatz 210 (eine Gruppe integrierter Schaltungen bzw. Chips, welche zusammenarbeiten, Chipsätze) mit einer Architektur, welche je nach Hersteller (beispielsweise INTEL, AMD, ARM usw.) unterschiedlich sein kann. INTEL ist ein eingetragenes Warenzeichen von Intel Corporation in den Vereinigten Staaten und anderen Ländern. AMD ist ein eingetragenes Warenzeichen von Advanced Micro Devices, Inc. in den Vereinigten Staaten und anderen Ländern. ARM ist ein nicht eingetragenes Warenzeichen von ARM Holdings plc in den Vereinigten Staaten und anderen Ländern. Die Architektur des Chipsatzes 210 umfasst eine Kern- und Speichersteuerungsgruppe 220 und einen E/A-Steuerknoten 250, welcher Informationen (beispielsweise Daten, Signale, Befehle usw.) über eine Direct Management Interface (DMI) 242 oder eine Verbindungssteuerung 244 austauscht. In 2 ist die DMI 242 ein Chip-on-Chip-Interface (gelegentlich auch als Verknüpfung zwischen einer „Northbridge” und einer „Southbridge” bezeichnet). Die Kern- und Speichersteuerungsgruppe 220 umfasst einen oder mehrere Prozessoren 222 (beispielsweise Einzel- oder Mehrkern) und einen Speicher-Steuerknoten 226, welche Informationen über einen Front Side Bus (FSB) 224 austauschen; es sei zu beachten, dass die Bauteile der Gruppe 220 in einen Chip integriert sein können, welcher die herkömmliche „Northbridge-” Architektur ersetzt. Ein oder mehrere Prozessoren 222 umfassen interne arithmetische Einheiten, Register, Zwischenspeicher, Busse, E/A-Anschlüsse usw., wie es in der Technik wohlbekannt ist.
-
In 2 bildet der Speicher-Steuerknoten 226 eine Schnittstelle mit dem Speicher 240 ab (um beispielsweise eine Unterstützung für eine Art von RAM bereitzustellen, welche man als „Systemspeicher” oder „Speicher” bezeichnen kann). Der Speicher-Steuerknoten 226 umfasst ferner eine Niederspannungs-Differenzialsignalisierungs-(LVDS)Schnittstelle 232 für ein Anzeigegerät 292 (z.B. einen CRT, einen Flachbildschirm, einen Touchscreen usw.). Ein Block 238 umfasst eine bestimmte Technik, welche über die LVDS-Schnittstelle 232 unterstützt werden kann (z.B. serielles digitales Video, HDMI/DVI, Display-Anschluss). Der Speicher-Steuerknoten 226 umfasst auch eine PCI-Express-Schnittstelle (PCI-E) 234, welche diskrete Grafiken 236 unterstützen kann.
-
In 2 umfasst die E/A-Knoten-Steuerung 250 eine SATA-Schnittstelle 251 (beispielsweise für HDDs, SDDs 280 usw.), eine PCI-E-Schnittstelle 252 (beispielsweise für drahtlose Verbindungen 282), eine USB-Schnittstelle 253 (beispielsweise für Geräte 284, wie etwa einen Digitalisierer, eine Tastatur, Mäuse, Kameras, Telefone, Mikrofone, Speichermittel, biometrische Eingabegeräte, Sicherheitsgeräte, andere angeschlossene Geräte usw.), eine Netzwerkschnittstelle 254 (beispielsweise LAN), eine GPIO-Schnittstelle 255, eine LPC-Schnittstelle 270 (für ASICs 271, einen TPM 272, einen Super-E/A 273, einen Firmware-Hub 274, eine BIOS-Unterstützung 275 sowie diverse Arten von Speichern 276, wie etwa einen ROM 277, einen Flash 278 und einen NVRAM 279), eine Leistungsverwaltungsschnittstelle 261, eine Taktgeberschnittstelle 262, eine Audioschnittstelle 263 (beispielsweise für Lautsprecher 294), eine TCO-Schnittstelle 264, eine Systemverwaltungsbus-Schnittstelle 265 und SPI-Flash 266, welche ein BIOS 268 und Boot-Code 290 umfassen können. Die E/A-Knoten-Steuerung 250 kann Gigabit-Ethernet-Unterstützung umfassen.
-
Beim Einschalten kann das System derart konfiguriert sein, dass es den Boot-Code 290 für das BIOS 268 ausführt, welcher in dem SPI-Flash 266 gespeichert ist, und anschließend Daten unter der Kontrolle von einem oder mehreren Betriebssystemen und Anwendungs-Software (beispielsweise im Systemspeicher 240 gespeichert) verarbeitet. Ein Betriebssystem kann an einer beliebigen von diversen Stellen gespeichert sein und kann beispielsweise gemäß den Anweisungen des BIOS 268 zugänglich sein. Wie hier beschrieben, kann ein Gerät eine geringere oder größere Anzahl von Merkmalen umfassen als in dem System von 2 gezeigt werden.
-
Schaltungen von Informationshandhabungsgeräten, wie beispielsweise in 1 oder 2 angesprochen, können bei Geräten, wie etwa Tablets, Smartphones, Personal Computern allgemein und/oder anderen elektronischen Geräten verwendet werden. Die Benutzer können diese Geräte für diverse Funktionen verwenden, z.B. zum Eingeben von Handschriftzügen als Eingabemodalität für eine Internet-Suchanwendung, eine E-Mail-Anwendung, eine Textnachrichten- oder Chat-Anwendung, bei auszufüllenden Formularen usw. Beispielsweise können die in 1 angesprochenen Schaltungen in einem Tablet- oder Smartphone-Ausführungsbeispiel umgesetzt werden, wohingegen die in 2 angesprochenen Schaltungen in einem Laptop-PC-Ausführungsbeispiel umgesetzt werden können. Das Gerät kann jeweils ein Eingabe- und Anzeigegerät umfassen, z.B. einen Touchscreen oder dergleichen, welche dazu dient, Handschriftzüge anzunehmen, und stellt visuelle Anzeigen von Eingabeschriftzügen, wie etwa Buchstaben, Konvertierungen von handgeschriebenen Zeichen oder Schriftzügen in Maschinentext, eine Präsentation von in Frage kommenden Ersatz- oder Alternativwörtern und dergleichen bereit.
-
Mit Bezug auf 3A kann ein Benutzer zum Beispiel Handschriftzüge in einer Eingabe-Overlayanwendung bereitstellen, welche in einem Gerät 300, wie etwa einem Tablet-Computergerät, umgesetzt wird. Dabei liegen die Handschriftzüge in Form einer E-Mail vor. Ein Ausführungsbeispiel analysiert die handgeschriebenen Textelemente, um Handschrifteinheiten zu bestimmen, welche durch die gestrichelten Blöcke in 3 (A bis C) angegeben sind, von denen einer insbesondere bei 301 angegeben ist. Ein Ausführungsbeispiel kann die Handschriftzüge auch analysieren, um z.B. den Zeilenabstand und die Länge zu bestimmen, so dass eine Blockeinheit bestimmt werden kann, von denen in 3A zwei durch die punktierten Linien angegeben sind. Die Handschrifteinheiten, z.B. 301, sind logische Verknüpfungen von Schriftzügen, z.B. umfasst eine Handschrifteinheit den Buchstaben I alleine, da dieser ein Wort bildet. Ebenso wird eine andere Handschrifteinheit für benachbarte Schriftzüge, welche das Wort „Friday” bilden, verwendet, und noch eine andere wird auf der gleichen Zeile für das Wort „would” verwendet. Die Blocklänge wird beispielsweise durch die durchschnittliche Zeilenlänge oder die größte Länge der handgeschriebenen Zeile bestimmt. Bei dem Beispiel aus 3A wird die ganz rechte Grenze eines Abschnittblocks durch 303 angegeben. Die Formatierung (z.B. ein oder mehrere Abschnittblöcke, Zeilenabstand usw.) kann dynamisch bestimmt werden, z.B. angepasst werden, während der Benutzer handschriftliche Textelementeingaben bereitstellt.
-
Ein Benutzer kann diese Handschriftzüge einschließlich der Formatierung bereitstellen und veranlassen, dass die Schriftzüge in eine zugrundeliegende Anwendung, z.B. eine zugrundeliegende E-Mail-Anwendung, wie sie bei diesem nicht einschränkenden Beispiel verwendet wird, eingegeben werden. Ferner kann ein Ausführungsbeispiel die handgeschriebenen Schriftzüge in eine Maschineneingabe konvertieren, so dass sie als Gedrucktes angezeigt werden können. Das Gedruckte kann die Formatierung behalten, welche durch den Benutzer bei den Schriftzügen angegeben wird.
-
Bei einem Ausführungsbeispiel können die Handschriftzüge, z.B. basierend auf einer Bearbeitungseingabe, umgestellt oder umpositioniert werden. Eine Bearbeitungseingabe für den Zweck der vorliegenden Beschreibung kann als beliebige Eingabe angesehen werden, welche ein Umstellen der Schriftzüge benötigt, um die Handschriftkennzeichen der ursprünglichen Schriftzüge des Benutzers (so gut wie möglich) zu bewahren. Somit können die Bearbeitungseingaben ohne Einschränkung das Einfügen von neuem Inhalt, das Löschen von vorhandenem Inhalt, das Umpositionieren von Inhalt oder Kombinationen davon umfassen.
-
Als erläuterndes Beispiel, wie in 3B gezeigt, kann ein Benutzer eine Bearbeitungseingabe, wie etwa einen Gestenschriftzug, hier in Form eines „X”, welches bei 304 angegeben ist, über dem vorhandenen Schriftzug „I” bereitstellen. Die Overlayeingabe-Anwendung nimmt diese Gesteneingabe an und deutet sie als eine Löschanfrage, welche mit dem zugrundeliegenden Schriftzug „I” verknüpft ist.
-
Die Overlayeingabe-Anwendung stellt somit ein Eingabefeld-Overlay 305 bereit, welche einen Vorschau- und Steuerbereich 306 umfasst, welcher eine Vorschau der Handschrifterkennungsdeutung der Schriftzüge als Druckschrift (bei diesem Beispiel die gedruckten Wörter „this” und „Friday” für die entsprechenden Schriftzüge, sowie die Druckschriftvorschau „we” für die neue Eingabe) bietet, und Eingabebedienelemente (hier ein Bedienelement für Einstellungen, ein Bedienelement für Grafikeingabe und ein Bedienelement für Druckschrifteingabe) bietet. Das Eingabefeld-Overlay 305 stellt dem Benutzer auch einen Bereich 307 bereit, in dem neue Schriftzüge eingegeben werden können, z.B. um den bei 304 gestrichenen Schriftzug zu ersetzen. Bei diesem Beispiel hat der Benutzer neue Schriftzüge, welche das Wort „we” bilden, in dem Bereich 307 bereitgestellt, wie in dem Vorschaubereich 306 der Handschrifterkennung im Voraus zu sehen ist.
-
Wie in 3C abgebildet, kann ein Ausführungsbeispiel anschließend entsprechend die neuen Handschriftzüge „we” in die vorhandenen Handschriftzüge eingeben, z.B., wie abgebildet, zwischen „Friday” und „would”. Ein Ausführungsbeispiel verwendet auch Daten über Handschrifteinheiten (visuell zur deutlichen Erläuterung durch gestrichelte Linien angegeben), um die Handschriftzüge umzustellen. Bei diesem Beispiel ist die Handschrifteinheit für die Schriftzüge „we”, welche bei 307 aus 3C angegeben wird, größer als die für die Schriftzüge „I”, welche bei 301 aus 3A angegeben wird. Angesichts der Blockgröße für diesen Abschnitt und des Seitenrandes 303 stellt ein Ausführungsbeispiel die Handschrifteinheiten von „would”, „love”, „for”, „all” und „of” um, indem sie diese nach rechts verschiebt, um die Größe der neuen Handschrifteinheit von „we” bei 307 zu berücksichtigen. Zudem bricht ein Ausführungsbeispiel die Handschrifteinheit „us” von ihrer ursprünglichen Position (3A) auf die folgende Zeile um, d.h. wie bei 309 aus 3C angegeben. Dies ermöglicht es den neuen Handschriftzügen von „we”, in die erste Zeile zu passen, während der Blockseitenrand 303 bewahrt wird.
-
Es versteht sich, dass eine ähnliche Aktion verwendet werden kann, um neue Handschriftzüge einzufügen und um vorhandene Handschriftzüge zu löschen. Ferner kann ein Ausführungsbeispiel eine einzufügende Handschrifteinheit dynamisch erweitern, um die neuen Handschriftzüge zu berücksichtigen, z.B. wenn der Benutzer „we both” statt „we” geschrieben hätte, um den Schriftzug „I” zu ersetzen. Somit umfasst das Umstellen das dynamische Umstellen der Handschrifteinheiten basierend auf der Größe der einzufügenden Handschrifteinheit und/oder den Blockdimensionen.
-
Da die Gesamtformatierung der handschriftlichen Eingabe analysiert wird, z.B. eine Blockeinheit für die Handschriftzüge bestimmt wird, kann das koordinierte Umstellen der gesamten Blockeinheit erreicht werden. Somit kann die Bearbeitungseingabe eine zusätzliche Bewegung der Handschriftzüge umfassen, wie etwa eine Ziehbewegung einer Handschrifteinheit (z.B. kann ein Wort, ein Satz oder ein ganzer Block ausgeschnitten und eingefügt werden), und können die Handschrifteinheiten und/oder Blöcke entsprechend umgestellt werden. Ebenso können Bedienelemente auf Dokumentenebene, z.B. bewegbare Abschnittführungen, wie etwa die angezeigte Seitenrandlinie 303 aus 3A, derart umgesetzt werden, dass der Benutzer Größe und Position des Blocks anpassen kann, wobei die Handschrifteinheiten entsprechend umgestellt werden.
-
Ein Ausführungsbeispiel stellt deshalb dadurch eine technische Verbesserung dar, dass diese das Umstellen von Handschriftzügen derart bereitstellt, dass ein Benutzer eine Formatierung bereitstellen und bewahren kann, selbst wenn die handschriftlichen Textelemente später bearbeitet werden. Dies unterstützt den Benutzer durch eine intelligentere Verknüpfung der visuellen Anzeige der Handschriftzüge mit den Absichten des Benutzers. Die diversen Ausführungsbeispiele können die Modalität einer handschriftlichen Eingabe benutzerfreundlicher gestalten. Des Weiteren verbessern die diversen Ausführungsbeispiele den Prozess der handschriftlichen Eingabe, indem sie dem Benutzer die Möglichkeit bereitstellen, Schriftzüge (und konvertierte Druckschrift) innerhalb des Textes zu bearbeiten, ohne sich mit der zeitraubenden Neueingabe großer Datenmengen abgeben zu müssen.
-
Wie der Fachmann ferner verstehen wird, können diverse Aspekte als System, Verfahren oder Geräteprogrammprodukt ausgebildet sein. Entsprechend können die Aspekte die Form eines Ausführungsbeispiels ganz aus Hardware oder eines Ausführungsbeispiels mit Software, welche hier allgemein als „Schaltung”, „Modul” oder „System” bezeichnet wird, annehmen. Ferner können die Aspekte die Form eines Geräteprogrammprodukts annehmen, welches als ein oder mehrere gerätelesbare Medien ausgebildet ist, in denen gerätelesbarer Programmcode ausgebildet ist.
-
Es sei zu beachten, dass die hier beschriebenen diversen Funktionen unter Verwendung von Anweisungen umgesetzt werden können, welche von einem Prozessor ausgeführt werden und auf einem gerätelesbaren Speichermedium gespeichert werden, welches hierin als Nicht-Signalspeichergerät bezeichnet wird. Ein Nicht-Signalspeichergerät kann beispielsweise ein elektronisches, magnetisches, optisches, elektromagnetisches, infrarotes oder Halbleiter-System, Vorrichtung oder Gerät oder eine geeignete Kombination derselben sein. Genauere Beispiele eines Speichermediums würden Folgendes umfassen: eine tragbare Computerdiskette, eine Festplatte, einen Arbeitsspeicher (RAM), einen Festwertspeicher (ROM), einen löschbaren programmierbaren Arbeitsspeicher (EPROM oder Flash-Speicher), eine Lichtleitfaser, einen tragbaren Kompakt-Disk Festwertspeicher (CD-ROM), ein optisches Speichergerät, ein magnetisches Speichergerät oder eine beliebige geeignete Kombination derselben. In Zusammenhang mit der vorliegenden Druckschrift ist ein Nicht-Signalspeichergerät kein Signal, ist nicht-flüchtig, und umfasst der Begriff „nicht-flüchtig” alle Medien außer Signalmedien.
-
Programmcode zum Ausführen von Operationen kann in einer Kombination von einer oder mehreren Programmiersprachen verfasst sein. Der Programmcode kann vollständig auf einem einzigen Gerät, teilweise auf einem einzigen Gerät, als selbstständiges Software-Paket, teilweise auf einem einzigen Gerät und teilweise auf einem anderen Gerät oder vollständig auf dem anderen Gerät ausgeführt werden. In manchen Fällen können die Geräte über eine beliebige Art von Verbindung oder Netzwerk verbunden werden, wozu ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN) gehört, oder kann die Verbindung über andere Geräte hergestellt werden (beispielsweise über das Internet unter Verwendung eines Internet-Anbieters), über drahtlose Verbindungen, z.B. Nahfeldkommunikation, oder über eine verkabelte Verbindung, wie etwa über eine USB-Verbindung.
-
Es werden hier Ausführungsbeispiele mit Bezug auf die Figuren beschrieben, welche beispielhafte Verfahren, Geräte und Programmprodukte gemäß diversen Ausführungsbeispielen abbilden. Es versteht sich, dass die Aktionen und die Funktionalität mindestens teilweise durch Programmanweisungen umgesetzt werden können. Diese Programmanweisungen können einem Prozessor eines speziellen Informationshandhabungsgeräts oder eines anderen programmierbaren Datenverarbeitungsgeräts bereitgestellt werden, um derart eine Maschine zu ergeben, so dass die Anweisungen, welche durch einen Prozessor des Geräts ausgeführt werden, die vorgegebenen Funktionen/Aktionen umsetzen.
-
Es sei zu beachten, dass, obwohl spezifische Blöcke in den Figuren verwendet werden und eine bestimmte Reihenfolge von Blöcken abgebildet wurde, dies keine einschränkenden Beispiele sind. In bestimmten Zusammenhängen können zwei oder mehrere Blöcke kombiniert werden, kann ein Block in zwei oder mehrere Blöcke unterteilt werden, oder können bestimmte Blöcke je nach Bedarf umgeordnet oder umgestellt werden, da die ausdrücklich abgebildeten Beispiele nur zur Beschreibung verwendet werden und nicht als einschränkend auszulegen sind.
-
Wie sie hier verwendet wird, kann die Singularform „ein” als die Pluralform „ein oder mehrere” umfassend ausgelegt werden, soweit nicht eindeutig anderweitig angegeben.
-
Die vorliegende Offenbarung wurde zum Zweck der Erläuterung und Beschreibung vorgelegt, ist aber nicht dazu gedacht, erschöpfend oder einschränkend zu sein. Zahlreiche Modifikationen und Variationen werden für den Fachmann ersichtlich sein. Die Ausführungsbeispiele wurden gewählt und beschrieben, um die Grundlagen und die praktische Anwendung zu erklären, und um anderen Fachleuten zu ermöglichen, die Offenbarung für diverse Ausführungsbeispiele zu verstehen, wie sie für die bestimmte beabsichtigte Verwendung geeignet sind.
-
Obwohl somit hier erläuternde Ausführungsbeispiele mit Bezug auf die beiliegenden Figuren beschrieben wurden, versteht es sich, dass diese Beschreibung nicht einschränkend ist und dass diverse andere Änderungen und Modifikationen hieran vom Fachmann vorgenommen werden können, ohne Geist oder Umfang der Offenbarung zu verlassen.