CN101164054B - 自动提示列表和手写输入 - Google Patents

自动提示列表和手写输入 Download PDF

Info

Publication number
CN101164054B
CN101164054B CN200680013369XA CN200680013369A CN101164054B CN 101164054 B CN101164054 B CN 101164054B CN 200680013369X A CN200680013369X A CN 200680013369XA CN 200680013369 A CN200680013369 A CN 200680013369A CN 101164054 B CN101164054 B CN 101164054B
Authority
CN
China
Prior art keywords
user
automatically
auto
input
hand
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.)
Active
Application number
CN200680013369XA
Other languages
English (en)
Other versions
CN101164054A (zh
Inventor
A·加赛德
F·D·琼斯
J·W·佩蒂罗斯
J·A·克洛
J·C·谭多格
L·B·基利
S·J·戴维斯
T·穆拉雅玛
T·A·基林斯基
T·D·舒尔茨
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN101164054A publication Critical patent/CN101164054A/zh
Application granted granted Critical
Publication of CN101164054B publication Critical patent/CN101164054B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/03Arrangements for converting the position or the displacement of a member into a coded form
    • 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/0489Interaction 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 dedicated keyboard keys or combinations thereof
    • G06F3/04895Guidance during keyboard input operation, e.g. prompting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/171Editing, e.g. inserting or deleting by use of digital ink
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • 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
    • G06V30/387Matching; Classification using human interaction, e.g. selection of the best displayed recognition candidate
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Character Discrimination (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

描述了一种在自动提示列表中使用手写输入的进程和系统。手写输入被识别为文本,并被转发到基于所识别的文本提供提示列表结果的自动提示列表提供器。

Description

自动提示列表和手写输入
背景技术
相关技术的描述
当前,自动提示列表被用在用户接口中。例如,当用户在英特网浏览器的地址栏中输入信息时,可向用户显示使其输入完成的提示。在这类系统中,用户可开始在地址输入栏中键入“www”,则将向其显示以下可能的选择,这些选择可包括或可不包括以前访问过的网站:
http://www.
https://www.
ftp://www.
www.cnn.com
www.msnbc.com
使用自动提示列表的一个优点是它能够向用户提示已输入到栏中的信息的完整(信息)。自动提示列表基于1)先前输入或2)期望输入的至少之一来提供内容提示。
虽然常规自动提示列表是有益的,但是它们受限于基于文本的输入系统,即仅对键盘输入做出反应。使用基于笔的计算系统的用户在使用自动提示列表时受到限制,因为常规系统不对手写输入产生响应。
发明内容
本发明的各个方面解决了上述问题的一个或多个,由此针对手写输入提供了经改进的自动提示能力。本发明的各个方面使得用户能够输入或开始输入手写信息并使系统提供自动提示内容作为响应。
附图说明
本发明的各个方面作为示例而非限制地示出于附图中。
图1示出了其中可实现本发明的特定方面的通用数字计算环境的示意图。
图1B到1M示出了支持本发明的一个或多个方面的通用计算机环境。
图2示出了根据本发明的各个方面的基于笔的计算系统的示例性实例。
图3示出了根据本发明的各个方面的示例性元件之间的交互动作。
图4示出了根据本发明的各个方面的自动提示列表的一个示例。
图5示出了与本发明的至少一个方面互动的各个对象。
图6示出了由根据本发明的各个方面的自动提示列表产生的另一个示例。
图7示出了与应用程序互动的常规自动提示列表。
具体实施方式
本发明的各个方面涉及响应于用户手写输入提供自动提示信息。自动提示信息可随所使用应用程序的变化而变化。
注意:在以下描述中阐述了元件之间的各种连接。注意:这些连接是通用的,并且除非另外说明,可以是直接或间接的,而且本说明书并非旨在在这个方面进行限制。
概述
对于计算机用户而言,手写电子墨水变得越来越普遍。尽管越来越受到大众的青睐,但是手写作为输入方式有其自身的缺点。重点在于,手写识别总是不能做到尽善尽美。用户试图写入的东西与手写被错误识别之间的断层破坏了用户的感受。为了尝试克服这种识别失败,用户转向键入(在实际或显示键盘上)或者尝试使用手写墨水。可以理解,如果在使用输入笔控制应用程序时却需要基于文本的输入来起作用,则用户可能会感到失望。
本发明的各个方面涉及手写接收面板与自动完成进程之间的接口。在此,在本发明的一个示例中,应用程序可包含要求用户输入的用户接口。用户、应用程序或操作系统可调用手写接收面板,以便接收用户的手写(输入)。手写接收面板可进行识别,并且将识别到的文本发送到自动完成进程,其中该自动完成进程基于所接收的信息确定提示内容并等待用户输入。用户可选择来自自动完成进程的提示之一,然后该选择被转发到应用程序。或者,用户可向识别信息的手写接收面板添加更多的信息,而自动完成进程基于来自手写接收面板的信息提供提示。
在本发明的另一个方面,当用户选择或向手写接收面板添加新信息时,手写输入面板可与自动完成进程来回地交换信息。
在一些情形中,用户可能能够利用先前被识别的、先前被定位(因为存在于存储器中)的信息,或者对输入信息使用预定结构。本文将描述本发明的这些和其它方面。
墨水的特性
对于使用墨水笔的用户而言,众所周知的是,物理墨水(使用带墨水容器的笔在纸张上书写的一种)能够比由线段连接的一系列坐标传递更多的信息。例如,物理墨水可反应笔的压力(通过墨水的厚度)、笔的角度(通过线条或曲线的形状以及离散点周围的墨水的性态)以及笔尖的速度(通过平直度、线宽以及线条或曲线路线上的线宽变化)。另外的示例包括墨水被吸收到纸张或其沉积的其它表面的纤维的方法。这些细微特性还有助于传递以上所列特性。由于这些附加特性,所以能够比多个点之间的均匀线宽更即时地传递情绪、个性、着重点等。
当用户使用基于输入笔的输入设备时,电子墨水(或墨水)涉及捕获以及所所捕获电子信息的显示。电子墨水指笔划顺序或任意笔划的收集,其中每一笔划包括一连串点。这些笔划可同时提取或收集,或者为了单独的缘故,可在独立时间和位置提取或收集。这些点可使用各种公知技术来呈现,包括笛卡儿(Cartesian)坐标(X,Y)、极坐标(r,Θ)和其它本领域所公知的技术。电子墨水可包括真实墨水的特性的显示,包括压力、角度、速度、颜色、笔尖尺寸和墨水不透明度。电子墨水还可包括其它特性,其它信息中包括墨水被沉积到页面上的次序(对于大多数西语而言,从左到右然后往下的光栅图案)、时间戳(指示墨水何时被沉积)、墨水书写者的指示、以及主叫设备(在其上拖曳墨水的机器的标识或用于沉积墨水的笔的标识的至少之一)。
在上述特性中,主要使用了笔划的时间次序以及作为一系列坐标的笔划。同时也可使用所有其它特性。
术语
  术语   定义
  墨水   带特性的一连串或一组笔划。一连串笔划可包括有序方式的笔划。次序可通过捕获时间或通过笔划出现在页面上的位置、或者通过墨水书写者完成的状态来排序。其它次序也是可能的。一组笔划
  可包括笔划序列或无序笔划、或者其任意组合。此外,对于笔划中的每一笔划或点而言,一些特性可能是唯一的(例如压力、速度、角度等)。这些特性可存储在笔划或点层面,而非墨水层面。
 墨水对象   存储有带特性或不带特性的墨水的数据结构。
 笔划   一连串或一组捕获点。例如,当进行再现时,一连串点可使用线条来连接。或者,笔划可表示成一个点和指向下一个点的矢量。简言之,不管点的底层表示和/或如何连接这些点,笔划旨在包括与墨水相关的点或线段的任何表示。
 文档   具有可视化表示和内容的任何电子文件。文档可包括网页、文字处理文档、笔记本页面或写字板、电子数据表、视觉显示、数据库记录、图像文件以及其任意组合。
 再现(Render or Rendered or Rendering)   确定信息(包括文本、图形和/或电子墨水)如何显示-在屏幕上、打印或以一些其它方式输出-的进程。
 计算机可读介质   计算机系统上可由用户访问的任意可用介质。作为示例而非限制,“计算机可读介质”可包括计算机存储介质和通信介质。
  术语   定义
 计算机存储介质   “计算机存储介质”包括以诸如计算机可读指令、数据结构、程序模块或其它数据的信息存储的任何方法或技术实现的易失性和非易失性、可移动和不可移动的介质。“计算机存储介质”包括但
  不限于:RAM、ROM、EEPROM、闪存或其它存储器技术;CD-ROM、数字通用光盘(DVD)或其它光存储器设备;磁带盒、磁带、磁盘存储器或其它磁性存储设备;或者可被用来存储所需信息并可由计算机访问的任何其它介质。
  通信介质   “通信介质”通常以诸如载波或其它传送机制的已调制数据信号的方式体现计算机可读指令、数据结构、程序模块或者其它数据,并且包括任意信息传输介质。
通用计算环境
图1示出了其上可实现本发明的适当的计算系统环境100的一个示例。计算系统环境100仅作为适当的计算环境的一个示例,而非旨在对本发明的用途范围或功能性做任何限制。计算机环境100也不应当被解释为对示例性操作系统100中所示元件的任何一个或组合有的任何依赖性或要求。
本发明可运行于许多其它通用或专用计算系统环境或配置。适用于本发明的众所周知的计算系统、环境和/或配置包括但不限于:个人计算机、服务器计算机、手持型或膝上设备、多处理机系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、微型计算机、大型计算机、包括上述系统或设备的任意种类的分布式计算环境等。
可在由计算机执行的诸如程序模块的计算机可执行指令的通用环境中描述本发明。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。也可在其中通过经由通信网络链接的远程处理设备执行任务的分布式计算环境中实践本发明。在分布式计算环境中,程序模块可位于包括存储器存储设备的本地或远程计算机存储介质中。
参看图1,用于实现本发明的示例性系统包括计算机110形式的通用计算设备。计算机110的元件可包括但不限于:处理单元120、系统存储器130和将包括系统存储器在内的各种系统元件耦合到处理单元120的系统总线121。系统总线121可以是包括使用各种总线架构中的任一种的存储器总线或存储器控制器、外围总线以及局域总线在内的若干类型总线结构中的任意一种。作为示例而非限制,这些架构包括工业标准结构(ISA)总线、微通道结构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局域总线、以及也称为夹层(Mezzanine)总线的外设部件互连(PCI)总线。
计算机110通常包括各种计算机可读介质。计算机可读介质可以是可由计算机110访问的任何可用介质,包括易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括以存储诸如计算机可读指令、数据结构、程序模块或其它数据的信息的任意方法和技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括但不限于:RAM、ROM、EEPROM、闪存或其它存储技术、CD-ROM、数字通用光盘(DVD)或其它光盘存储器、磁带盒、磁带、磁盘存储器或其它磁存储设备、或者可被用来存储所需信息并可由计算机110访问的任意其它介质。通信介质通常以诸如载波或其它传送机制的已调制数据信号的方式体现计算机可读指令、数据结构、程序模块或者其它数据,并且包括任意信息传输介质。术语“已调制数据信号”是指以在信号中编码信息的方式设置或改变了其特性中的一个或多个的信号。作为示例而非限制,通信介质包括诸如有线网络或直接连接的有线介质、以及诸如声波、RF、红外线和其它无线介质的无线介质。以上介质的任意组合应当也可包括在计算机可读介质的范围内。
系统存储器130包括诸如只读存储器(ROM)131和随机存取存储器(RAM)132的易失性和/或非易失性存储器形式的计算机存储介质。包含有助于诸如在启动期间在计算机110内的元件之间传递信息的基本例程的基本输入/输出系统133(BIOS)通常存储在ROM 131中。RAM 132通常包含通过处理单元120直接存取和/或立即操作的数据和/或程序模块。作为示例而非限制,图1示出了操作系统134、应用程序135、其它程序模块136和程序数据137。
计算机110也可包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图1示出了对不可移动的非易失性磁性介质读或写的硬盘驱动器141、对可移动的非易失性磁盘152读或写的磁盘驱动器151、以及对诸如CD ROM或其它光学介质的可拆卸的非易失性光盘156读或写的光盘驱动器155。可被用在示例性操作环境中的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于:磁带盒、闪存卡、数字通用光盘、数字视频磁带、固态RAM、固态ROM等。硬盘驱动器141通常经由诸如接口140的不可移动存储器接口连接到系统总线121,而磁盘驱动器151和光盘驱动器155通常经由诸如接口150的可移动存储器接口连接到系统总线121。
以上讨论并在图1中示出的驱动器以及与它们相关联的计算机存储介质为计算机110提供了计算机可读指令、数据结构、程序模块和其它数据的存储。例如,在图1中,硬盘驱动器141被示为存储操作系统144、应用程序145、其它程序模块146以及程序数据147。注意:这些组件可与操作系统134、应用程序135、其它程序模块136和程序数据137相同或不同。操作系统144、应用程序145、其它程序模块146和程序数据147被赋予不同附图标记,以便最低限度说明它们是不同的副本。用户可通过诸如键盘162和通常称之为鼠标、跟踪球或触摸板的定点设备161向计算机20输入命令和信息。其它输入设备(未示出)可包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些或其它输入设备常常经由耦合于系统总线的用户输入接口160连接到处理单元120,但也可通过诸如并行端口、游戏端口或通用串行总线(USB)的其它接口和总线结构连接。监视器191或其它类型的显示设备也经由诸如视频接口190的接口连接到系统总线121。除监视器之外,计算机还可包括诸如扬声器197和打印机196的其它外围输出设备,它们可经由输出外围接口195连接。
计算机110可工作在使用到诸如远程计算机180的一个或多个远程计算机的逻辑连接的网络化环境中。远程计算机180可以是个人计算机、服务器、路由器、网络PC、对等设备或其它公共网络节点,并且通常包括以上就计算机110所描述的组件中的许多或所有组件,尽管图1仅示出了存储设备181。图1中所示的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可包括其它网络。这些网络环境在办公室、企业计算机网络、内联网和因特网中是普遍的。
当用在LAN网络环境中时,计算机110经由网络接口或适配器170连接到LAN 171。当用在WAN网络环境中时,计算机110通常包括调制解调器172或在诸如因特网的WAN 173上建立通信的其它装置。或为内置式或为外置式的调制解调器172可经由用户输入接口160或其它适当的机制连接到系统总线121。在网络化环境中,关于计算机110所述的程序模块或其一部分可被存储在远程存储器存储设备中。作为示例而非限制,图1示出了驻留在存储设备181的远程应用程序185。应当理解,所示网络连接仅是示例性的,并且也可使用在计算机之间建立通信链接的其它装置。
在一些方面中,笔数字转换器165以及伴随笔或笔尖166被设置成数字地捕获徒手输入。尽管示出了笔数字转换器165与用户输入接口160之间的直接连接,但在实践中,笔数字转换器165可直接耦合到处理单元110、并行端口或者通过包括无线的任意技术耦合到其它接口以及系统总线130。笔166也可具有与其相关联的摄像头,以及用于将通过该摄像头捕获到的图像信息无线传输到与总线130互动的接口的收发器。此外,笔可具有除摄像头之外的或替代其的、用于确定电子墨水的笔划的其它感测系统,包括加速度计、磁强计和陀螺仪。
应当理解,所示网络连接是示例性的,并且也可使用其它手段建立计算机之间的通信链路。采取现有的诸如TCP/IP、以太网、FTP、HTTP等的各种公知协议的任一种,并且系统可工作于允许用户从基于web的服务器检索网页的客户机-服务器配置。各种常规web浏览器的任一种可被用来显示和操作网页上的数据。
编程接口(或更简明的为接口)可被视为使得一个或多个代码段能够与一个或多个其它代码段通信或者访问它们所提供的功能的任何机制、进程、协议。或者编程接口可被视为系统组件中能够通信耦合到其它组件的一个或多个机制、方法、函数调用、模块等的一个或多个机制、方法、函数调用、模块、对象等。不管所应用的术语或者不管代码段是否单独编译、或者代码段用作源、中间还是目标代码、或者代码段用在运行时间系统还是进程中、或者它们位于同一或不同机器上还是分布于多个机器、或者代码段所提供的功能完全以软件方式、完全以硬件方式还是硬件和软件的组合来实现,前述语句中的术语“代码段”旨在包括一个或多个指令或代码行,并且包括例如代码模块、对象、子例程、函数等。
概念上,编程接口可在如图1B或图1C中一般地示出。图1B示出了作为第一与第二代码段进行通信的管道的接口Interface1。图1C示出了包括接口对象I1和I2(可以作为或不作为第一和第二代码段的一部分)的接口,这些接口对象使得系统的第一和第二代码段可经由介质M进行通信。从图1C中可看到,可将接口对象I1和I2视为同一系统的独立接口,也可认为对象I1和I2再加上介质M构成接口。尽管图1B和1C示出了双向流以及流的每一侧的接口,但是特定实现可仅具有一个方向上的信息流(或如下所述没有信息流)或者可仅在一侧具有接口对象。作为示例而非限制,诸如应用编程接口(API)、入口点、方法、函数、子例程、远程过程调用和组件对象模型(COM)接口的术语被包括在编程接口的定义内。
这种编程接口的各个方面可包括:第一代码段由此将信息(其中以最宽泛的理解使用“信息”并包括数据、命令、请求等)发送到第二代码段的方法;第二代码段由此接收信息的方法;以及信息的结构、序列、语法、组织、模式、定时和内容。在这点上,底层输运介质本身对于接口的操作而言可能不重要,不管此介质是有线还是无线,或者两者的组合,只要信息以接口所定义的方式传输。在特定情形中,信息并非以常规理解中的单向或双向传递,因为信息传递可经由另一种机制(例如放置于缓冲器、文件等中的、分别来自代码段之间的信息流的信息)或者当一个代码段仅仅访问第二代码段所提供的功能时不存在。在例如取决于代码段以松散耦合还是紧密耦合配置方式作为系统的一部分的给定情形中,任何或所有这些方面都可能是重要的,所以所列出的应当认为是示例性的而非限制。
对于本领域技术人员而言,这种编程接口概念是众所周知的,而且根据上述本发明的详细描述是清楚的。然而,存在实现编程接口的其它方法,而且除非明确排除,这些都旨在通过在本说明书的最后部分阐述的权利要求来包括。其它这样的方法可能显得比图1B和1C的简单化视图要更高级和复杂,然而仍可执行类似功能来实现同样全面的结果。现在将简要地描述编程接口的一些示例性可选择的实现。
A.分解(FACTORING)
从一个代码段到另一个的通信可通过将通信分割成多个离散通信来间接实现。这示意性地示出于图1D和1E中。如所示,一些接口可根据可分割的功能组来描述。因此,可分解图1B和1C的接口功能来实现相同的结果,正如可数学地提供24,即为2×2×3×2。因此,如图1D所示,由接口Interface1所提供的功能可再分解以将该接口的通信转换成多个接口Interface1A、Interface1B、Interface1C等的通信,同时实现相同的结果。如图1E中所示,由接口I1提供的功能可再分解成多个接口I1a、I1b、I1c等,同时实现相同的结果。类似地,第二代码段接收来自第一代码段的信息的接口I2可分解成多个接口I2a、I2b、I2c等。当进行分解时,第一代码段所包括接口的数量无需匹配第二代码段所包括接口的数量。在图1D和1E的任一情况中,接口Interface1和I1的功能本质分别与图1B和1C的保持相同。接口的分解可能还伴随着结合、交换和其它数学特性,从而分解可能难以被识别。例如,操作的次序可能是不重要的,因此由接口实现的功能可在到达接口之前就已通过另一代码或接口块实现,或者通过系统的单独组件执行。此外,编程领域的普通技术人员可理解,存在实现相同结果的各种进行不同函数调用的方法。
B.重新定义(REDEFINITION)
在一些情况中,忽略、添加或重新定义编程接口的特定方面(例如参数)却仍可实现预期结果是可能的。这示出于图1F和1G中。例如,假定图1B的接口Interface1包括函数调用Square(input,precision,output)-包括三个参数input(输入)、precision(精度)和output(输出)的调用,并且该调用从第一代码段发出到第二代码段。如果在假定情况中不关心中间的参数精度,如图1F所示,则忽略或甚至用无意义的参数替代(在此情形中)也无妨。还可添加无关的附加参数。在任一情况中,可实现求平方功能,只要在通过第二代码段对input求平方之后返回output。对于计算系统的一些下游或其它部分而言,precision可能是非常有意义的参数;然而,一旦认识到对于计算平方这种有限目的而言不需要精度,则可替代或忽略它。例如,在对结果不产生不利影响的情况下,可传递诸如出生日期的无意义的值而非传递有效精度值。类似地,如图1G中所示,用重新定义成忽略或向接口添加参数的接口I1’来替代接口I1。接口I2可类似地重新定义成接口I2’,该接口I2’被重新定义成忽略非必要参数、或可在别处处理的参数。这里的重点是在一些情况中,编程接口可包括对于一些目的而言不需要的、诸如参数的各个方面,所以它们可被忽略或重新定义,或者出于其它目的在别处进行处理。
C.内联编码(INLINE CODING)
合并两个独立代码模块的若干或所有功能是也是可行的,从而使它们之间的“接口”改变形式。例如,图1B和1C的功能可分别转换成图1H和1I的功能。在图1H中,先前图1B的第一和第二代码段合并成包含它们两者的模块。在此情况下,代码段仍然可彼此通信,但是接口可改装成更适于单模块的形式。因而,例如,可能不再需要形式调用和返回语句,但是对接口Interface1的类似处理或响应跟踪可能仍是有效的。类似地,如图1I所示,图1C的接口I2的部分(或全部)可内联写入接口I1来形成接口I1’。如所示,接口I2被分割成I2a和I2b,而接口部分I2a已与接口I1内联编码以形成接口I1’。对于具体示例,假定图1C的接口I1执行由接口I2接收的函数调用square(input,output),该接口I2在通过第二代码段处理了input所传递的值之后(计算input的平方),用output传递返回所求的平方结果。在这样的情况中,在不对接口进行调用的情况下,由第二代码段执行的处理(对input进行求平方)可由第一代码段来执行。
D.分离(DIVORCE)
从一个代码段到另一个的通信可通过将通信分割成多个离散通信来间接实现。这示意性地示出于图1J和1K中。如图1J所示,提供一个或多个代码块(分离接口,因为它们从原始接口分离功能和/或接口功能)来转换第一接口Interface1上的通信使其符合不同的接口-在此情况中为接口Interface2A、Interface2B和Interface2C。可能是这样的:例如,存在设计成根据Interface1协议与所述操作系统通信的已安装的基本应用程序,但是随后操作系统被改变成使用不同接口-在此情况中为接口Interface2A、Interface2B和Interface2C。重点在于由第二代码段所用的原始接口变成不再与由第一代码段所用的接口兼容,中间介质被用来使新旧接口相互兼容。类似地,如图1K所示,可引入第三代码段,该第三代码段具有用于接收来自接口I1的分离接口DI1,以及用于向例如重新设计成与DI2合作但提供相同功能结果的接口I2a和I2b传递接口功能的分离接口DI2。类似地,DI1和DI2一起合作以便将图1C的接口I1和I2的功能转移到新的操作系统,同时提供相同或类似的功能结果。
E.重写(REWRITING)
另一种可能的形式是动态重写代码以便用实现相同全部结果的其它方案来替换接口功能。例如,可能存在一种系统,其中向执行环境(诸如由.Net架构、Java运行时环境或其它类似运行时类型的环境提供)中的即时(Just-in-Time)(JIT)编译器或解释器提供以中间语言(例如微软IL、Java ByteCode等)呈现的代码段。JIT编译器可编写成动态转换从第一代码段到第二代码段的通信,即在第二代码段(初始或者不同的第二代码段)可能需要的时候,使得它们符合不同接口。这示出于图1L和1M中。如从图1L中可看到的,这种方法类似于上述分离情况。可能是这样的:例如,其中已安装的基本应用程序被设计成根据Interface1协议与操作系统进行通信,但随后操作系统被改变成使用不同接口。JIT编译器可被用来使从已安装的基本应用程序发出的通信符合操作系统的接口。如图1M中所示,也可使用这种动态重写接口的方法来动态分解,或另外改变接口。
还应当注意:上述经由其它实施例实现与接口相同或类似的结果的情况还可以各种方式组合-串行或并行地、或者与其它插入代码组合。因而,上述其它实施例并非互相排斥,而是可被混合、配合及组合成产生与图1B和1C中呈现的一般情况相同或等效的情况。还应当注意:至于大多数程序设计构造,存在实现接口的相同或类似功能的、这里尚未描述但是通过本发明的精神和范围呈现的其它类似方法,即应当注意,通过以接口的值为基础的接口可呈现至少部分功能,并能够呈现有益结果。
图2示出了根据本发明的各个方面可使用的示例性平板(tablet)PC 201。图1系统中的任何或所有特征、子系统和功能都可包括在图2计算机中。平板PC 201包括其上显示多个窗口203的大显示面202,例如数字化平板显示器,较佳地为液晶显示(LCD)屏。用户可使用输入笔204在数字化显示面202上进行选定、加亮和/或书写。适当的数字化显示面202的示例包括电磁笔数字转换器,诸如Mutoh或Wacom公司的笔数字转换器。还可使用例如光学数字转换器的其它类型的笔数字转换器。平板PC 201解释使用输入笔做出的动作,以便处理数据、输入文本、创建图画、和/或执行诸如电子数据表、文字处理程序等的常规计算机应用程序任务。
输入笔204可配备一个或多个按钮,或者用于增加其选择能力的其它特征。在一个实施例中,输入笔204可实现为“铅笔”或“钢笔”,其中一端构成书写部分而另一端构成“擦除器”端,并且当在显示器上移动时,该“擦除器”端指示显示器要擦除的部分。可使用诸如鼠标、跟踪球等其它类型的输入设备。另外,在触敏式或接近式显示器上,用户自身的手指可作为输入笔204,并可用来选择或指示被显示图像的部分。因此,如本文所用的术语“用户输入设备”旨在对众所周知的诸如输入笔204的输入设备进行宽泛定义并包括许多变体。区域205示出了使得用户能够在接触显示面202时确定输入笔204所在位置的反馈区或接触区。
在各个实施例中,系统提供了墨水平台作为一组COM(组件对象模型)服务,从而应用程序可将它们用于捕获、处理并存储墨水。一个服务使得应用程序能够用已公开的墨水表示来读取或写入墨水。墨水平台还可包括包含如可扩展标记语言(XML)的标记语言。此外,系统可使用DCOM作为另一个实现。还可使用包括微软公司的Win32编程模型和.Net编程模型的其它实现。
自动提示和手写输入
自动完成进程(也称为自动提示进程),最近使用(MRU)列表和最经常使用(MFU)列表是通用特征,并且被用于许多应用程序以及各种操作系统外壳的若干领域。这些列表的用途之一是有助于用户输入难以记住的诸如电子邮件(email)地址、URL和文件名的不规则文本。对于使用手写输入电子邮件地址、URL和文件名的用户而言,此用途甚至更大,因为对于诸如这些的字典之外的单词,手写识别通常最差,从而使得输入这些数据类型的过程甚至更为麻烦。
本发明的各个方面涉及将各种应用程序的自动提示(也称为自动完成)与手写输入结合成整体。由于这种整合,用户可发现使用手写输入和与之互动的应用程序有助于方便使用、提高进出通行速度以及用户满意度。
图3示出了本发明的各个方面的一个示例性实例。这里,应用程序301包括用户接口302。用户输入信息(用户输入303)。应用程序可包括转发(305)用于显示在所述用户接口302中的信息的输入处理程序304。注意:用户输入信息可通过应用程序301或手写接收面板307来处理。到应用程序301的用户输入303以虚线直接示出,因为用户可能不需要总是向应用程序301独立输入信息。在一些情形中,例如,使用板型写字板或笔的、有限键或无键的计算设备,应用程序301可接收基于输入笔的信息,或者用户可仅使用手写接收面板307输入信息,由此绕过向应用程序301直接输入信息。
用户或应用程序301可调用手写接收面板307。手写接收面板307可包括用于至少接收由输入笔与数字转换器交互动作形成的、电子墨水形式的手写输入的接口和进程。应当理解,手写接收面板307还可接收其它类型的信息,包括经由以上软键盘和/或经由用户使用鼠标拖曳墨水的键盘输入(实际或显示的)和鼠标输入。应当理解,手写接收面板307可用于有源数字转换器和无源数字转换器。手写接收面板307可包括各种类型的输入显示,包括但不限于:行输入(显示其上拖曳墨水的准线)、框输入(每字符或符号输入一个单独的限定区)、键盘输入(软键盘)或通用空白输入区的至少之一。具有这些选项的至少一些的手写接收面板307的一个示例是华盛顿州(WA)雷蒙德的微软公司的TIP(写字板输入面板)。
接着,用户将信息303(例如手写墨水)输入手写接收面板307。手写接收面板307尝试识别输入信息303并将识别结果转发(308)到自动完成提供器(autocomplete provider)309。响应于从手写接收面板307转发到自动完成提供者309的已识别信息,自动完成提供器309向用户提供自动完成提示。然后,用户通过输入310选择提示之一,并且该选择被转发(311)到用于在用户接口302中显示的应用程序301。在已做出选择之后,自动完成提供器309关闭提示列表的用户接口。
本发明的各个方面描述了独立于手写接收面板307的自动完成提供器309。在本发明的其它方面中,自动完成提供器309可被集成到手写接收面板307。在又一个方面中,手写接收面板307可被集成到自动完成提供器309。在这两个后面的方面中,向用户提供了通过控制另一用户接口来打开手写接收面板307和自动完成提供器309之一。
以下是用户如何使用自动提示列表来向用户接口转发信息的一个示例。首先,用户可在手写接收面板307中输入“www”。然后,自动完成提供器309可提供提示自动完成列表,例如包括:
http://www.
https://www.
ftp://www.
用户可继续添加信息到手写接收面板307(其中自动完成列表将随时间更新),或者可从自动完成列表中选择表项。一旦用户已选择了自动完成列表表项之一,则选择(或已做出选择的指示)被发送到应用程序301并显示在用户接口302中。这里,一旦用户已从自动完成列表中选择了一表项,则可清除手写接收面板307中的内容。用户可继续添加更多信息到手写接收面板307,并且使得新近识别的信息被传递到自动完成列表,而用户对提示结果的选择被发送到应用程序301。
作为替代方案,手写接收面板307和自动完成提供器者309可交换信息308、312,直至用户对结果感到满意。接着,手写接收面板307将手写接收面板307与自动完成提供器309之间的交换结果转发(313)到用于在用户接口302显示的应用程序301。作为一个示例,以上使用了输入“www”。与以上相类似,用户输入由手写接收面板307识别为“www”的手写信息303。自动完成提供器309提供提示完成列表(例如,http://www.等)。一旦通过用户输入310对提示完成进行了选择,则提示完成经由路径312返回到手写接收面板307,其中在手写接收面板307中的识别结果被替换成选定的完成。然后,用户可向驻留在手写输入面板307的提示完成添加附加信息。最后,在字符串完成之后,则所用信息可经由路径313转发(手动地或通过使用字符串定时自动转发自动地)到用于在用户接口302显示的应用程序301。
最后,作为又一替代方案,应用程序314可将用户接口302中的信息转发到自动完成提供器309以用作提示列表的初始信息。此初始信息有时候可称为引导信息。然后,来自手写接收面板307的识别结果308可与来自用户接口302的内容相结合作为信息,自动完成提供器309通过提供提示内容对该信息做出响应。然后,从自动完成提供者309选择的提示可通过上述路径(311或312/313)转发到应用程序301。
手写接收面板307可拥有自动完成进程并下拉自动提示列表。或者,手写接收面板307可对从自动完成提供器309处提供的自动提示列表的定位产生影响。这可通过自动完成提供器309的应用程序编程接口来完成。
图4示出了具有输入区402的应用程序401。用户可通过手写接收面板403输入手写墨水,并且在手写接收面板403的附近显示自动提示列表404。自动提示列表可通过自动完成提供器309来生成。
自动提示列表中所提供的信息可通过应用程序改变。例如,对于因特网浏览器,自动提示列表可包括与万维网(World Wide Web)地址有关的信息或顶层域(domain)标识符。对于电子邮件应用程序,自动完成列表可包括关于可能包含来自个人电子邮件地址簿的电子邮件地址的信息。
应用程序可相对于TIP而非应用程序的文本区来改变其自动提示列表的位置。以下提供关于应用程序的自动提示列表可如何被定位的指南。
·为了不现在用户的手掌之下,当可合适出现在手写接收面板的顶部边缘时,它们不用离开屏幕顶部边缘。自动提示列表的底部边缘可触及手写接收面板的书写表面的顶部边缘。如果它们不适合处于手写接收面板上方时,则它们可将自身定位成在手写接收面板的底部边缘的下方。在此情况中,自动提示列表的顶部边缘可触及手写接收面板书写表面的底部边缘。
·当手写接收面板已扩展成包括多于一行墨迹时,自动提示列表可相对于用户施加墨水的当前行定位自身。在此情况中,自动提示列表可将该行的顶部和顶部当作书写接收面板的顶部和底部。或者,自动提示列表可总是相对于施加墨水的顶部和顶部出现。
·自动提示列表可左对齐出现在手写接收面板的第一结尾空白区的上方。在手写接收面板的行方式中,自动提示列表可显示成该自动提示列表的左边缘与最后一行上的最后一个墨迹对象的右边缘对齐。在自动提示列表的框输入模式中,自动提示列表可显示成该自动提示列表的左边缘与第一结尾空白框的左边缘对齐。在任一种外壳中,如果在不离开屏幕右边缘的情况下,无法使列表左对齐,则列表可变成靠着屏幕的右边缘右对齐。
·在自动提示列表显示的任何时候,只要用户用笔点击自动提示列表的外部,则自动提示列表将隐藏。
·任何时候对手写接收面板的最后字码做出修改,则自动提示列表可更新并重新显示。
当用户使用硬或软键盘时,应用程序的自动提示列表可相对于文本输入区而非手写接收面板来定位。在这些情况中,自动提示列表以与桌面电脑相同的方式显示和运行。或者,当使用软键盘时,自动提示列表可相对于软键盘来定位。靠近软键盘定位自动提示列表的益处之一是彼此间的导航仅需有限的运动,由此使得对于用户而言,两者之间的交互动作更容易。
在执行识别且更新识别结果之后,立即出现自动提示列表。在手写接收面板的框输入模式中,在识别到每个字符之后更新自动提示列表。在手写接收面板的行输入模式中,在识别到一段之后更新自动提示列表。
图5示出了根据本发明的各个方面的组件之间的各个关系。手写接收面板501包括与状态管理器504交换信息的手写窗口控制503。状态管理器504被连接到状态库505,该状态库被连接到可编程管理器。发送状态信息并接收结果。可编程管理器506向自动完成提供器进程502发送状态信息。
自动完成提供器进程502包括具有状态管理器508和自动完成客户机(autocomplete client)509的手写接收面板对象507。自动完成客户机509与自动完成提供器510交换信息。
这里,手写接收面板501调用自动完成提供者510并转发来自手写接收面板501的结果。自动完成提供器进程502中的自动完成提供器510生成具有用于向用户显示的内容的自动完成列表。
以下描述了一种可能的应用程序设计接口定义,该定义使得应用程序或手写接收面板能够访问自动提示列表和输入信息。
自动完成客户机可具有向自动完成提供器510开放的自动完成客户机接口。
自动完成客户机接口可包括一种通知提供器的方法,该方法注册要注册到自动完成客户程序的自动完成提供器。方法可包括指向要注册到自动完成客户机的自动完成提供器接口的指针。
自动完成客户机可类似地具有不通知提供器的方法,该方法从自动完成客户机注销自动完成提供器接口。
也可存在可以两种方法之一执行的用户选择接口。首先,如果使用这种方法转发信息,则可向手写接收面板转发回用户的选择以便添加附加的信息。第二,如果未使用这种方法转发信息,则它可用来通知用户已选定的选择。
API也可包括对自动提示列表进行显示的优选矩形的规范。方法可包括指向屏幕坐标中指示提供器的优选位置和自动完成列表用户接口的尺寸的矩形的指针、指向屏幕坐标中指示聚焦区的位置和尺寸的矩形的指针、指向基于手写接收面板的当前状态以及由自动完成列表指定的优选自动完成列表位置和尺寸通过自动完成列表客户机更改的矩形的指针。
API可包括对显示用户接口的请求。这是自动完成提供器在打算显示自动完成UI时做出的调用。自动完成客户机可更改提供器的优选矩形。
这是自动完成提供器在打算显示自动完成UI时做出的调用。
接着,自动完成提供器可包括以下接口:
更新待定文本(pending text)的方法,该方法更新用于生成自动完成列表的待定文本。此文本将不包含已插入到聚焦区中的文本,并且自动完成提供器负责考虑用于生成自动完成列表的当前区文本和选择。此方法还可指定自动完成列表应当显示的字符。此方法可触发提供器来显示自动完成列表UI。
一种可用来显示或隐藏自动完成列表的显示方法。
以下扩展可用于或不用于本发明的各个方面。
应用程序可将自动提示列表作为文本转发给手写接收面板,并使手写接收面板拥有或相对于其下拉出填充有由应用程序提供的自动提示值的自动提示列表。手写接收面板下拉列表可浮置于应用程序列表重定位的路线之上,或者完全集成到手写接收面板UI。或者,自动提示列表可不进行重定位,而是保留在其当前位置上。此外,自动提示列表可由应用程序、操作系统或用户放置在任何地方。
可向应用程序传递顶部识别结果的两个或多个,从而使应用程序基于不同识别可能性生成自动提示列表。
可整合多种文本形式预测的自动提示,从而用户可在单个列表中获得自动完成的URL或电子邮件地址以及预测可能输入的字典单词(不管他们之前是否键入此单词)。将来,本发明将从当前自动完成实现扩展为通用文本。
可将URL分解成多个部分,或者构建可用来导航到用户先前访问过的地址的上级或同级的字段。使用这种方法,即使用户从未访问过www.cnn.com,只要用户访问过www.cnn.com/currentnews,就能够实现其上级www.cnn.com的自动完成。这可通过在IAutoCompleteResults接口中包括AdjustAutoCompleteList方法来完成。这种方法使得手写接收面板能够在应用程序显示列表表项之前更改该应用程序将显示的列表表项。图6中示出了附加信息,并按照如下进行:
通过自动完成列表提供器对笔输入面板对象的调用获得AdjustAutoCompleteList()。当此方法被调用时,笔输入面板对象可包含其自身保存的最终及框示意文本。在此方法中,当为默认值时,笔输入面板将在给定自动完成字符串中搜索首次出现的最终示意字符串的最终示意文本,并且从自动完成字符串中删除最终示意字符串,如下:
·最终示意文本=“AAA”
·自动完成字符串=“000AAABBBCCC”
·对最终示意文本进行剪裁之后的结果字符串=“BBBCCC”
·最终示意文本之前的任何自动完成字符串部分(在以上示例中为“000”)也被剪裁掉。
·当当前输入范围被设定为IS_URL时,以特定方式进行剪裁。如图6中所示,给出了URL部分的定义。
此外,自动完成列表可如下用于因特网地址。
协议字符串是其后跟随“//”的字符串部分。
主机名是在协议字符串之后并且其后跟随一句点的字符串部分。
顶层域名是句点符之后、字符串内任何斜线字符之前的最后一部分字符串。
当主机名和顶层域名存在时,二层域名存在时,二层域名是与顶层域名左边的句点分隔开的字符串部分。如果主机名与顶层域名之间存在由句点符分隔开的多个部分段,则它们是作为域名的第二层或更高层。框外壳并不区分域名的第二层或更高层,并且它们可当作整体处置。
如果存在顶层域,则:
·文件名是在协议分隔符之后的最后斜线字符之后的字符串部分。
·文件名与协议分隔符之后的第一斜线字符之间的字符串部分是目录。
如果不存在顶层域,则:
·文件名是最后斜线字符之后的字符串部分。
·目录是文件名与协议分隔符之间的字符串部分。
框输入模式可将字符串分割成以下单元:
·协议字符串及协议分隔符。
·主机名及其后的分隔符。
·域名及其后的分隔符。
·目录及文件名。
在检查并更改了所有全自动完成字符串之后,框外壳可从列表中移除任意重复项。
接着,系统可启动显示字符串的索引。启动全自动完成字符串内要从调节自动完成列表返回的字符索引通过以与默认自动完成列表完全相同的方式来确定。它可能处于全字符内首次出现的最终示意文本的末端。
对于显示字符串的端索引,以下步骤定义自动完成字符串中要返回的字符的端位置。
a.如果示意文本在全字符串中协议分隔符之前结束(不包括协议分隔符的两个斜线字符),则端位置是包括协议分隔符的协议字符串。
b.如果(a)不成立,并且示意文本在全字符串中跟随着主机名的分隔符之前结束,则端位置是包括随后分隔符的主机名的末端。
c.如果(b)不成立,并且示意文本在全字符串中跟随着顶层域名的分隔符之前结束,则端位置是包括随后分隔符的顶层域名的末端。
d.如果(c)不成立,并且示意文本在全字符串中的目录或文件名范围内(包括域名与目录名之间的分隔符)结束,则端位置是全字符串的末端。
在另一种方法中,自动完成提供器可管理自动提示列表的所有再现。例如,自动完成提供器可接收手写接收面板的位置(相对于其它显示内容的相对位置或绝对位置)指示,并基于手写接收面板的位置定位自动提示列表。在另一个示例中,自动完成提供器可不接收手写输入面板的位置的任何指示,并且可将自动提示列表定位在预定位置(靠近屏幕的一侧或位于中心等),或者可将自动提示列表定位成靠近其它显示内容(例如,与选自自动列表的内容所要发送的应用程序的用户接口分隔开、重叠或位于其顶部),或者高出该内容。
已根据优选和示例性实施例描述了本发明。对于本领域普通技术人员而言,通过查阅本公开,可获得落在所附权利要求的范围和精神内的许多其它实施例、变体和变化。

Claims (13)

1.一种用于接收用户输入的计算机实现方法,包括以下步骤:
通过用户在手写接收面板以由输入笔与数字转换器交互形成的电子墨水形式输入信息来接收手写输入,所述手写接收面板识别输入的信息并将识别结果作为经识别的文本转发给自动完成提供器;以及
将所述用户手写输入与自动提示列表相整合,其中所述自动提示列表是由自动完成提供器提供的,并且所述自动提示列表包括基于所述经识别的文本的提示完成列表。
2.如权利要求1所述的计算机实现方法,其特征在于,所述自动提示列表是浏览器的一部分。
3.如权利要求1所述的计算机实现方法,其特征在于,所述自动提示列表是操作系统的一部分。
4.如权利要求1所述的计算机实现方法,其特征在于,所述自动提示列表是应用程序的一部分。
5.如权利要求1所述的计算机实现方法,其特征在于,还包括自动完成提供器进程和平板输入面板进程。
6.一种显示自动完成列表的计算系统,包括:
接收文本的第一用户接口;
通过用户在手写接收面板以由输入笔与数字转换器交互形成的电子墨水形式输入信息来接收手写墨迹的第二用户接口,所述手写接收面板识别输入的信息并将识别结果作为经识别的文本转发给自动完成提供器;
具有提供一包括基于所述经识别的文本的提示完成列表的自动提示列表的自动完成提供器的第三用户接口,所述第三用户接口接收用户对所述列表的选择,并且所述用户选择被转发到所述第一用户接口。
7.如权利要求6所述的计算系统,其特征在于,所述将用户选择转发到第一用户接口是通过自动完成列表提供器将所述用户选择发送到主存所述第一用户接口的应用程序而发生。
8.如权利要求6所述的计算系统,其特征在于,所述将用户选择转发到第一用户接口是通过自动完成列表提供器将所述用户选择发送到手写接收面板而发生,所述手写接收面板允许用户在将所述用户选择转发到主存第一用户接口的应用程序之前更改所述用户选择。
9.一种用于接收用户输入的计算机系统,包括:
用于通过用户在手写接收面板以由输入笔与数字转换器交互形成的电子墨水形式输入信息来接收手写输入的装置,所述手写接收面板识别输入的信息并将识别结果作为经识别的文本转发给自动完成提供器;以及
用于将所述用户手写输入与自动提示列表相整合的装置,其中所述自动提示列表是由自动完成提供器提供的,并且所述自动提示列表包括基于所述经识别的文本的提示完成列表。
10.如权利要求9所述的计算机系统,其特征在于,所述自动提示列表是浏览器的一部分。
11.如权利要求9所述的计算机系统,其特征在于,所述自动提示列表是操作系统的一部分。
12.如权利要求9所述的计算机系统,其特征在于,所述自动提示列表是应用程序的一部分。
13.如权利要求9所述的计算机系统,其特征在于,还包括自动完成提供器进程和平板输入面板进程。
CN200680013369XA 2005-04-22 2006-04-20 自动提示列表和手写输入 Active CN101164054B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US67377005P 2005-04-22 2005-04-22
US60/673,770 2005-04-22
US11/249,739 2005-10-14
US11/249,739 US7996589B2 (en) 2005-04-22 2005-10-14 Auto-suggest lists and handwritten input
PCT/US2006/015187 WO2006116145A2 (en) 2005-04-22 2006-04-20 Auto-suggest lists and handwritten input

Publications (2)

Publication Number Publication Date
CN101164054A CN101164054A (zh) 2008-04-16
CN101164054B true CN101164054B (zh) 2010-06-23

Family

ID=37215313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200680013369XA Active CN101164054B (zh) 2005-04-22 2006-04-20 自动提示列表和手写输入

Country Status (9)

Country Link
US (1) US7996589B2 (zh)
EP (1) EP1872236A4 (zh)
JP (1) JP5243240B2 (zh)
KR (1) KR20070122222A (zh)
CN (1) CN101164054B (zh)
BR (1) BRPI0610291A2 (zh)
MX (1) MX2007013115A (zh)
RU (1) RU2412470C2 (zh)
WO (1) WO2006116145A2 (zh)

Families Citing this family (214)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US8234293B2 (en) * 2005-09-08 2012-07-31 Microsoft Corporation Autocompleting with queries to a database
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US10452763B2 (en) * 2007-03-08 2019-10-22 Oath Inc. Autocomplete for integrating diverse methods of electronic communication
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8902152B2 (en) 2007-04-30 2014-12-02 Motorola Mobility Llc Dual sided electrophoretic display
US8504349B2 (en) * 2007-06-18 2013-08-06 Microsoft Corporation Text prediction with partial selection in a variety of domains
US9122092B2 (en) 2007-06-22 2015-09-01 Google Technology Holdings LLC Colored morphing apparatus for an electronic device
KR100930802B1 (ko) * 2007-06-29 2009-12-09 엔에이치엔(주) 이미지를 이용한 브라우저 제어 방법 및 시스템
US20090042619A1 (en) * 2007-08-10 2009-02-12 Pierce Paul M Electronic Device with Morphing User Interface
US8077154B2 (en) 2007-08-13 2011-12-13 Motorola Mobility, Inc. Electrically non-interfering printing for electronic devices having capacitive touch sensors
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US20090204881A1 (en) * 2008-02-08 2009-08-13 M/S. Scmooth (India) Private Limited Method and system for knowledge-based filling and verification of complex forms
US8059232B2 (en) 2008-02-08 2011-11-15 Motorola Mobility, Inc. Electronic device and LC shutter for polarization-sensitive switching between transparent and diffusive states
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8677018B2 (en) 2008-08-25 2014-03-18 Google Inc. Parallel, side-effect based DNS pre-caching
KR101044679B1 (ko) * 2008-10-02 2011-06-29 (주)아이티버스 문자입력방법
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US7949647B2 (en) * 2008-11-26 2011-05-24 Yahoo! Inc. Navigation assistance for search engines
US20100185644A1 (en) * 2009-01-21 2010-07-22 Microsoft Corporatoin Automatic search suggestions from client-side, browser, history cache
WO2010105440A1 (en) * 2009-03-20 2010-09-23 Google Inc. Interaction with ime computing device
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US8352561B1 (en) 2009-07-24 2013-01-08 Google Inc. Electronic communication reminder technology
JP5402398B2 (ja) * 2009-08-25 2014-01-29 ソニー株式会社 情報処理装置、情報処理方法およびコンピュータプログラム
US8131848B1 (en) 2009-09-29 2012-03-06 Jason Adam Denise Image analysis and communication device control technology
US8286085B1 (en) 2009-10-04 2012-10-09 Jason Adam Denise Attachment suggestion technology
US8332748B1 (en) * 2009-10-22 2012-12-11 Google Inc. Multi-directional auto-complete menu
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
WO2011089450A2 (en) 2010-01-25 2011-07-28 Andrew Peter Nelson Jerram Apparatuses, methods and systems for a digital conversation management platform
US8782556B2 (en) * 2010-02-12 2014-07-15 Microsoft Corporation User-centric soft keyboard predictive technologies
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
JP5587119B2 (ja) * 2010-09-30 2014-09-10 キヤノン株式会社 文字入力装置、その制御方法、及びプログラム
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
EP2527968B1 (en) * 2011-05-24 2017-07-05 LG Electronics Inc. Mobile terminal
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US8209183B1 (en) 2011-07-07 2012-06-26 Google Inc. Systems and methods for correction of text from different input types, sources, and contexts
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US9256588B1 (en) * 2011-09-28 2016-02-09 Amazon Technologies, Inc. Transferring content to a substantially similar location in a virtual notebook using a stylus enabled device
US8850310B2 (en) * 2011-10-11 2014-09-30 Microsoft Corporation Data entry suggestion lists for designated document data entry areas based on data from other document data entry areas
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US20130344468A1 (en) * 2012-06-26 2013-12-26 Robert Taaffe Lindsay Obtaining Structured Data From Freeform Textual Answers in a Research Poll
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US9898186B2 (en) 2012-07-13 2018-02-20 Samsung Electronics Co., Ltd. Portable terminal using touch pen and handwriting input method using the same
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
KR102174916B1 (ko) 2012-11-30 2020-11-05 삼성전자주식회사 종료 효과를 표시하는 모바일 장치 및 그 제어방법
ITRM20130022A1 (it) 2013-01-11 2014-07-12 Natural Intelligent Technologies S R L Procedimento e apparato di riconoscimento di scrittura a mano
WO2014115199A1 (ja) * 2013-01-22 2014-07-31 Necソリューションイノベータ株式会社 入力支援システム、入力支援方法および入力支援プログラム
KR20150104615A (ko) 2013-02-07 2015-09-15 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
EP3008641A1 (en) 2013-06-09 2016-04-20 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US9727535B2 (en) * 2013-06-11 2017-08-08 Microsoft Technology Licensing, Llc Authoring presentations with ink
EP3011415B1 (en) * 2013-06-19 2018-12-05 Nokia Technologies Oy Electronic-scribed input
CN105453026A (zh) 2013-08-06 2016-03-30 苹果公司 基于来自远程设备的活动自动激活智能响应
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
EP3489814A1 (en) * 2014-05-23 2019-05-29 Samsung Electronics Co., Ltd. Method and device for reproducing content
TWI566107B (zh) 2014-05-30 2017-01-11 蘋果公司 用於處理多部分語音命令之方法、非暫時性電腦可讀儲存媒體及電子裝置
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
KR20160005899A (ko) 2014-07-08 2016-01-18 엘지전자 주식회사 디지털 이미지 처리 장치, 시스템 및 제어 방법
WO2016006764A1 (en) * 2014-07-08 2016-01-14 Lg Electronics Inc. Digital image processing apparatus and system and control method thereof
KR102354582B1 (ko) * 2014-08-12 2022-01-24 삼성전자 주식회사 전자 장치의 동작 방법 및 장치
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US10223344B2 (en) * 2015-01-26 2019-03-05 Adobe Inc. Recognition and population of form fields in an electronic document
US10200893B2 (en) * 2015-02-24 2019-02-05 CENX, Inc. Systems and methods for providing visualization of a telecommunications network topology
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
RU2602789C2 (ru) * 2015-03-11 2016-11-20 Общество с Ограниченной Ответственностью "Научно-Производственная фирма "Беркут" (ООО "НПФ "Беркут") Система и способ автоматического заполнения электронных форм
US9710157B2 (en) * 2015-03-12 2017-07-18 Lenovo (Singapore) Pte. Ltd. Removing connective strokes
US9965569B2 (en) 2015-03-13 2018-05-08 Microsoft Technology Licensing, Llc Truncated autosuggest on a touchscreen computing device
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US20160335239A1 (en) * 2015-05-13 2016-11-17 Union Pacific Railroad Company Intelligent system and method of completing a form using a device
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10740547B2 (en) * 2015-10-27 2020-08-11 Allscripts Software, Llc Managing data relationships of customizable forms
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US20170285932A1 (en) * 2016-03-29 2017-10-05 Microsoft Technology Licensing, Llc Ink Input for Browser Navigation
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179588B1 (en) 2016-06-09 2019-02-22 Apple Inc. INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US11354503B2 (en) * 2017-07-27 2022-06-07 Samsung Electronics Co., Ltd. Method for automatically providing gesture-based auto-complete suggestions and electronic device thereof
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10489642B2 (en) * 2017-10-12 2019-11-26 Cisco Technology, Inc. Handwriting auto-complete function
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11972201B2 (en) 2018-10-05 2024-04-30 Adobe Inc. Facilitating auto-completion of electronic forms with hierarchical entity data models
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK201970510A1 (en) 2019-05-31 2021-02-11 Apple Inc Voice identification in digital assistant systems
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US11270104B2 (en) 2020-01-13 2022-03-08 Apple Inc. Spatial and temporal sequence-to-sequence modeling for handwriting recognition
US11043220B1 (en) 2020-05-11 2021-06-22 Apple Inc. Digital assistant hardware abstraction
KR20220088166A (ko) * 2020-12-18 2022-06-27 삼성전자주식회사 복수의 사용자 환경에서 필기 입력 인식 방법 및 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5666438A (en) * 1994-07-29 1997-09-09 Apple Computer, Inc. Method and apparatus for recognizing handwriting of different users of a pen-based computer system

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3167500B2 (ja) * 1993-05-19 2001-05-21 富士通株式会社 手書き情報入力処理方式
US5367453A (en) * 1993-08-02 1994-11-22 Apple Computer, Inc. Method and apparatus for correcting words
JPH07225663A (ja) * 1994-02-09 1995-08-22 Fujitsu Ltd 手書情報入力装置
JPH0816313A (ja) * 1994-07-04 1996-01-19 Sanyo Electric Co Ltd 手書き入力方法及び装置
US5768616A (en) * 1995-12-13 1998-06-16 Symbios, Inc. Apparatus for detecting electro-magnetic stylus signals by inducing current into a plurality of sensor coils using signals transmitted by the tranmitter coil of the stylus
JP3275704B2 (ja) * 1996-05-21 2002-04-22 株式会社日立製作所 入力文字列推測認識装置
US5881169A (en) 1996-09-13 1999-03-09 Ericsson Inc. Apparatus and method for presenting and gathering text entries in a pen-based input device
US6377965B1 (en) * 1997-11-07 2002-04-23 Microsoft Corporation Automatic word completion system for partially entered data
CA2331073A1 (en) 1998-04-30 1999-11-25 C Technologies Ab Input unit, method for using the same and input system
US7116310B1 (en) * 1999-04-06 2006-10-03 Microsoft Corporation Application programming interface that maps input device controls to software actions
US6766069B1 (en) * 1999-12-21 2004-07-20 Xerox Corporation Text selection from images of documents using auto-completion
JP2004515854A (ja) * 2000-12-04 2004-05-27 トレック・2000・インターナショナル・リミテッド コンピュータポインティング装置
US7216083B2 (en) 2001-03-07 2007-05-08 Diebold, Incorporated Automated transaction machine digital signature system and method
US7039234B2 (en) * 2001-07-19 2006-05-02 Microsoft Corporation Electronic ink as a software object
US6820075B2 (en) * 2001-08-13 2004-11-16 Xerox Corporation Document-centric system with auto-completion
US6986106B2 (en) * 2002-05-13 2006-01-10 Microsoft Corporation Correction widget
JP4312429B2 (ja) * 2002-07-09 2009-08-12 シャープ株式会社 手書き入力装置および方法、手書き入力プログラム、並びに、プログラム記録媒体
US7137076B2 (en) * 2002-07-30 2006-11-14 Microsoft Corporation Correcting recognition results associated with user input
JP4145603B2 (ja) * 2002-08-05 2008-09-03 富士通株式会社 文字列入力装置及び方法
US7185271B2 (en) * 2002-08-20 2007-02-27 Hewlett-Packard Development Company, L.P. Methods and systems for implementing auto-complete in a web page
US7506271B2 (en) * 2003-12-15 2009-03-17 Microsoft Corporation Multi-modal handwriting recognition correction
US7970812B2 (en) * 2005-03-17 2011-06-28 Microsoft Corporation Redistribution of space between text segments
US7561145B2 (en) * 2005-03-18 2009-07-14 Microsoft Corporation Systems, methods, and computer-readable media for invoking an electronic ink or handwriting interface

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5666438A (en) * 1994-07-29 1997-09-09 Apple Computer, Inc. Method and apparatus for recognizing handwriting of different users of a pen-based computer system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
说明书第467-469段,附图43.

Also Published As

Publication number Publication date
BRPI0610291A2 (pt) 2010-06-08
RU2007138952A (ru) 2009-04-27
EP1872236A4 (en) 2009-09-09
JP5243240B2 (ja) 2013-07-24
KR20070122222A (ko) 2007-12-28
WO2006116145A2 (en) 2006-11-02
CN101164054A (zh) 2008-04-16
WO2006116145A3 (en) 2007-06-28
RU2412470C2 (ru) 2011-02-20
JP2008537270A (ja) 2008-09-11
EP1872236A2 (en) 2008-01-02
US20060282575A1 (en) 2006-12-14
MX2007013115A (es) 2008-01-14
US7996589B2 (en) 2011-08-09

Similar Documents

Publication Publication Date Title
CN101164054B (zh) 自动提示列表和手写输入
CN105264517B (zh) 用于文本表示转换的墨水
RU2650029C2 (ru) Способ и устройство для управления приложением посредством распознавания нарисованного от руки изображения
KR101014075B1 (ko) 박스 및 라인 입력 패널
CN100444088C (zh) 用于专门数据输入的实用对象
US7966352B2 (en) Context harvesting from selected content
US20050183029A1 (en) Glom widget
US20100049879A1 (en) Method for Developing and Implementing Efficient Workflow Oriented User Interfaces and Controls
CN100530085C (zh) 实现虚拟语音一键通功能的方法和装置
CN105830150A (zh) 基于意图的用户体验
CN108700994A (zh) 用于数字墨水交互性的系统和方法
US11526659B2 (en) Converting text to digital ink
US10339372B2 (en) Analog strokes to digital ink strokes
CN100481062C (zh) 墨水收集和再现
EP4309071A1 (en) Duplicating and aggregating digital ink instances
EP4309148A1 (en) Submitting questions using digital ink
Kumar Human computer interaction
US11372486B1 (en) Setting digital pen input mode using tilt angle
EP4309069A1 (en) Linking digital ink instances using connecting lines
CN110537164A (zh) 用于内容创建应用的增强的上墨能力
KR20220102238A (ko) 광고를 위한 인공지능 인터페이스 시스템 및 플랫폼 개발 방법
Paternò et al. Natural modelling of interactive applications
KR20220128717A (ko) 광고를 위한 인공지능 인터페이스 시스템 및 플랫폼 개발 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150427

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150427

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.