CN104813312B - 使用基本文本框来对丰富内容进行有状态编辑 - Google Patents
使用基本文本框来对丰富内容进行有状态编辑 Download PDFInfo
- Publication number
- CN104813312B CN104813312B CN201380043538.4A CN201380043538A CN104813312B CN 104813312 B CN104813312 B CN 104813312B CN 201380043538 A CN201380043538 A CN 201380043538A CN 104813312 B CN104813312 B CN 104813312B
- Authority
- CN
- China
- Prior art keywords
- content
- text
- text box
- abundant
- abundant content
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/169—Annotation, e.g. comment data or footnotes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
- Document Processing Apparatus (AREA)
Abstract
可以提供使用文本框对电子文档中的丰富内容进行的有状态编辑。可以在文本框中接收用于更新该丰富内容的多个输入。该丰富内容可以包括在该电子文档中显示的文本内容和非文本内容。可以基于文本框中的多个输入来确定要应用于该丰富内容的更新。该更新然后被应用于该丰富内容。
Description
背景
计算机软件应用可以被配置用于编辑电子文档中的丰富内容。例如,电子文档(例如,网页)可以包含文本内容和非文本内容(即,图形)两者。为使用户编辑围绕非文本内容的文本,上述软件应用生成文本框供用户输入字符。每次用户在文本框中作出键击,就发现新字符并将其插入电子文档供用户查看。然后,清除文本框供下一字符到达。这样,每次用户将字符输入至文本框中时,就清除该文本框供输入随后的字符。文本输入以此方式继续,直到用户已完成输入期望的单词、句子或段落。然而,上述用于丰富文本的文本输入法有许多缺点。例如,一个缺点在于:因为文本是在输入每个字符之后从文本框被清除,因此不维持预期的文本输入(例如,单词、句子或段落)的状态。这阻挠了预期查看完全文本输入(例如,单词、句子或段落)的外部软件工具(并因此需要维持状态),该完全文本输入通常由用户查看。具体而言,当所键入的文本以此方式受到干扰时,输入法编辑器(“IME”)和屏幕阅读器工具不会起作用。例如,IME软件使用户能在键盘上输入以复杂字形集构成的语言(例如,中文)的文本,该键盘不支持对该语言的完全符号范围并因此需要几次键击来表示单个字符。由于用于丰富文本的当前文本编辑器不维持状态,因此可能不会实现包括多个符号的字符的编辑。正是出于这些及其他考虑因素已经做出了本发明的各个实施例。
概要
提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
提供用于使用文本框对电子文档中的丰富内容进行有状态编辑的实施例。在文本框中可以接收多个输入用于更新丰富内容。丰富内容可以包括电子文档中显示的文本内容和非文本内容。基于文本框中的多个输入可以确定用于应用于丰富内容的更新。然后,将该更新应用于丰富内容。
通过阅读下面的详细描述并参考相关联的附图,这些及其他特点和优点将变得显而易见。可以理解,前述一般描述和以下具体实施方式均仅是例示性的,且不限制所要求保护的本发明。
附图简述
图1是示出按照各个实施例的使用文本框对电子文档中的丰富内容进行有状态编辑的网络体系结构的框图;
图2示出按照一实施例的应用用户界面以及用于编辑电子文档中的丰富内容的文本框的计算机屏幕显示;
图3是示出按照一实施例的使用文本框对电子文档中的丰富内容进行有状态编辑的例程的流程图;
图4是可在其中实现各实施例的计算设备的简化框图;
图5A是可在其中实现各实施例的移动计算设备的简化框图;
图5B是可在其中实现各实施例的移动计算设备的简化框图;以及
图6是可在其中实现各实施例的分布式计算系统的简单框图。
详细描述
提供了多个实施例以使用文本框对电子文档中的丰富内容进行有状态编辑。在文本框中可以接收到多个输入用于更新丰富内容。丰富内容可以包括电子文档中显示的文本内容和非文本内容。基于文本框中的多个输入可以确定用于应用于丰富内容的更新。然后,将该更新应用于丰富内容。
在下面的详细描述中,将参考构成本发明的一部分的附图,在附图中,通过例图,示出了特定实施例或示例。可组合这些实施例,可利用其他实施例,并且可作出结构上的改变,而不背离本发明的精神或范围。因此,以下详细描述并不旨在限制,并且本发明的范围由所附权利要求及其等效方案来限定。
现在参考附图(这些附图中相同的标号表示相同的元素),将描述本发明的各方面。图1是说明按照各个实施例、使用文本框对电子文档中的丰富内容进行有状态编辑(即,维持状态)的网络体系结构的框图。该网络体系结构包括通过网络4与服务器70通信的客户机计算设备2。网络4可以包括本地网络或广域网(例如,因特网)。客户机计算机2可以包括浏览器应用20和客户机应用30。服务器70可以包括基于web的应用72和电子文档74。浏览器应用20可用于生成web浏览器,该web浏览器用于通过网络4、经由基于web的应用72来访问、查看和编辑电子文档74。按照一实施例,浏览器应用20可以包括由位于华盛顿州雷德蒙市的微软公司开发的INTERNET EXPLORER web浏览器。然而应当理解,也可以使用来自其他制造商的其他浏览器应用,而不背离此处描述的实施例的精神和范围。客户机应用30可用于创建电子文档(诸如电子文档74)并将它们本地地存储于客户机计算设备2上以及/或者远程地存储于服务器70上。应当理解,客户机应用30可以包括、但不限制多种不同类型的生产力应用软件,生产力应用软件包括字处理软件、演示图形软件、电子表格软件、绘图软件、项目管理软件、排版软件、个人信息管理软件以及笔记软件。按照一实施例,客户机应用30可以包括以下软件应用的一个或多个:来自华盛顿州雷德蒙市的微软公司的WORD字处理软件和ONENOTE笔记软件。应当理解,上述软件应用可以包括个别的应用程序,或者替代地,可以被结合到应用套件中,应用套件诸如来自微软公司的OFFICE应用程序套件。电子文档74可以包括包含丰富内容(即,文本和非文本内容的组合)的网页。应当理解,按照一实施例,服务器70可以包括文件托管服务,该文件托管服务允许用户将文件上载和同步至网络(例如,“云”)存储,然后从web浏览器或本地客户机计算设备访问所述文件。说明性的文件托管服务是由华盛顿州雷德蒙市的微软公司开发的SKYDRIVE文件托管服务。然而,应当理解,也可以使用其他文件托管服务,而不背离此处描述的实施例的精神和范围。按照一实施例且如以下将进一步详述,基于web的应用72可以提供在客户机计算设备2上的浏览器应用20中的文本框内、对电子文档74中的丰富内容进行有状态编辑。基于web的应用72可以包括数据结构80,数据结构80可用于跟踪上述文本框中的文本的哪些部分对应于“文本串(text run)”(即,全部共享相同属性的一组连续字符)。按照一实施例,基于web的应用72可以包括生产力应用软件的基于web的版本,包括但不限于:诸如来自华盛顿州雷德蒙市的微软公司的WORD和ONENOTE web应用(即,Web Apps.)这样的字处理软件和笔记软件。应当理解,上述软件应用可以包括个别的应用程序,或者替代地,可以被结合到应用套件中,应用套件诸如来自微软公司的OFFICE WEB APPS生产力套件。按照其他实施例,基于web的应用72可以包括博客应用、社交网络服务等等。然而应当理解,此处描述的实施例也可以结合其他应用程序来实现,而且不限于任何特定的应用或应用套件。
图2示出按照一实施例的应用用户界面200以及用于编辑电子文档中的丰富内容的文本框的计算机屏幕显示。应用用户界面200可由基于web的应用72生成,以用于在浏览器应用20中查看和编辑电子文档74。应用用户界面200包括由文本内容205和非文本内容210组成的丰富内容。文本内容205包括“文本串”220、230和240。如以上参照图1简要讨论的,“文本串”是全部共享相同属性的一组连续字符。由此,包括字符“One”的文本串220表示一文本串,因为全部字符都共享不同于文本串230(其中全部字符以粗体格式被显示)和文本串240(其中全部字符以无格式被显示)的格式属性(即,斜体格式)。应当理解,按照各个实施例,文本内容205可以包括文本字符(包字形和表情)。例如文本字符可以包括与一个或多个语言相对应的字形,所述语言使用几个符号来表示单个文本字符,诸如在中文和日文中所使用的。图2还示出文本框260,文本框260可用于将文本内容270(即,字符“nty”)输入至应用用户界面200中显示的丰富内容的文本串230中。具体而言,当从文本框260中的插入点250开始输入文本时,用接收到的输入来更新文本内容205。应当理解,被输入文本框260的任何文本内容可以表示以下各项中的一个或多个:对构成文本内容205的文本串220、230和240中的一个或多个中的现有文本的添加、移除或替换。按照一实施例,文本框260可以从视图中隐藏,使得它对于基于web的应用72的用户不可见。由此,当用户在应用用户界面200中对文本内容205作出编辑时,输入最初在隐藏的文本框260中被接收作为未格式化的文本、然后在应用适当格式情况下被插入丰富内容的文本内容205部分,如由基于web的应用72确定的。以下将参照图3进一步详述由基于web的应用72所作的上述确定的细节。
图3是示出按照一实施例的使用文本框对电子文档中的丰富内容进行有状态编辑的例程300的流程图。当阅读对在此呈现的例程的讨论时,应当理解,本发明的各种实施例的逻辑操作被实现为(1)计算设备或系统上运行的一系列计算机实现的动作或程序模块,和/或(2)计算设备或系统内的互连机器逻辑电路或电路模块。这种实现是取决于实现本发明的计算设备或系统的性能需求的选择问题。因此,图3中所例示的并且构成在此所描述的各实施例的逻辑操作被不同地称为操作、结构性设备、动作或模块。本领域技术人员将认识到,这些操作、结构设备、动作和模块可用软件、固件、专用数字逻辑、及其任意组合实现,而不背离如本文中阐述的权利要求内陈述的本发明精神和范围。
例程300开始于操作305,其中在服务器70上执行的基于web的应用72从计算设备2的用户接收用于编辑电子文档中的丰富内容的文本框输入。按照一实施例,文本框可以从视图中对用户隐藏,文本框输入可以包括用于更新电子文档中的丰富内容的未经格式化的文本(例如,未经格式化的多个文本字符或字形)。
例程300从操作305继续至操作310,其中在服务器70上执行的基于web的应用72可以在接收输入(以上参照操作300所讨论的)的同时跟踪文本框中的插入点位置。具体而言,基于web的应用72可以使用数据结构80来跟踪用于编辑丰富内容中的文本的插入点的位置。应当理解,对插入点的跟踪(也可以称为选择跟踪)可用于通知基于web的应用72下一个字符可能出现在电子文档中显示的丰富内容内的文本内容(例如,段落)中的何处。
例程300从操作310继续至操作315,其中在服务器70上执行的基于web的应用72可以维持电子文档中的丰富内容属性的记录。具体而言,基于web的应用72可以使用数据结构80来对电子文档中显示的丰富内容内的文本内容(例如,段落)的属性(例如,格式)执行记录保持功能。例如,数据结构80可用于跟踪包括文本框中接收到的输入的文本(以上参照操作300所讨论的)的哪些部分对应于包含正被编辑的丰富内容的总电子文档的各部分。作为具体的非限制性示例,用户正在编辑的电子文档中的段落可以包含在未经格式化的文本中间的具有粗体格式的单词。当用户开始在粗体单词中或周围键入文本时,数据结构80可以(使用上述选择跟踪和记录保持功能)被配置成跟踪正在输入的新字符是否是该粗体单词的一部分或者是否是段落中未经格式化的文本的一部分。作为另一非限制性示例,用户可能希望在电子文档中编辑的文本内容也可以包括文本内的图像。由于用于接收用户输入的文本框仅限于接收已编辑文本(而非图像),在此情况下,数据结构80可以(使用上述选择跟踪和记录保持功能)被配置成跟踪文本内容中与该图像相对应的位置。由此,当用户在所跟踪的位置中或周围开始键入时,数据结构80能够维持关于用户正在添加的任何新文本字符是否将在文本内容中的图像之前或之后被插入的知识。
例程300从操作315继续至操作320,其中在服务器70上执行的基于web的应用72可以基于在操作305接收到的文本框输入来确定要对电子文档中的丰富内容应用的更新。具体而言,基于web的应用72可以包括且被配置成实现“文本区分”算法以确定文本框输入和现有文本内容之间的差异。例如,文本区分算法可以包括:将文本框中接收到的文本输入与电子文档中的文本内容相比较、以及基于该比较来标识对电子文档中文本的添加、移除或替换。应当理解,按照一实施例,可以使用文本区分算法来解决与丰富文本内的文本的重复出现有关的歧义,该歧义可以例如在用户删除与插入点相邻的重复文本的实例时(例如,用户删除文本串“aaa”中字母“a”的第三次出现)发生。在此情况下,该区分算法可以通过将文本串中的字符之一选为被删除文本来确定字母“a”的哪个实例被删除。
例程300从操作320继续至操作325,其中在服务器70上执行的基于web的应用72可以将操作320处确定的更新应用于电子文档中的丰富内容。具体而言,基于web的应用72可以被配置成标识丰富内容中的全部文本串。如以上参照图2所讨论的,电子文档中的每个文本串具有一个不同的属性(例如,格式等)。然后,基于web的应用72可以为接收到的文本框输入标识丰富文本内的插入点,基于插入点来标识丰富内容中用于接收文本框输入的相应的文本串,并且将文本框输入插入至相应的文本串中。例如,如以上讨论的,基于web的应用72可以使用数据结构80来跟踪用于在文本框中接收到的对丰富内容中的文本串的文本编辑的插入点位置。由此,如果插入点位置与具有粗体格式的文本串相邻,基于web的应用72可以在进行粗体格式化的情况下将从文本框接收到的文本编辑插入丰富内容。自操作325之后,例程300结束。
图4是示出可用来实施本发明的各实施例的计算设备400的示例物理组件的框图。下面描述的计算设备组件可适用于以上参考图1-3引用的计算设备。在基本配置中,计算设备400可包括至少一个硬件处理单元402和系统存储器404。取决于计算设备的配置和类型,系统存储器404可以包括,但不限于,易失性存储器(例如,随机存取存储器(RAM))、非易失性存储器(例如,只读存储器(ROM))、闪存或任何组合。系统存储器404可包括操作系统405和应用407。操作系统405例如可适用于控制计算设备400的操作,并且根据一实施例操作系统405可包括来自华盛顿州雷蒙德市的微软公司的WINDOWS操作系统。例如,应用407可包括多种不同类型的生产力应用软件,包括但不限于文字处理软件、演示图形软件、电子表格软件、绘图软件、项目管理软件、发布软件、个人信息管理软件和笔记软件。根据一实施例,应用407可包括以下软件应用中的一个或多个:来自华盛顿州雷蒙德市的微软公司的WORD文字处理软件、POWERPOINT演示图形软件、EXCEL电子表格软件、VISIO绘图软件、PROJECT项目管理软件、PUBLISHER发布软件、OUTLOOK个人信息管理软件和ONENOTE笔记软件。应当理解,上述软件应用可以包括单个的应用程序,或者替代地可以被合并到应用套装中,诸如来自微软公司的OFFICE应用程序套装。然而,应当理解,在此描述的各实施例也可结合其它操作系统和应用程序来实现,并进一步不被限定为任何特定的应用或系统。
计算设备400可具有附加特征或功能。例如,计算设备400还可包括附加硬件数据存储设备(可移动和/或不可移动),例如磁盘、光盘、固态存储设备(SSD)、闪存或磁带。这些附加存储在图4中由可移动存储409和不可移动存储410示出。
一般而言,符合各实施例,可提供程序模块,程序模块包括可执行特定任务或可实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,各实施例可用其他计算机系统配置来实践,包括手持式设备、多处理器系统、基于微处理器的系统或可编程消费电子产品、小型机、大型计算机等。各实施例也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备两者中。
此外,各实施例可在包括分立电子元件的电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路、或在包含电子元件或微处理器的单个芯片上实践。例如,可以通过片上系统(“SOC”)来实践各实施例,其中,可以将图4中示出的每个或许多组件集成到单个集成电路上。这样的SOC设备可包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元以及各种应用功能,所有这些都被集成到(或“烧录到”)芯片基板上作为单个集成电路。当通过SOC操作时,在此所述的功能可以通过在单个集成电路(芯片)上集成有计算设备/系统400的其它组件的应用专用逻辑来操作。各实施例还可使用能够执行诸如例如,AND(与)、OR(或)和NOT(非)的逻辑运算的其他技术来实践,包括但不限于,机械、光学、流体和量子技术。另外,各实施例可在通用计算机或任何其他电路或系统中实践。
例如,各实施例可被实现为计算机过程(方法)、计算系统、或诸如计算机程序产品或计算机可读介质之类的制品。计算机程序产品可以是计算机系统可读并编码了用于执行计算机过程的指令的计算机程序的计算机存储介质。
本文所使用的术语计算机可读介质可包括计算机存储介质。计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器404、可移动存储409和不可移动存储410都是计算机存储介质示例(即,存储器存储)。计算机存储介质可以包括,但不限于,RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或可用于存储信息且可以由计算设备400访问的任何其它介质。任何这样的计算机存储介质都可以是计算设备400的一部分。计算设备400还可具有输入设备412,诸如键盘、鼠标、笔、用于接收语音输入的声音输入设备(例如,话筒)、用于接收手势的触摸输入设备等。还可包括输出设备414,诸如显示器、扬声器、打印机等。上述设备是示例且可以使用其他设备。
本文所使用的术语计算机可读介质还可包括通信介质。通信媒介可由诸如载波或其他传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块、或其他数据来体现,并且包括任何信息传递介质。术语“已调制数据信号”可以描述以对该信号中的信息进行编码的方式设定或者改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接等有线介质,以及诸如声学、射频(RF)、红外线和其他无线介质等无线介质。
图5A和5B示出了可用来实施各实施例的合适的移动计算环境,例如移动计算设备550,其可包括但不限于智能电话、平板个人计算机、膝上型计算机等。参考图5A,示出了用于实现各实施例的示例移动计算设备550。在一基本配置中,移动计算设备550是具有输入元件和输出元件两者的手持式计算机。输入元件可包括允许用户将信息输入到移动计算设备550中的触摸屏显示器590和输入按钮510。移动计算设备550还可结合允许进一步的用户输入的可选的侧面输入元件520。可选的侧面输入元件520可以是旋转开关、按钮、或任何其他类型的手动输入元件。在替代实施例中,移动计算设备550可结合更多或更少的输入元件。例如,在某些实施例中,显示器590可以不是触摸屏。在又一替代实施例中,移动计算设备是便携式电话系统,如具有显示器590和输入按钮510的蜂窝电话。移动计算设备550还可包括可选的键区594。可选的键区594可以是物理键区或者在触摸屏显示器上生成的“软”键区。
移动计算设备550结合输出元件,如可显示图形用户界面(GUI)的显示器590。其他输出元件包括扬声器530和LED 580光。另外,移动计算设备550可包含振动模块(未示出),该振动模块使得移动计算设备550振动以将事件通知给用户。在又一实施例中,移动计算设备550可结合耳机插孔(未示出),用于提供另一手段来提供输出信号。
尽管此处组合移动计算设备550来描述,但在替代实施例中,还可组合任何数量的计算机系统来被使用,如在台式环境中、膝上型或笔记本计算机系统、多处理器系统、基于微处理器或可编程消费电子产品、网络PC、小型计算机、大型计算机等。各实施例也可在分布式计算环境中实践,其中任务由分布式计算环境中通过通信网络链接的远程处理设备来执行,程序可位于本机和远程存储器存储设备中。总而言之,具有多个环境传感器、向用户提供通知的多个输出元件和多个通知事件类型的任何计算机系统可结合在此描述的各实施例。
图5B是示出在一个实施例中使用的移动计算设备(诸如图5A所示的移动计算设备550)的组件的框图。即,移动计算设备550可结合系统502以实现某些实施例。例如,系统502可被用于实现“智能电话”或平板计算机,该智能电话或平板计算机能运行与桌面或笔记本计算机的应用类似的一个或多个应用。在某些实施例中,系统502被集成为计算设备,诸如集成的个人数字助理(PDA)和无线电话。
应用567可被加载到存储器562中并在操作系统564上或与操作系统564相关联地运行。系统502还包括存储器562内的非易失性存储568。非易失性存储568可被用于存储在系统502断电时不会丢失的持久信息。应用567可使用信息并将其存储在非易失性存储568中。同步应用(未示出)也驻留于系统502上且被编程为与驻留在主机计算机上的对应的同步应用交互,以保持非易失性存储568中存储的信息与主机计算机处存储的相应信息同步。应当理解,其它应用也可被加载到存储器562中并在移动计算设备550上运行。
系统502具有可被实现为一个或多个电池的电源570。电源570还可包括外部功率源,如补充电池或对电池充电的AC适配器或加电对接托架。
系统502还可包括执行发射和接收无线电频率通信的功能的无线电572(即,无线电接口层)。无线电572通过通信运营商或服务供应商方便了系统502与“外部世界”之间的无线连接。去往和来自无线电572的传输是在操作系统564的控制下进行的。换言之,通过无线电572接收的通信可通过操作系统564传播到应用567,反之亦然。
无线电572允许系统502例如通过网络与其他计算设备通信。无线电572是通信介质的一个示例。系统502的实施例被示为具有以下两种类型的通知输出设备:可用于提供视觉通知的LED 580和可用于与扬声器530一起提供音频通知的音频接口574。这些设备可直接耦合到电源570,使得当被激活时,即使为了节省电池功率而可能关闭处理器560和其它组件,它们也保留一段由通知机制指示的保持通电时间。LED 580可被编程为无限地保持通电,直到用户采取动作指示该设备的通电状态。音频接口574用于向用户提供听觉信号并从用户接收听觉信号。例如,除了被耦合到扬声器530之外,音频接口574还可被耦合到话筒(未示出)来接收可听输入,以便方便电话通话。根据各实施例,话筒也可充当音频传感器来便于对通知的控制。系统502可进一步包括允许板载相机540的操作来记录静止图像、视频流等的视频接口576。
实现系统502的移动计算设备可具有附加特征或功能。例如,设备还可包括附加数据存储设备(可移动的/或不可移动的),诸如磁盘、光盘或磁带。此类附加存储在图5B中由存储568示出。
移动计算设备550生成或捕捉的且经系统502存储的数据/信息可如上所述本地存储在移动计算设备550上,或数据可被存储在可由设备通过无线电572或通过移动计算设备550和与移动计算设备550相关联的一分开的计算设备之间的有线连接访问的任何数量的存储介质上,该计算设备如例如因特网之类的分布式计算网络中的服务器计算机。如应理解的,此类数据/信息可经移动计算设备550、经无线电572或经分布式计算网络来被访问。类似地,这些数据/信息可根据已知的数据/信息传送和存储手段来容易地在计算设备之间传送以供存储和使用,这些手段包括电子邮件和协作数据/信息共享系统。
图6是可在其中实现各实施例的分布式计算系统的简单框图。分布式计算系统可包括多个客户机设备,诸如计算设备603、平板计算设备605和移动计算设备610。客户机设备603、605和610可与分布式计算网络615(例如,因特网)进行通信。服务器620是通过网络615与客户机设备603、605和610进行通信的。服务器620可存储应用600,应用600可执行包括例如以上描述的例程300中的操作中的一个或多个的例程。
以上参考方法、系统和计算机程序产品的框图和/或操作说明描述了各实施例。框中所注明的各功能/动作可按不同于任何框图所示的次序出现。例如,取决于所涉及的功能/动作,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以按相反的次序来执行。
尽管已描述了特定实施例,但也可能存在其他实施例。此外,虽然各实施例被描述为与存储在存储器和其他存储介质中的数据相关联,但是数据还可被存储在其他类型的计算机可读介质上或从其读取,诸如辅助存储设备(像硬盘、软盘、或CD-ROM)、来自因特网的载波、或其他形式的RAM或ROM。此外,所公开的例程的各操作可以任何方式修改,包括通过对各操作重新排序和/或插入或删除操作,而不背离本文描述的实施例。
对本领域的技术人员而言,显然可作出各个修改或变化,而不背离本文描述的实施例的范围或精神。在考虑说明书和实现本文描述的实施例之后,其他实施例对本领域的技术人员而言将是显而易见的。
Claims (11)
1.一种用于使用文本框来对电子文档中的丰富内容进行有状态编辑的计算机实现的方法,包括:
由计算机接收用于更新所述丰富内容中的文本内容的对所述文本框中的内容的多个输入,所述丰富内容包括在所述电子文档中显示的所述文本内容和非文本内容,其中,所述电子文档是网页;
通过跟踪接收到所述多个输入的所述文本框中的内容的各部分,由所述计算机基于所述文本框中的所述多个输入来确定要应用于所述丰富内容的更新;以及
响应于确定要应用于所述丰富内容的所述更新,由所述计算机对所述网页的所述丰富内容应用所述更新,
其中,对所述网页的所述丰富内容应用所述更新包括每次在所述文本框中检测到用户的键击时,发现新字符并将所述新字符插入所述网页中,以及
其中,所述内容的状态和所述多个输入被维持在所述文本框中。
2.如权利要求1所述的方法,其特征在于,还包括:
在接收所述多个输入的同时跟踪插入点位置;以及
维持所述电子文档中的丰富内容的属性的记录。
3.如权利要求2所述的方法,其特征在于,由所述计算机确定要被应用于所述丰富内容的更新包括:
将在所述文本框中接收到的所述多个输入与所述电子文档中的文本内容相比较;以及
基于所述比较来标识对所述电子文档中的文本的添加、移除或替换。
4.如权利要求3所述的方法,其特征在于,由所述计算机对所述丰富内容应用所述更新包括:
标识所述丰富内容中的多个文本串,所述多个文本串中的每一个具有不同的属性;
为在所述文本框中接收到的所述多个输入中的一个或多个输入标识所述丰富内容中的插入点;
基于所述插入点来标识所述丰富内容中的所述多个文本串中的用于接收所述文本框中的所述多个输入中的所述一个或多个输入的一个文本串;以及
将来自所述文本框的所述多个输入中的所述一个或多个输入插入至所述多个文本串中的所标识的一个文本串中。
5.如权利要求4所述的方法,其特征在于,标识所述丰富内容中的各自具有不同属性的所述多个文本串包括标识具有不同格式的多个文本串。
6.如权利要求1所述的方法,其特征在于,由计算机在所述文本框中接收用于更新所述丰富内容的多个输入包括:在文本框中接收多个输入。
7.如权利要求1所述的方法,由计算机在所述文本框中接收多个输入包括接收未经格式化的文本。
8.如权利要求7所述的方法,其特征在于,接收未经格式化的文本包括接收一个或多个字形。
9.一种用于使用文本框来对电子文档中的丰富内容进行有状态编辑的计算机设备,包括:
用于存储可执行程序代码的存储器;以及
在功能上耦合至所述存储器的处理器,所述处理器响应于程序代码中所包含的计算机可执行指令并且能用于:
接收用于更新所述丰富内容中的文本内容的对所述文本框中的内容的多个输入,所述丰富内容包括在所述电子文档中显示的所述文本内容和非文本内容,
其中,所述电子文档是网页;
通过跟踪接收到所述多个输入的所述文本框中的内容的各部分,基于所述文本框中的所述多个输入来确定要应用于所述丰富内容的更新;以及
响应于更新确定,对所述网页中的所述丰富内容应用所述更新,
其中,所述内容的状态和所述多个输入被维持在所述文本框中。
10.一种用于使用文本框来对网页中的丰富内容进行有状态编辑的方法,所述方法包括:
由计算机接收用于更新所述丰富内容中的文本内容的对所述文本框中的内容进行添加的多个字符,所述丰富内容包括在所述网页中显示的所述文本内容和非文本内容;
经由数据结构在接收所述多个字符的同时跟踪插入点位置;
经由所述数据结构,跟踪接收到所述多个字符的所述文本框中的内容的各部分;
维持所述网页中的丰富内容的格式属性的记录;
基于所述文本框中的所述多个字符、所述数据结构和所述格式属性的记录,来确定要应用于所述丰富内容的更新;以及
响应于更新确定,对所述丰富内容应用所述更新,
其中,所述内容的状态和所述多个字符被维持在所述文本框中。
11.一种用于使用文本框来对网页中的丰富内容进行有状态编辑的系统,所述系统包括:
用于由计算机接收用于更新所述丰富内容中的文本内容的对所述文本框中的内容进行添加的多个字符的装置,所述丰富内容包括在所述网页中显示的所述文本内容和非文本内容;
用于经由数据结构在接收所述多个字符的同时跟踪插入点位置的装置;
用于经由所述数据结构,跟踪接收到所述多个字符的所述文本框中的内容的各部分的装置;
用于维持所述网页中的丰富内容的格式属性的记录的装置;
用于基于所述文本框中的所述多个字符、所述数据结构和所述格式属性的记录,来确定要应用于所述丰富内容的更新的装置;以及
用于响应于更新确定对所述丰富内容应用所述更新的装置,
其中,所述内容的状态和所述多个字符被维持在所述文本框中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/588,591 US10565301B2 (en) | 2012-08-17 | 2012-08-17 | Stateful editing of rich content using a basic text box |
US13/588,591 | 2012-08-17 | ||
PCT/US2013/054597 WO2014028413A2 (en) | 2012-08-17 | 2013-08-13 | Stateful editing of rich content using a basic text box |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104813312A CN104813312A (zh) | 2015-07-29 |
CN104813312B true CN104813312B (zh) | 2018-06-22 |
Family
ID=49083754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380043538.4A Active CN104813312B (zh) | 2012-08-17 | 2013-08-13 | 使用基本文本框来对丰富内容进行有状态编辑 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10565301B2 (zh) |
EP (1) | EP2885723A2 (zh) |
CN (1) | CN104813312B (zh) |
WO (1) | WO2014028413A2 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090235161A1 (en) * | 2008-03-15 | 2009-09-17 | Microsoft Corporation | Lossless Web-Based Editor For Complex Documents |
US20130346849A1 (en) * | 2012-06-06 | 2013-12-26 | Minds + Machines | Automatic uploading and synchronization of media assets |
US9407596B2 (en) | 2013-11-20 | 2016-08-02 | International Business Machines Corporation | Interactive splitting of entries in social collaboration environments |
CN107748737A (zh) * | 2017-11-17 | 2018-03-02 | 深圳市泉眼网络科技有限公司 | 一种文字编辑方法及装置 |
CN109492137A (zh) * | 2018-09-28 | 2019-03-19 | 中国平安人寿保险股份有限公司 | 前端数值更新方法、装置及计算机可读存储介质、终端 |
US10891489B2 (en) * | 2019-04-08 | 2021-01-12 | Nedelco, Incorporated | Identifying and tracking words in a video recording of captioning session |
CN112035848A (zh) * | 2019-06-04 | 2020-12-04 | 珠海金山办公软件有限公司 | 图形文本内容的保护方法、装置、电子设备及存储介质 |
US11157089B2 (en) * | 2019-12-27 | 2021-10-26 | Hypori Llc | Character editing on a physical device via interaction with a virtual device user interface |
CN112784542B (zh) * | 2020-05-20 | 2023-11-28 | 珠海金山办公软件有限公司 | 一种文档编辑方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6558431B1 (en) * | 1998-09-11 | 2003-05-06 | Macromedia, Inc. | Storing valid and invalid markup language in strict and relaxed tables respectively |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5579466A (en) * | 1994-09-01 | 1996-11-26 | Microsoft Corporation | Method and system for editing and formatting data in a dialog window |
US6044387A (en) | 1997-09-10 | 2000-03-28 | Microsoft Corporation | Single command editing of multiple files |
US20020069204A1 (en) * | 2000-09-28 | 2002-06-06 | Roger Kahn | System and method for in-context editing |
US7191405B1 (en) * | 2000-11-22 | 2007-03-13 | Adobe Systems Incorporated | System and method for editing information |
TW576984B (en) | 2002-07-19 | 2004-02-21 | Jen-Hwang Weng | On-line web page editing system and method |
US20040225672A1 (en) | 2003-05-05 | 2004-11-11 | Landers Kevin D. | Method for editing a web site |
US20070067714A1 (en) | 2005-09-16 | 2007-03-22 | Shui-Shun Lin | Modularized web page editing system and method thereof |
JP2007094853A (ja) | 2005-09-29 | 2007-04-12 | Seiko Epson Corp | 編集装置、携帯電話、編集方法および編集プログラム |
US20070239760A1 (en) | 2006-04-09 | 2007-10-11 | Daniel Simon | System for providing an interactive intelligent internet based knowledgebase |
US8694904B2 (en) * | 2008-04-15 | 2014-04-08 | Microsoft Corporation | Cross-browser rich text editing via a hybrid client-side model |
US8645105B1 (en) * | 2008-11-14 | 2014-02-04 | Adobe Systems Incorporated | Methods and systems for round-trip editing of component artwork |
US8869051B2 (en) * | 2009-10-02 | 2014-10-21 | Adobe Systems Incorporated | Systems and methods for using separate editing applications from within electronic content creation applications while preventing data loss |
US8566704B1 (en) * | 2010-10-25 | 2013-10-22 | Open Text S.A. | System, method and computer program product for editing web pages in-context of a production view |
-
2012
- 2012-08-17 US US13/588,591 patent/US10565301B2/en active Active
-
2013
- 2013-08-13 WO PCT/US2013/054597 patent/WO2014028413A2/en active Application Filing
- 2013-08-13 EP EP13753939.1A patent/EP2885723A2/en not_active Ceased
- 2013-08-13 CN CN201380043538.4A patent/CN104813312B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6558431B1 (en) * | 1998-09-11 | 2003-05-06 | Macromedia, Inc. | Storing valid and invalid markup language in strict and relaxed tables respectively |
Also Published As
Publication number | Publication date |
---|---|
US10565301B2 (en) | 2020-02-18 |
WO2014028413A3 (en) | 2014-04-10 |
EP2885723A2 (en) | 2015-06-24 |
US20140053068A1 (en) | 2014-02-20 |
CN104813312A (zh) | 2015-07-29 |
WO2014028413A2 (en) | 2014-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104813312B (zh) | 使用基本文本框来对丰富内容进行有状态编辑 | |
US10528653B2 (en) | Collaborative communication in a web application | |
US11455069B2 (en) | Auto-complete with persisted atomically linked entities | |
CN103412703B (zh) | 利用功能区来访问应用用户界面 | |
US10198420B2 (en) | Telling interactive, self-directed stories with spreadsheets | |
AU2014275272B2 (en) | Automated system for organizing presentation slides | |
US9588953B2 (en) | Drag and drop always sum formulas | |
CN105051730A (zh) | 使用多个编辑器或特征的各版本的协作 | |
US20130055131A1 (en) | Animation for Cut and Paste of Content | |
CN105917326A (zh) | 从电子文档中的文本数据创建信息图 | |
CN106462933A (zh) | 使用内容结构来社交地连接用户 | |
CN103257997A (zh) | 为视频及其他媒体内容启用复制和粘贴功能 | |
CN106030572A (zh) | 与外部内容项的经编码的关联 | |
US20200394152A1 (en) | Digital design application plugin for content updates and delivery |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20171023 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |