CN110692060B - 电子文本笔系统和方法 - Google Patents

电子文本笔系统和方法 Download PDF

Info

Publication number
CN110692060B
CN110692060B CN201880035858.8A CN201880035858A CN110692060B CN 110692060 B CN110692060 B CN 110692060B CN 201880035858 A CN201880035858 A CN 201880035858A CN 110692060 B CN110692060 B CN 110692060B
Authority
CN
China
Prior art keywords
character
text
pen
guide line
input
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
CN201880035858.8A
Other languages
English (en)
Other versions
CN110692060A (zh
Inventor
托马斯·巴克雷
马里亚·西里梅勒
罗伯特·米克尔
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN110692060A publication Critical patent/CN110692060A/zh
Application granted granted Critical
Publication of CN110692060B publication Critical patent/CN110692060B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • 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
    • 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
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • 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/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

公开了一种用于电子设备的支持笔的编辑器应用,其为手写文本(110)提供自适应引导线(120)。实时地通过手写文本(110)生成自适应引导线(120),以允许用户利用空白页的自由形式输入可能性,同时仍能受益于在划线页面上书写所带来的整洁和组织。当书写文本时,自适应引导线(120)被生成并且具有随手写输入文本(110)的测量的方面而变化的位置和长度。手写输入文本(110)可以由与电子设备的显示设备交互的笔设备提供。

Description

电子文本笔系统和方法
相关申请的交叉引用
本申请要求于2017年11月20日提交的、名为“ELECTRONIC TEXT PEN SYSTEMS ANDMETHODS(电子文本笔系统和方法)”的美国专利申请序列号15/818,637的权利和优先权,为所有目的,其公开内容通过引用合并于此。
背景技术
支持笔的设备正变得越来越普遍,并且显示数字化器正在成为膝上型计算机和其他计算设备的标准化组件。笔输入允许手写文本,其与使用传统的键盘和鼠标相比,通常更有助于创意尝试和头脑风暴。但是,仍然存在各种机会来通过利用现代计算设备的速度和能力,创建超越纸笔的电子手写输入环境。
发明内容
本技术的各方面提供了用于提供文本笔模式的系统和方法,该文本笔模式提供了不引人注目的书写指导以提高可读性和组织性。在文本笔模式下,可以显示与所检测的书写基线相对应的引导线(guideline),其在提供附加书写时可以随着时间调整。默认情况下,引导线可以是水平平直的,但是文本笔模式也可以支持倾斜、弯曲或不规则的引导线。文本笔模式的目标是鼓励绘画、图形和文本可以被放置在文档中的任何位置的创造力和自由形式的混合布局。为此,引导线可以根据各种考虑(包括启发式、机器学习算法、用户书写风格、周围上下文等)延伸出一定距离,而不是一直延伸到页边。
本技术的方面提供一种计算机实现的方法,包括从电子设备的输入组件接收笔输入。该方法还包括确定笔输入的输入模式为文本输入模式。该方法还包括识别笔输入中的至少一个字符的特征。该方法还包括提供笔输入的表示和引导线以供在电子设备的显示设备上显示。引导线沿着笔输入的表示的至少一部分并与之相邻延伸,并且超出笔输入的表示的结尾基于至少一个字符的所识别的特征的长度。
本技术的方面提供一种系统。该系统包括输入组件、显示设备、包括指令的存储器,以及处理器。处理器被配置为执行从输入组件接收笔输入的指令。处理器被进一步配置为执行识别笔输入中的至少一个字符的大小和书写速率的指令。处理器被进一步配置为执行提供笔输入的表示和引导线以供在显示设备上显示的指令。引导线沿着笔输入的表示的至少一部分并与之相邻来延伸,并且超出笔输入的表示的结尾基于至少一个字符的所识别的大小和书写速率的长度。
本技术的方面提供一种非瞬时性机器可读存储介质,当其由一个或多个处理器执行时,使处理器执行包括从电子设备的输入组件接收笔输入的操作。操作还包括识别笔输入中的手写文本的特征。操作还包括提供手写文本的表示和第一引导线以供在电子设备的显示设备上显示。第一引导线沿着手写文本的表示的至少一部分并与之相邻来延伸。操作还包括提供与第一引导线分开基于手写文本的所识别的特征的距离的第二引导线。第二引导线具有基于手写文本的所识别的特征的长度。
在下文中,参考附图,详细地描述本技术的其他方面、特征和优点以及本技术的各个方面的结构和操作。
附图说明
参考附图描述了本技术的各方面。在附图中,相同的附图标记可以指示相同或功能上相似的元件。
图1描绘了根据本技术的方面的、用于提供文本笔输入的系统的图。
图2描绘了根据本技术的方面的、与包括字符的笔输入相关联的引导线。
图3描绘了根据本技术的方面的、与包括字符的笔输入相关联的延伸的引导线。
图4描绘了根据本技术的方面的、与包括字符的笔输入相关联的多个引导线。
图5描绘了根据本技术的方面的、与包括字符的笔输入相关联的引导线相对应的文本框。
图6描绘了根据本技术的方面的、与包括字符的笔输入相关联的延伸的引导线相对应的水平延伸的文本框。
图7描绘了根据本技术的方面的、与包括字符的笔输入相关联的多个引导线相对应的垂直延伸的文本框。
图8描绘了根据本技术的方面的、与包括倾斜字符串的笔输入相关联的引导线。
图9描绘了根据本技术的方面的、与包括非线性字符串的笔输入相关联的弯曲引导线。
图10描绘了根据本技术的方面的、与包括字符的笔输入相关联的多个弯曲引导线。
图11描绘了根据本技术的方面的、与包括字符并且具有取决于背景对象的长度的笔输入相关联的引导线。
图12描绘了根据本技术的方面的、与笔输入相关联的多个引导线,该笔输入包括与背景对象重叠的字符,并且每个引导线具有取决于背景对象的边缘的长度。
图13描绘了根据本技术的方面的、具有不与背景对象重叠的重新显示的字符的图12的多个引导线。
图14描绘了根据本技术的方面的、与包括字符并且具有取决于背景对象的最大长度的笔输入相关联的引导线。
图15描绘了根据本技术的方面的、具有根据引导线的最大长度修改的重新显示的字符的图14的引导线。
图16描绘了根据本技术的方面的、与包括字符的笔输入相关联的多个引导线,多个引导线中的每一个都具有取决于用户提供的边界的长度。
图17描绘了根据本技术的方面的、与列表相对应的笔输入相关联的多个引导线。
图18示出了根据本技术的方面的流程图,该流程图示出了用于为利用笔输入设备的输入文本提供引导线的方法。
图19概念性地示出了示例电子系统,利用该示例电子系统可以实现本技术的一些实施方式。
具体实施方式
尽管本文参考特定应用的说明性示例描述了本技术的各方面,但是应当理解到,本技术不限于那些特定的应用。能够利用本文提供的教导的本领域技术人员将认识到在其范围内的另外的修改、应用和方面以及本技术具有重要用途的另外的领域。
支持笔的文档编辑应用可以向用户呈现空白画布或类似于横格纸的硬性组织的文档模板。但是,在利用空白画布的情况下,用户可能难以设计出任何有意义的结构,从而导致凌乱或无组织的文档,从而可能使得用户执行可能令人沮丧地耗时并浪费计算能力的修订和/或校正。另一方面,再利用模仿横格纸的硬性模板(诸如电子模板)的情况下,可能会阻碍用户绘制图形、图表或偏离模板的引导线的其他创意内容。
本公开提供了用于在支持笔的编辑器应用中提供文本笔模式的系统和方法,该支持笔的编辑器应用从当前或先前提供的笔输入中提取信息来提供实时自适应引导线以供通过利用文本笔设备输入手写文本。
根据一个方面,公开了一种用于电子设备的支持笔的编辑器应用,其为手写文本提供自适应引导线。实时地与手写文本一起生成自适应引导线,以允许用户利用空白页的自由形式输入可能性,同时仍能受益于在划线页面上书写所带来的整洁和组织。随着文本被书写,自适应引导线被生成并且具有随手写输入文本的所测量的方面而变化的位置和长度。手写输入文本可以由与电子设备的显示设备交互的笔设备提供。
图1示出了根据本技术的方面的、用于使用笔输入设备或笔设备的有引导文本输入的示例性系统100。系统100包括计算设备101、笔设备178、网络170和应用服务器180。计算设备101和/或笔设备178可以通过网络170耦合到应用服务器180。
计算设备101包括处理器121、一个或多个输入/输出组件(诸如显示设备122)、通信模块123和存储器130。存储器130包括支持笔的编辑器应用140,其可以包括引导线特征包142。
在本技术的各方面中,计算设备101是支持笔的设备,其可以经由显示设备122从笔设备178接收笔输入。例如,计算设备101可以是台式一体化计算机、平板或可转换计算机、膝上型计算机、智能电话、便携式游戏机或具有支持笔输入的显示设备122的其他设备。
在本描述中,笔输入被用来一般地指代来自笔设备178的输入,笔设备178可以被实现为可以与计算设备101的显示设备122对接的笔或触控笔。例如,笔设备178可以是包括处理电路、存储器和/或存储在笔设备存储器中的一个或多个应用的有源设备,或者可以是具有被配置为可被显示设备122内的电路检测到的材料组合物的无源设备。例如,无源笔设备可以与电容或电阻触摸屏、显示数字化器、外围平板设备或耦合到显示设备122或与之集成的其他输入设备对接。在本技术的一些方面中,显示设备122可以对应于显示投影仪或增强现实眼镜,在这种情况下,笔设备178被实现为提供笔输入而不接触物理表面的空气笔。
希望用笔设备178和计算设备101手写文本的用户可以例如访问应用服务器180支持的应用商店来下载支持笔的编辑器应用140并将其安装到计算设备101上。因此,计算设备101可以利用通信模块123(例如以太网适配器、无线卡或蜂窝调制解调器)来通过网络170与应用服务器180通信。在本技术的各方面中,可以在可安装介质上——例如在光盘、闪存卡或其他设备上——提供支持笔的编辑器应用140。在本技术的其他方面中,支持笔的编辑器应用140可以预先安装到计算设备101上,或者可以将支持笔的编辑器应用140集成为计算设备101的操作系统的一部分。
如图1所示,笔设备178可以经由显示设备122(例如,通过向显示设备中的电极或其他接收组件主动传输通信,或者通过被动地引起可检测的变化,诸如显示设备中的电极或其他接收组件的电容或电阻改变),与支持笔的编辑器应用140交互和/或可以经由通信模块123,通过接收和发射信号来与支持笔的编辑器应用140交互。
如图1所示,支持笔的编辑器应用140包括引导线特征包142,其可以被包含在支持笔的编辑器应用140中或者可以(例如,从应用服务器180)获得为支持笔的编辑器应用140的附加组件。支持笔的编辑器应用140可以为用户提供录入手写文本和/或绘画的能力,以及在录入之后可以数字化和/或清除手写输入的选项。支持笔的编辑器应用140还可以为用户提供其他类型的输入选项,诸如从键盘输入内容的选项和/或经由文件浏览器或拖放操作插入诸如图像、视频或其他图形的对象的选项。
引导线特征包142包括用于支持笔的编辑器应用140的特征,这些特征有助于向录入手写文本的用户提供不显眼的书写引导,以提高文档的可读性和组织性。在支持笔的编辑器应用140中,“文本笔”模式可以由用户选择,或者可以在应用检测到书写文本时(例如,通过检测来自笔设备178的笔输入中的至少一个字符)自动地启动。字符可以包括与各种人类语言中的任何一种相对应的字母、数字或符号。
一旦处于文本笔模式,支持笔的编辑器应用140便至少在使用笔设备178将文本输入提供给应用时提供响应于录入文本输入而生成的引导线。该引导线可以在一位置处被提供,并且具有取决于所录入的文本的一个或多个特征的自适应长度和/或形状。引导线在笔输入中提供的文本表示的至少一部分的下方(例如,沿着其底部并与其相邻)延伸,并且超出文本表示的结尾达基于一个或多个手写字符的一个或多个特征的长度。默认情况下,该引导线可以是水平平直的(例如,平行于应用提供的虚拟页面的顶部和/或底部边缘),但是文本笔模式也可以或者替选地提供取决于录入的文本的布置的倾斜的、弯曲的或不规则的引导线。随着手写文本的录入,该引导线可以实时地增长、缩短和/或改变形状,以适应文本被写入时的方向、形状、速度和大小(和/或其他特征)。
引导线可以延伸穿过与一个或多个录入的字符相关联的一个或多个基线位置。例如,基线位置可以与所检测的“a”或“k”的底部垂直分离,或者可以穿过“y”的长竖(stem)(作为示例)。
提供自适应的实时引导线可以帮助鼓励创造力和自由形式的混合布局,其中,可以将绘画、图形和文本放置在文档中的任何位置,同时利用现代的计算设备的能力来改进(例如,整洁和/或组织)手写输入的最终数字表示。为此,引导线可以根据各种考虑(包括启发式、机器学习算法、用户书写风格、周围上下文等)延伸出一定距离,而不是一直延伸到应用140的虚拟页面的页边。
图2-4示出了引导线的示例,其可以响应于在对应用140的笔输入的手写文本中提供的字符并基于其特征来提供。例如,图2示出了已经由用户使用例如用于(例如,在显示设备122的表面上)书写文本的笔设备178所手写的文本“The quick”的表示110。示出了引导线120,其包括沿着并邻近文本延伸的部分124(例如,与一些字母的最底部分离并且延伸穿过诸如图2中的“q”的其他字母的悬垂部分)和从部分124延伸并且超过文本的结尾(即,在图2的示例中,超过字符“k”)的延伸部分126。
将延伸部分126提供为用户在一位置处并且在一方向上录入附加文本的引导,该附加文本与已经录入的文本“The quick”相关联,该位置和方向与已经录入的文本的位置和方向一致,并且鼓励最终的数字文档的整洁和易读。
如所示,延伸部分126包括渐变部分128,该渐变部分128在暗度(darkness)、纹理和/或颜色上渐变至书写文本的背景中,与最后一个字符的距离不断增加。如所示,延伸部分126具有长度L。L可以是基于用户所写的文本而增长、缩短、出现、消失、改变形状和/或以其他方式演变的自适应长度。当检测到来自笔设备178的笔输入中的第一字符时,引导线120可以出现。例如,笔设备178可以被用来绘制不会导致支持笔的编辑器应用140显示引导线的图或其他非字符录入。
例如,长度L可以基于已经录入的文本“The quick”的一个或多个字符的宽度(例如,字符的中位或平均长度或最后一个字符的宽度)。长度L也可以基于字符被书写的速度或速率。例如,引导线120的延伸部分126可以具有等于乘积因子乘以所确定的字符宽度的长度。可以基于书写速率来确定乘积因子。例如,对于中等的书写速率,延伸部分126可以比最后一个书写字符延伸十个字符宽度,对于快速书写速率,比最后一个书写字符延伸二十个字符宽度,而对于慢速书写速率,比最后一个书写字符延伸五个字符宽度。
可以通过录入每个书写字符或在每组N个书写字符之后修改长度L(例如,可以在每组三个书写字符、五个书写字符或十个书写字符之后修改长度L)。如所示,引导线120的总长度(包括延伸的部分126)小于最大行长度LMAX。最大行长度LMAX可以是例如由应用140提供的虚拟页面的页面宽度(或如由自动化或用户定义的页边距限定的页面的可绘制区域内的宽度)。
引导线120的部分124的长度也随着书写附加字符而增加。图3示出了一个示例,其中部分124增长以沿已经由用户利用笔设备178手写的文本“The quick brown fox”并与其相邻来延伸,以及延伸部分126已经移动以在新的最后的字符“x”后开始。在图3的示例中,延伸部分126也已经增长到长度L'(例如,由于相对于书写“The quick”期间的书写速率,书写“brown fox”的书写速率增加)。在图3中,引导线120的总长度仍小于图1中的最大长度LMAX
图4示出了一个示例,其中引导线120已经增长到等于最大长度LMAX的总长度,并且已经为新的文本行生成了新的引导线120b。如所示,引导线120b与引导线120a分离并且在平行于引导线120a的方向上延伸。可以基于在引导线120a上书写的文本的字符中的一个或多个的垂直高度来确定距离D。例如,距离D可以等于与引导线120a相关联的行上的最高字符的高度加上余量。该余量可以是默认的余量,或者可以基于先前书写的字符来确定(例如,以确保引导线120a和120b之间有足够的空间供用户书写任何字符)。可以基于与引导线120a相关联的文本和/或一个或多个附加的先前书写的文本行来确定距离D。
与较慢的书写者相比,对于较快的书写者来说,在引导线120a上书写期间,引导线120b可以出现得更早。图4的引导线120b包括实线部分400和从实线部分延伸的渐变部分402。甚至当用户开始在引导线120b上书写时,引导线120a可以是持久的并且保持显示,或者当用户开始在另一行上书写或停止书写达一定时间段时,引导线120a可以消失。可以通过对设备101的不同输入(例如,通过在显示设备122上的手指轻击或笔轻击),可以切换开启或关闭引导线120a和120b和/或其他所显示的引导线。引导线120a和120b和/或其他所显示的引导线可以是在由应用140生成的最终文档中被移除的临时引导线,或者可以是最终文档的持久性部分。
尽管在图2-4中未显示,但每个引导线可以与文本框相关联,该文本框被生成、调整大小和定位以包含一个或多个所生成的引导线以及用户提供的手写文本。图5-7示出了文本框的示例,该文本框可以与上文分别结合图2-4所述描述的引导线一起生成。如图5所示,可以生成诸如文本框500的文本框,其封装引导线120和由表示110代表的文本。文本框500具有基于来自笔设备178的笔输入中的输入文本的字符的所识别的特征所确定的高度和长度。例如,文本框500的高度可以大于文本框内的最高字符的高度。例如,文本框500的长度可以等于引导线120的长度,或者等于引导线120的长度加上诸如一个字符余量、二个字符余量或任何其他适当的余量的余量。
如图6所示,当在来自笔设备178的笔输入中录入附加文本时,文本框500的长度增加。在图7的示例中,当生成附加引导线120b时,文本框500的高度增加,以容纳引导线120a和120b两者。但是,这仅仅是说明性的。在其他实施方式中,可以为引导线120b及其相关联的文本生成单独的文本框。
文本框500可以由应用140在后台生成,但不显示给用户,除非用户提供使应用140显示该文本框的附加输入(例如,手指轻击或其他非书写输入)。当显示文本框时,该文本框可以是可操纵的,从而可以封装所接收的笔输入中的手写文本和/或相关联的引导线以由用户通过移动、旋转、调整大小或其他方式操纵文本框来选择、拖、放、旋转、调整大小或以其他方式操纵。
在图2-7的示例中,显示了水平的平直引导线。然而,应用140还可以提供形状和/或方向上自适应的引导线,以容纳和引导除沿直线的文本以外的手写文本。例如,图8-10示出了响应于包括沿曲线书写的文本的笔输入而生成的倾斜的和/或弯曲的引导线的示例。
在图8的示例中,示出了以非水平角延伸的文本“The quick”(例如,已经由用户使用例如用于将文本书写在显示设备122的表面上的笔设备178手写的文本)的表示110。如所示,相对于水平方向800以增加的距离来书写文本“The quick”。水平方向800可以被定义为平行于直线显示、虚拟页面或可绘制区域的顶部/或底部的方向。虽然图8的文本与水平方向成一定角度,但文本是以直线书写的。作为响应,引导线120可以由应用140生成为相对于水平方向800以定角度延伸的直线引导线。
在图9的示例中,用户使用笔设备178沿着相对于原始文本“The quick”的角度平滑地偏离的曲线来手写附加文本“brown fox”。如所示,引导线120延伸改变形状并沿着与书写文本的曲线相对应的曲线延伸。如图10所示,已经通过方向上的附加的变化录入附加文本“jumped”以形成输入文本的波浪形样式。响应地,引导线120a伸延出波浪引导线,以沿着相同的波浪曲线引导未来的输入文本。例如,一旦检测到沿其书写文本的曲线的多个变化,则应用140可以开始预测附加曲线变化,并且通过预测的附加曲线变化来伸延引导线,如图10所示。
如图10所示,弯曲或倾斜的引导线的总长度可以超过直线引导线的最大长度LMAX。然而,一旦弯曲的(和/或倾斜的)引导线120a到达例如虚拟页面的边缘或页边,就会生成与引导线120a平行并与其间隔开(例如达如上结合图4所述的距离D)的附加引导线120b。
倾斜和/或弯曲的引导线120包括沿着文本延伸并与之相邻的部分124和从部分124延伸并超出文本结尾(即,在图10的示例中,超出字符“d”)的延伸部分126,如同图2-4的平直引导线一样。
支持笔的编辑器应用140可以生成避免延伸进入其他文档元素(诸如,先前已经放置或录入的其他文本框或绘画)的引导线。图11示出了已经在文档元素1100(诸如绘画、另一文本框、图像、嵌入式视频等)的附近,利用笔设备178书写的文本“The quick”的表示110的示例。在图11的示例中,引导线120a已经延伸到在手写文本的当前行的开始与元素1100的边缘1102之间定义的最大长度LMAX(例如,以防止引导线120a延伸至元素1100上)并且已经提供附加引导线120b。
附加引导线120b可能会阻止用户在元素1100上书写。然而,如图12所示,即使用户提供包括延伸至元素1100上的手写文本的笔输入,甚至当显示附加引导线120b时,也可以在元素1100上临时提供该手写文本的表示110。
当应用140确定用户已经停止录入文本时,如图13所示,应用140可以在引导线120a和120b上重新显示在元素1100上录入的文本。以这种方式,可以向用户提供在另一文档对象附近快速且容易地录入手写文本的能力,该手写文本随后根据生成的引导线进行整理和组织。
在图12和13的示例中,调整录入文本的大小(并将引导线120a和120b之间的距离从D减小到D')以适合所提供的引导线。但是,这仅仅是说明性的。在其他情况下,应用140可以重新显示在元素1100上录入的文本,而无需调整文本的大小(例如,通过沿不与元素1100重叠的其他行重新显示)。
尽管已经描述了在当前引导线达到最大长度时提供附加引导线的示例,但是在一些情况下,应用140可以仅提供单条引导线。例如,图14和15示出了应用140确定手写文本是图形的图名并且仅提供单条引导线的场景。
如图14所示,在虚拟页面上提供图形(例如,图像、绘画或嵌入式视频)以及已经在图形1400下方的笔输入中录入的文本输入“The quick brown fox jumped”的表示110。基于例如文本与图形1400的接近度(例如,在阈值距离内)和图形1400下方的录入文本的方向,应用140可以将图14的录入文本识别为图名。
在图14的示例中,所录入的文本(已经在该所录入的文本的表示110的位置处录入)延伸超出该图形的边缘1402和1404。但是,在该文本下方生成的引导线120被限制在边缘1402和1404内。由于已经将文本识别为图名,而不是当录入的文本超出边缘1402和1404时生成附加引导线,因此,调整录入的文本的大小以适合提供的引导线,如图15所示。在如在图15中,调整了文本的大小并重新显示后,如果需要,可以从显示去除引导线120。
已经描述了由虚拟页面的边缘或另一文档元素的边缘来定义应用140提供的引导线可以延伸到的边界的示例。但是,也可以响应于用户生成的边界来生成引导线。
例如,图16示出了用户已经用笔设备178绘制了圆形边界1600的场景。尽管描绘了圆形边界,但是应当理解到,应用140为用户提供了绘制任何所需的形状或大小的连续或非连续的边界的能力。
在图16的示例中,在绘制边界1600之后,用户已经在圆形边界内录入了文本“Thequick”。已经在手写文本的表示110下生成了引导线120a,并且由于引导线120a完全跨圆延伸(例如,在引导线的结尾和圆本身之间具有边距),因此已经生成在圆形边界内并且从其边缘延伸的附加引导线120b,以帮助引导用户继续在用户生成的边界内提供手写文本。
已经描述了由虚拟页面的边缘、另一文档元素的边缘或用户生成的边界定义应用140提供的引导线可以延伸至的边界的示例。但是,也可以基于先前录入的文本的垂直分布来生成引导线。
例如,图17示出了具有已经基于先前录入的文本的各列的垂直分布而生成的各种引导线的手写列表的示例。在图17的示例中,示出了包括主列1700(例如,“Pros”列)和1702(例如,“Cons”列)的列表,每个主列具有相应的子列1701和1703。
当用户开始写“Pros”时(例如,使用笔设备178),可以如上结合图2的“The quick”示例所述,生成引导线1704(例如,具有延伸部分126和基于虚拟页面宽度的最大长度LMAX)。但是,当用户跳过一定量的水平空白(例如,比“Pros”的字符之间的间隔大一阈值(诸如,五个间隔或十个间隔的阈值)的量),并且开始写“Cons”,应用140可以确定正在书写新的文本列,并且提供与引导线1704水平分隔的新引导线1712。响应于检测到两个文本列,应用140可以生成沿主列标题并与之相邻来延伸并且具有由标题的长度确定的长度的引导线1704。应用140还可以生成引导线1706和1714,分别与相应的主列标头引导线1704和1712垂直分开,并且彼此水平分开与引导线1704和1712之间的距离相同的距离。以这种方式,应用140提供为多个垂直对齐的主列标题提供引导线。
用户还可以对每个主列的子列录入文本。在图17的示例中,用户已经在彼此垂直分开并且相对于主列文本“Pros”缩进的垂直对齐的文本行中提供包括文本“Awesome”和“Great”的笔输入。响应地,应用140沿着子列中的最新近录入并且与之相邻地提供子列引导线1708以及用于子列中的下一录入的附加引导线1710。
子列引导线1708和1710均具有基于子列录入的宽度确定的各自的长度。例如,引导线1708可以包括沿着文本“Great”延伸并与之相邻的部分以及延伸超过最后一个“字符”至最大长度(例如,最大长度等于先前列录入的宽度的平均值或子列中的最大长度录入的宽度)的延伸部分。基于先前列录入的书写速率和完整性,可以提供引导线1710(例如,当引导线1708接近或达到最大长度时)。
在图17的示例中,用户还已经提供了笔输入,该笔输入包括彼此垂直分开并且相对于主列文本“Cons”缩进的文本“Expensive”、“Bad”和“Strange”。响应地,应用140提供沿子列中的最新近录入延伸并与之相邻的子列引导线1716,以及用于子列中的下一个录入的附加引导线1718。
子列引导线1716和1718均具有基于如结合引导线1708和1710所述的子列录入的宽度确定的个体长度。例如,引导线1716可以包括沿文本“Strange”并且与之相邻而延伸的部分以及延伸超出最后一个字符“e”至最大长度(例如,最大长度等于先前列录入的宽度的平均值或子列中的最大长度录入的宽度)的延伸部分。基于先前列录入的书写速率和完整性,可以提供引导线1718(例如,当引导线1716接近或达到最大长度时)。
如图17所示,主列引导线1706和1714与相应的主列引导线1704和1712垂直分离,并与相应的主列引导线1704和1712垂直对齐。子列1701和1703中的子列录入以及其中的子列引导线插入在垂直对齐的主柱引导线之间并相对于其缩进。
尽管,在上文结合图2所述的示例中,基于水平分开的文本“Pros”和“Cons”的笔输入来检测诸如列表输入的多列输入,这仅是说明性的。应用140还可以通过检测短于虚拟页面宽度的多个垂直对齐的文本录入来识别具有一个或多个列和/或一个或多个子列的列表。例如,在图17的列表中,用户可以首先(例如,通过笔设备178,在显示设备122上)书写“Pros”,然后书写相对于“Pros”垂直分开并且缩进的“Awesome”。应用140检测长度短于页面宽度的垂直分开的文本(和/或检测缩进的文本录入),并且生成列表关联的引导线,诸如引导线1704、1706、1708和1710。以这种方式,还可以提供具有单个主列的列表的特定于列表的引导线,单个主列具有或不具有一个或多个子列。
还应当理解到,尽管上文结合图17所述的示例将文本“Pros”描述为首先输入,但是应用140可以识别与列表关联的文本的列表方面,不管首先提供哪些录入以及以什么顺序提供。例如,文本“Cons”可以在文本“Pros”之前录入,或者能够提供子列条目,稍后向其提供主列标题行。因此,应用140为用户提供了生成各种大小和布置的列表的自由,同时持续地使用先前提供的录入来提供增强最终得到的文档的易读性和组织性的指导。
图18描绘了根据本技术的方面的、用于向诸如图1的支持笔的编辑器应用140的支持笔的编辑器应用提供自适应引导线的示例过程1810的流程图。为了说明的目的,本文参考图1-图17的组件,描述图18的示例过程。为进一步说明的目的,将图18的示例过程的框描述为连续或线性发生。然而,图18的示例过程的多个框可以并行地发生。另外,图18的示例过程的框不需要按所示的顺序执行和/或不需要执行图18的示例过程的一个或多个框。
在所描绘的示例流程图中,在框1811处,由支持笔的编辑器应用(例如,由在处理器121上运行的应用140经由显示设备122)接收笔输入(诸如来自图1的笔设备178的笔输入)。可以在支持笔的编辑器应用提供的虚拟页面上提供笔输入。虚拟页面可以具有在其内接受笔输入的边缘和/或页边(例如,垂直和/或水平边缘和/或可绘制区域的页边)。
在框1812,支持笔的编辑器应用检测笔输入中的至少一个字符。笔输入可以包括其他输入,诸如绘画、边界或其他可手绘的输入。至少一个字符可以包括一个或多个字母、数字、符号或其他字符(诸如文本“The quick”中的一个或多个字符),如在此的各个示例中所述(参见例如图2)。
在框1813,响应于检测到至少一个字符,支持笔的编辑器应用进入文本输入模式。还应当理解到,文本输入模式可以是可由用户选择(例如,在笔输入中提供文本的任何字符之前)。在文本输入模式下,附加笔输入被解释为手写文本,并且由应用执行用于向用户提供针对附加文本输入的引导线的各个操作。
例如,在框1814,支持笔的编辑器应用检测至少一个字符的一个或多个方面。例如,支持笔的编辑器应用可以检测诸如每个字符的高度和/或宽度、一对或多对相邻字符之间的间隔的大小、相对于虚拟页面的水平或垂直边缘的角度、多个字符的录入的弯曲方向和/或至少一个字符的书写速率(例如,每秒的字母速率或每分钟的单词速率)的方面。
在框1815处,支持笔的编辑器应用提供笔输入的表示和引导线(例如,本文结合各个示例描述的引导线120、120a、120b、1704、1706、1708、1710、1712、1716和1718)以在显示设备(例如,显示设备122)上显示(例如,参见如本文结合各个示例所述的表示110)。引导线延伸超出笔输入的所显示表示的结尾一长度,该长度是基于上文结合例如图2-17所述的笔输入的所检测方面。
图19在概念上图示了能用其实现本本技术的一些实施方式的示例电子系统1900。电子系统1900可以是计算机、电话、PDA或任何其他类型的电子设备。这样的电子系统包括各种类型的计算机可读介质和用于各种其他类型的计算机可读介质的接口。电子系统1900包括总线1908、处理单元1912、系统存储器1904、只读存储器(ROM)1910、持久性存储设备1902、输入设备接口1914、输出设备接口1906和网络接口1916。
总线1908共同代表通信地连接电子系统1900的许多内部设备的所有的系统、外围、和芯片集总线。例如,总线1908将处理单元1912与ROM 1910、系统存储器1904和持久性存储设备1902通信地连接。
处理单元1912从这些各种存储器单元检索要执行的指令和要处理的数据,以便执行本公开的过程。在不同实施方式中,处理单元可以是单个处理器或多核处理器。
ROM 1910存储电子系统的处理单元1912和其它模块所需要的静态数据和指令。另一方面,持久性存储设备1902是读写存储器设备。该设备是即使在当电子系统1900关闭时也存储指令和数据的非易失性存储器单元。本公开的一些实施方式使用大容量存储设备(例如,磁盘或者光盘及其相应的磁盘驱动器)作为持久性存储设备1902。
其它实施方式使用可移动存储设备(例如,软盘、闪存驱动器及其对应的磁盘驱动器)作为持久性存储设备1902。与持久性存储设备1902一样,系统存储器1904是读写存储器设备。然而,与存储设备1902不同,系统存储器1904是易失性读写存储器,诸如,随机存取存储器。系统存储器1904存储处理器在运行时需要的指令和数据中的一些。在一些实施方式中,本公开的过程被存储在系统存储器1904、持久性存储设备1902或ROM 1910中。例如,根据一些实施方式,各种存储器单元包括用于处理对项目的社会认可的指令。处理单元1912从这些各种存储器单元检索要执行的指令和要处理的数据,以便执行一些实施方式的过程。
总线1908还连接到输入和输出设备接口1914和1906。输入设备接口1914使用户能够向电子系统传送信息并且选择命令。例如,与输入设备接口1914一起使用的输入设备包括例如字母数字键盘和指示设备(也称为“光标控制设备”)。输出设备接口1906实现例如显示电子系统1900所生成的图像。与输出设备接口1906一起使用的输出设备包括例如打印机和显示设备,例如,阴极射线管(CRT)或液晶显示器(LCD)。一些实施方式包括例如充当输入和输出设备二者的触摸屏的设备。
最后,如图19所示,总线1908还通过网络接口1916,将电子系统1900耦合至网络(未示出)。以这种方式,计算机可以是计算机网络的一部分(例如,局域网(LAN)、广域网(WAN),或内联网、或网络中的网络,例如,互联网)。电子系统1900的任何组件或所有组件都可以结合本公开使用。
将许多上述特征和应用实现为软件过程,所述软件过程被指定为在计算机可读存储介质(也称为计算机可读介质)上记录的指令集。当这些指令被一个或多个处理单元(例如,一个或多个处理器、处理器的核心,或其他处理单元)执行时,它们使得处理单元执行在所述指令中所指示的动作。计算机可读媒介的示例包括但是不限于CD-ROMs、闪存、RAM芯片、硬盘、EPROMs等。该计算机可读介质不包括无线地或在有线连接上传递的载波和电子信号。
在本说明书中,术语“软件”指包括驻留在只读存储器中的固件或者存储在磁存储器中的应用,其可以被读入存储器中以由处理器处理。同样,在一些实施方式中,在保留本公开的不同软件方面的同时,本公开的多个软件方面可以被实现为更大程序的子部分。在一些实施方式中,多个软件方面也可以被实现为独立的程序。最后,共同实现此处描述的软件方面的独立程序的任何组合在本公开的范围内。在一些实施方式中,软件程序当被安装以在一个或多个电子系统上操作时,限定执行并且执行软件程序的操作的一个或多个具体的机器实施方式。
可以以程序语言的任何形式(包括编译或者解释型的语言、声明性语言或者过程语言)来编写计算机程序(也称为程序、软件、软件应用、脚本或代码)并且可以以任何形式来部署计算机程序,包括部署为独立的程序或者部署为模块、组件、子例程、对象或者适合在计算环境中使用的其它单元。计算程序可以但不需要与文件系统中的文件对应。可以将程序存储在保存其它程序或者数据(例如,存储在标记语言文档中的一个或多个脚本)的文件的一部分中、在专用于所讨论程序的单个文件中,或者在多个协同文件(例如,存储一个或多个模块、子程序、或者代码的一部分的文件)中。可以将计算机程序部署为在一个计算机或者多个计算机上执行,该多个计算机位于一个站点处或跨多个站点分布并且通过通信网络互连。
上文所述的这些功能可以以数字电子电路、以计算机软件、固件或者硬件实现。可以使用一个或多个计算机程序产品来实现技术。可编程处理器和计算机可以被包括在移动设备中或者可以封装成移动设备。可以通过一个或多个可编程处理器并且通过一个或多个可编程逻辑电路来执行过程和逻辑流程。通用和专用计算设备和存储设备可以通过通信网络互连。
一些实施方式包括电子组件,例如将计算机程序指令存储在机器可读介质或计算机可读介质(替选地,称为计算机可读存储介质、机器可读介质、或者机器可读存储介质)中的微处理器、存储器和内存。这样的计算机可读介质的一些示例包括RAM、ROM、只读光盘(CD-ROM)、可录式光盘(CD-R)、可重写光盘(CD-RW)、只读数字通用光盘(例如,DVD-ROM、双层DVD-ROM)、各种可录/可重写DVD(例如,DVD-RAM、DVD-RW、DVD+RW等)、闪速存储器(例如,SD卡、迷你SD卡、微SD卡等)、磁性或者固态硬盘驱动器、只读并且可录光盘、超密度光盘、任何其它光学或者磁性介质和软盘。计算机可读介质可以存储计算机程序,该计算机程序可由至少一个处理单元执行并且包括用于执行各种操作的指令集。计算机程序或者计算机代码的示例包括例如由编译器产生的机器代码以及文件,该文件包括由计算机、电子组件、或者使用解释器的微处理器执行的高级代码。
虽然上文的讨论主要指执行软件的微处理器或者多核处理器,但是一些实施方式由一个或多个集成电路,例如,专用集成电路(ASIC)或者现场可编程门阵列(FPGA)执行。在一些实施方式中,这样的集成电路执行存储在电路本身上的指令。
如在本申请的本说明书和任何权利要求中使用的,术语“计算机”、“服务器”、“处理器”、和“存储器”都指电子的或者其它技术设备。这些术语不包括人或者人群。鉴于本说明书的目的,术语显示是指电子设备上的显示。如在本申请的本说明书和任何权利要求中使用的,术语“计算机可读介质”全部限于以计算机可读的形式存储信息的有形的、物理的对象。这些术语不包括任何无线信号、有线下载信号和任何其它短暂的信号。
为了提供与用户的交互,在本说明书中描述的主题的实施方式可以在具有向用户显示信息显示设备(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器)以及用户借此可以将输入提供给计算机的键盘和指示设备(例如,鼠标或者轨迹球)的计算机上实现。其它种类的设备也可以被用来提供与用户的互动;例如,向用户提供的反馈可以是任何形式的感官反馈(例如,视觉反馈、听觉反馈或者触觉反馈);以及可以以任何形式接收来自用户的输入,包括声学输入、语音输入或者触觉输入。另外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档,例如,通过响应于从用户的客户端设备上的Web浏览器接收的请求,向Web浏览器发送网页来与用户交互。
在本说明书中描述的本技术的方面可以在计算系统中实现,该计算系统包括后端组件(例如,作为数据服务器),或包括中间件组件(例如,应用服务器),或包括前端组件(例如,具有Web浏览器的客户端计算机,通过该图形用户界面或者Web浏览器,用户可以与本说明书中描述的主题的实施方式进行交互),或者这样的后端组件、中间件组件、或者前端组件的任意组合。系统的组件可以通过任何形式或者介质的数字数据通信(例如,通信网络)来互连。通信网络的示例包括局域网(LAN)和广域网(WAN)、互联网络(例如,互联网)和对等网络(例如,对等点对点网络)。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络交互。客户端和服务器之间的关系是凭借在相应计算机上运行的并且相互具有客户端-服务器关系的计算机程序来产生。在本技术的方面中,服务器向客户端设备传送数据(例如,HTML页面)(例如,为了向与客户端设备交互的用户显示数据并且接收来自该用户的用户输入)。可以从服务器处的客户端设备接收客户端设备上生成的数据(例如,用户交互的结果)。
应当理解到,所公开的过程中的步骤的任何特定顺序或层次是示例方法的图示。基于设计偏好,应理解到,可以重新排列过程中的步骤的具体顺序或层级或执行所有所图示的步骤。可以同时执行一些步骤。例如,在某些实施方式中,多任务和并行处理可能是有利的。此外,上文所述的本技术的方面中的各种系统组件的分离不应当被理解为在本技术的所有方面中均要求这样的分离,并且应当理解到,所述的程序组件和系统通常可以一起集成在单个软件产品中或封装成多个软件产品。
提供了在前描述,以使得本领域的任何技术人员能够实施本文所述的各种方面。对本领域技术人员而言,对这些方面的各种改进将是显而易见的,并且本文限定的通用原理可以应用于其它方面。因此,权利要求不旨在限于本文所示出的方面,而是应当被赋予与权利要求的语言相一致的全部范围,其中,除非特别声明,否则对以单数形式的要素的引述并非旨在表示“一个且仅有一个”,而是旨在表示“一个或多个”。除非特别声明,否则术语“一些”指一个或多个。男性代词(例如,他的)包括女性和中性(例如,她的和它的),反之亦然。使用标题和副标题(如果有)仅是为了方便,并不限制本公开。
诸如“方面”的短语不暗指这些方面对本技术是必要的,或者这些方面可以应用于本技术的所有配置。与方面有关的公开可以应用于所有配置,或者一个或多个配置。诸如“方面”的短语可以指一个或多个方面,反之亦然。诸如“配置”的短语不暗指这样的配置对本技术是必要的,或者这样的配置可以应用于本技术的所有配置。与配置有关的公开可以应用于所有配置,或者一个或多个配置。诸如“配置”的短语可以指一个或多个配置,反之亦然。

Claims (16)

1.一种用于捕获笔输入的计算机实现的方法,所述计算机实现的方法包括:
从电子设备的输入组件接收所述笔输入;
确定所述笔输入的输入模式为文本输入模式;
识别所述笔输入中的至少一个字符的特征,其中,所述至少一个字符的所述特征包括所述至少一个字符的大小和所述至少一个字符的书写速率;
提供所述笔输入的表示和引导线以供在所述电子设备的显示设备上显示,其中,所述引导线沿着所述笔输入的表示的至少一部分并与之相邻来延伸,并且延伸超出所述笔输入的表示的结尾一长度,所述长度是基于所述至少一个字符的所识别的特征;以及
基于乘积因子与所述至少一个字符的大小的乘积,确定所述引导线的长度,其中,所述乘积因子是基于所述书写速率。
2.如权利要求1所述的计算机实现的方法,其中,确定所述笔输入的输入模式为文本输入模式包括:识别所述笔输入中的所述至少一个字符。
3.如权利要求1所述的计算机实现的方法,其中,确定所述笔输入的输入模式为文本输入模式包括:接收对所述文本输入模式的选择。
4.如权利要求1所述的计算机实现的方法,进一步包括:
接收附加笔输入中的附加字符;
提供所述附加字符的表示以供显示;以及
在提供所述附加字符的表示的同时,使所述引导线的长度延伸基于所述附加字符的特征的量。
5.如权利要求4所述的计算机实现的方法,进一步包括:
获得所述引导线的最大长度;
提供具有所述最大长度的所述引导线;以及
在提供具有所述最大长度的所述引导线的同时,提供与所述引导线分开基于所述附加字符的特征的距离的附加引导线。
6.如权利要求5所述的计算机实现的方法,其中,所述最大长度等于支持笔的编辑器显示的可绘制区域的宽度。
7.如权利要求5所述的计算机实现的方法,其中,所述最大长度小于支持笔的编辑器显示的可绘制区域的宽度,并且所述最大长度基于所显示的字符的多条垂直对齐的线的多个长度的中值。
8.如权利要求1所述的计算机实现的方法,其中,所述长度是进一步基于所述笔输入在其中被录入的上下文,并且
其中,所述上下文包括所显示的背景对象,以及其中,所述引导线的最大长度是基于所显示的背景对象的位置。
9.如权利要求8所述的计算机实现的方法,进一步包括:
接收附加笔输入中的附加字符,其中,所述附加字符是在与所显示的背景对象重叠的位置处被接收的;
提供所述附加字符的表示以供在与所显示的背景对象重叠的所述位置处显示;
提供具有延伸到所显示的背景对象的边缘的长度的所述引导线;
基于所述附加字符的特征,提供与所述边缘相邻的一个或多个附加引导线;以及
提供指令以在与所述一个或多个附加引导线相对应的位置处重新显示所述附加字符的表示。
10.如权利要求1所述的计算机实现的方法,进一步包括:识别所述引导线的、相对于所述至少一个字符的底部的基线位置。
11.一种系统,包括:
输入组件;
显示设备;
包括指令的存储器;以及
处理器,所述处理器被配置为执行所述指令来进行下述操作:
从所述输入组件接收笔输入;
识别所述笔输入中的至少一个字符的大小和书写速率;
提供所述笔输入的表示和引导线以供在所述显示设备上显示,其中,所述引导线沿着所述笔输入的表示的至少一部分并与之相邻来延伸,并且延伸超出所述笔输入的表示的结尾一长度,所述长度是基于所述至少一个字符的所识别的大小和书写速率;
基于乘积因子与所述至少一个字符的大小的乘积,确定所述引导线的长度,其中,所述乘积因子是基于所述书写速率。
12.如权利要求11所述的系统,其中,所述至少一个字符包括多个字符,每个字符具有宽度,并且其中,所述至少一个字符的大小是所述多个字符的宽度的中值。
13.如权利要求12所述的系统,其中,所述处理器被进一步配置为:
获得所述引导线的最大长度;
提供具有所述最大长度的所述引导线;以及
在提供具有所述最大长度的所述引导线的同时,提供与所述引导线分开基于所述至少一个字符的大小的距离的附加引导线,所述附加引导线具有一长度,所述长度是基于所述至少一个字符的所识别的大小和书写速率。
14.一种包括处理器的系统,所述处理器被配置为执行根据权利要求1至10中任一项所述的方法。
15.一种非瞬时性机器可读存储介质,包括用于使得处理器执行方法的机器可读指令,所述方法包括:
从电子设备的输入组件接收笔输入;
识别所述笔输入中的手写文本的特征,其中,所述手写文本的所述特征包括所述手写文本的字符高度、字符宽度,以及在所述笔输入中提供所述手写文本的速度;
提供所述手写文本的表示和第一引导线以供在所述电子设备的显示设备上显示,其中,所述第一引导线沿着所述手写文本的表示的至少一部分并与之相邻来延伸;以及
提供与所述第一引导线分开基于所述手写文本的所识别的特征的距离的第二引导线,其中,所述距离是基于所述字符高度,以及
其中,所述第二引导线具有基于所述手写文本的所识别的特征的长度,其中,所述长度是基于所述字符宽度和所述速度。
16.一种包括计算机可读指令的非瞬时性计算机可读存储介质,所述计算机可读指令用于使处理器执行根据权利要求1至10中任一项所述的方法。
CN201880035858.8A 2017-11-20 2018-08-10 电子文本笔系统和方法 Active CN110692060B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/818,637 2017-11-20
US15/818,637 US20190155895A1 (en) 2017-11-20 2017-11-20 Electronic text pen systems and methods
PCT/US2018/046358 WO2019099075A1 (en) 2017-11-20 2018-08-10 Electronic text pen systems and methods

Publications (2)

Publication Number Publication Date
CN110692060A CN110692060A (zh) 2020-01-14
CN110692060B true CN110692060B (zh) 2023-08-29

Family

ID=63449679

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880035858.8A Active CN110692060B (zh) 2017-11-20 2018-08-10 电子文本笔系统和方法

Country Status (4)

Country Link
US (1) US20190155895A1 (zh)
EP (1) EP3602331B1 (zh)
CN (1) CN110692060B (zh)
WO (1) WO2019099075A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804989B (zh) * 2017-05-05 2021-11-30 京东方科技集团股份有限公司 书画装置、书画设备及书画辅助方法
US11017258B2 (en) * 2018-06-05 2021-05-25 Microsoft Technology Licensing, Llc Alignment of user input on a screen
DE102018120760B4 (de) * 2018-07-12 2022-11-17 Tdk Electronics Ag Stiftförmiges Eingabe- und/oder Ausgabegerät und Verfahren zur Erzeugung eines haptischen Signals
KR20200078932A (ko) * 2018-12-24 2020-07-02 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법
US11379056B2 (en) * 2020-09-28 2022-07-05 Arian Gardner Editor's pen pad

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104885041A (zh) * 2012-09-26 2015-09-02 谷歌公司 手写输入的进度显示
CN105247540A (zh) * 2013-06-09 2016-01-13 苹果公司 管理实时手写识别

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096432B2 (en) * 2002-05-14 2006-08-22 Microsoft Corporation Write anywhere tool
US7062090B2 (en) * 2002-06-28 2006-06-13 Microsoft Corporation Writing guide for a free-form document editor
JP5737229B2 (ja) * 2012-06-12 2015-06-17 コニカミノルタ株式会社 オブジェクト共有システム及びオブジェクト入力支援プログラム
KR102162836B1 (ko) * 2013-08-30 2020-10-07 삼성전자주식회사 필드 속성을 이용한 컨텐트를 제공하는 전자 장치 및 방법
US9874950B2 (en) * 2014-11-21 2018-01-23 Lenovo (Singapore) Pte. Ltd. Adaptive guidelines for handwriting
WO2016098218A1 (ja) * 2014-12-18 2016-06-23 株式会社ワコム デジタルインク生成装置、デジタルインク生成方法及びデジタルインク再生装置
US10416877B2 (en) * 2015-08-25 2019-09-17 Myscript System and method of guiding handwriting input

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104885041A (zh) * 2012-09-26 2015-09-02 谷歌公司 手写输入的进度显示
CN105247540A (zh) * 2013-06-09 2016-01-13 苹果公司 管理实时手写识别

Also Published As

Publication number Publication date
CN110692060A (zh) 2020-01-14
EP3602331A1 (en) 2020-02-05
EP3602331B1 (en) 2022-04-13
US20190155895A1 (en) 2019-05-23
WO2019099075A1 (en) 2019-05-23

Similar Documents

Publication Publication Date Title
CN110692060B (zh) 电子文本笔系统和方法
KR102382899B1 (ko) 디지털 노트 필기의 시스템 및 방법
KR102257248B1 (ko) 텍스트 표현 변환을 위한 잉크
US8171401B2 (en) Resizing an editable area in a web page
CN108780381B (zh) 利用手势进行笔记记录的装置和方法
US10489051B2 (en) Handwriting input apparatus and control method thereof
US8600164B2 (en) Method and tool for recognizing a hand-drawn table
KR102381801B1 (ko) 핸드라이팅 입력을 가이드하는 시스템 및 방법
US20140115446A1 (en) Content Control Tools for a Document Authoring Application
US20170060819A1 (en) System and method of digital note taking
US20020059350A1 (en) Insertion point bungee space tool
US10698597B2 (en) Reflow of handwriting content
US10891423B2 (en) Portlet display on portable computing devices
KR102075433B1 (ko) 필기 입력 장치 및 그 제어 방법
US11983945B2 (en) Interactive editing of electronic text
US10417310B2 (en) Content inker
US20150007092A1 (en) Method and electronic device for displaying e-book
US20150205516A1 (en) System and method for processing touch input
US20140115447A1 (en) Centering Mathematical Objects in Documents
KR102009133B1 (ko) 전자문서 터치 제어 방법
US20240176482A1 (en) Gesture Based Space Adjustment for Editing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant