CN101952821B - 使用暂时编辑表面来编辑文档 - Google Patents

使用暂时编辑表面来编辑文档 Download PDF

Info

Publication number
CN101952821B
CN101952821B CN2009801066446A CN200980106644A CN101952821B CN 101952821 B CN101952821 B CN 101952821B CN 2009801066446 A CN2009801066446 A CN 2009801066446A CN 200980106644 A CN200980106644 A CN 200980106644A CN 101952821 B CN101952821 B CN 101952821B
Authority
CN
China
Prior art keywords
editor
document
window
input
web
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
CN2009801066446A
Other languages
English (en)
Other versions
CN101952821A (zh
Inventor
E·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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=40999566&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN101952821(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN101952821A publication Critical patent/CN101952821A/zh
Application granted granted Critical
Publication of CN101952821B publication Critical patent/CN101952821B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting

Abstract

本文描述了用于使用暂时编辑表面来编辑文档的技术。文字处理程序在窗口中显示文档。在检测到将插入指针置于该文档中的文本段落内时,在窗口中创建覆盖该段落并包含该底层段落的内容的编辑表面。在编辑表面处理对内容的编辑时,文字处理程序监视用户输入。在编辑完成时,将编辑表面的经修改的内容复制到文档中并销毁编辑表面。

Description

使用暂时编辑表面来编辑文档
背景
文字处理应用程序传统上是安装在个人计算机上的、向存储在本地或基于网络的文件中的文档提供丰富的编辑和格式化功能的独立软件程序。这些应用程序一般非常大,从而需要许多兆字节的驱动器空间来进行安装。然而,最近趋势是可能不能访问同一独立文字处理应用程序的远程的不同用户对文档进行的协作开发,并且其中这些文档可以存储在可以通过因特网访问的远程网络上。这造成开发了可以经由常规万维网(“Web”)浏览器传递的文字处理程序,从而允许远程文档由用户在不需要安装传统独立文字处理程序的情况下进行编辑。
提供基于web的文字处理功能的一种方法涉及开发利用许多web浏览器程序中可用的编辑特征的网页。这一方法有小和快的优点,并且需要的开发努力非常少。然而,这些web浏览器所提供的有限的编辑特征通常不能与传统的独立文字处理程序的特征丰富能力相比。此外,可用的编辑特征在不同的web浏览器程序之间可能不同,从而使得难以跨所有web浏览器来提供一致的用户体验。
提供基于web的文字处理功能的另一方法是使用诸如来自SUNMICROSYSTEMS公司的JAVA、来自ADOBE SYSTEMS公司的FLASH、或异步JavaScript与XML(“AJAX”)等跨浏览器运行时技术来实现在浏览器内执行的完整的文字处理程序。尽管允许开发者完全控制该程序的特征和能力,但该方法一般涉及相当大的开发努力并且需要实现低级编辑功能,如按照用户的键入将文本呈现在窗口中、将闪烁的光标移动通过文本、或用户键入的窗口的内容的恒定回流。另外,因为文字处理程序是以基于浏览器的运行时技术来执行的,所以在执行时它通常很慢并且可能不能提供充分响应的用户界面。
此处所做出的本发明正是对于这些和其他考虑事项而提出的。
概述
本文描述了用于实现供在web浏览器中执行的混合编辑模型文字处理器程序的技术。具体而言,文字处理程序是以跨浏览器运行时技术来实现的并且提供可与传统的独立文字处理程序的编辑特征相比的一组丰富的编辑特征。然而,该文字处理程序利用web浏览器提供的编辑特征中的一些来实现低级编辑功能。具体而言,文字处理程序使用web浏览器来提供接受用户对各单独的文本块或段落进行的改变的编辑表面。该编辑表面是暂时的,因为它只在向用户提供低级文本编辑特征所必需的时侯是活动的。
根据本文呈现的一个方面,可以使用暂时编辑表面来编辑web浏览器内的文档。就此,在web浏览器中执行的文字处理程序在浏览器窗口中显示文档。文字处理程序检测插入指针被置于该文档中的文本段落内,如通过用户用鼠标在文本内点击或通过使用键盘的导航键来导航到该段落。在检测到放置了插入指针时,文字处理程序创建覆盖该文档中的该段落的编辑表面。这可以通过向该文档添加与底层段落处于同一位置处并且相同大小的编辑表面元素,同时使底层段落不可见来实现。在一个方面,编辑表面元素可以是超文本标记语言(“HTML”)IFRAME元素。底层段落的内容被复制到编辑表面中。
文字处理程序随后监视用户在浏览器窗口中的输入,从而允许编辑表面直接处理某些输入,同时截取其他输入以供该文字处理程序来处理。根据一个方面,文字处理程序将来自键盘的字母、数字、以及标点键输入直接传递给编辑表面,同时截取鼠标点击或诸如下一页(page-down)或上一页(page-up)等导航键。编辑表面处理用户输入,从而允许用户对其中包含的内容进行改变。
文字处理程序在编辑表面处理用户输入时对它进行监视以确定是否需要该编辑表面的回流。例如,对编辑表面内的内容的改变可能必须改变编辑表面的大小或其在浏览器窗口中的位置。如果需要回流,则将编辑表面的经修改的内容复制回文档,并且迫使web浏览器在该页面上重新呈现该文档。随后确定底层段落的新位置和大小,并且重新定位编辑表面并调整其大小以与底层段落的新位置和大小相匹配。在编辑完成时,将编辑表面的经修改的内容复制回文档,销毁编辑表面,并且再次使底层段落可见。
应当理解,上述主题也可被实现为计算机控制的装置、计算机进程、计算系统或诸如计算机可读介质等制品。通过阅读下面的详细描述并审阅相关联的附图,这些及各种其他特征将变得显而易见。
提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在将本概述用来限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本发明的任一部分中提及的任何或所有缺点的实现。
附图简述
图1是示出由本文呈现的各实施例提供的说明性操作环境和若干软件组件的各方面的网络和软件体系结构图;
图2A-2C是示出根据本文描述的一个实施例的暂时编辑表面的操作的说明性屏幕截图的屏幕图;
图3-5是示出提供在本文描述的各实施例中的、提供暂时编辑表面的文字处理程序的操作的各方面的流程图;以及
图6是示出能够实现此处呈现的实施例的各方面的计算系统的说明性计算机硬件和软件体系结构的计算机体系结构图。
详细描述
以下详细描述针对用于在浏览器内提供文字处理功能的技术。通过使用本文呈现的技术和概念,可以在浏览器内实现文字处理程序,该文字处理程序提供与传统的独立文字处理程序的体验相类似的特征丰富的文字处理体验而不需要该程序实现管理对文本的编辑的低级细节。这是通过实现完整的自定义开发的文字处理程序与web浏览器的内容编辑特征之间的混合来实现的。该文字处理程序提供高级文字处理功能,同时使用web浏览器的编辑特征来执行低级文本编辑功能,如按照用户的键入在窗口中呈现文本,将闪烁光标移动通过文本,或在用户键入时恒定地回流窗口的内容。web浏览器的编辑特征被用来暂时地将编辑表面置于窗口中来代替正在编辑的文档的内容。可编辑表面是暂时的,因为它只在需要的时候保持可见和活动。一旦对内容的编辑完成,则销毁编辑表面并且将经修改的文档显示给用户。
尽管在结合计算机系统上的操作系统和应用程序的执行而执行的程序模块的一般上下文中呈现了此处描述的主题,但是本领域技术人员将认识到,其他实现可以结合其他类型的程序模块来执行。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,本领域技术人员将明白,可以利用其他计算机系统配置来实施此处描述的主题,这些计算机系统配置包括手持式设备、多处理器系统,基于微处理器的或可编程消费电子产品、小型计算机、大型计算机等等。
在下面的详细描述中,将参考构成本发明的一部分的附图,并且在附图中作为说明示出了各具体实施例或示例。现在参考附图,将描述用于使用暂时编辑表面来编辑文档的计算系统和方法的各方面,其中全部若干附图中相同的标号表示相同的元素。
现在转向图1,将提供关于由此处呈现的各实施例所提供的说明性操作环境和若干软件组件的细节。具体而言,图1示出用于使用暂时编辑表面来编辑文档的系统100的各方面。系统100包括计算机120,计算机120包括能够执行操作系统和一个或多个应用程序的标准台式或膝上型计算机系统。计算机120在操作上连接到显示器104、鼠标108、以及键盘110,以允许用户102与在计算机120上执行的系统和应用程序进行交互。计算机120通过诸如网络160等一个或多个局域网和广域网来互连到服务器计算机162。应该理解,可利用比图1中示出的多得多的网络连接。
计算机120可用于执行web浏览器122,web浏览器122在操作上经由网络160连接到服务器计算机162所执行的web服务器164。在一个实施例中,web浏览器122是能够显示HTML文档的应用程序,如来自微软公司的INTERNET EXPLORER、来自MOZILLA的FIREFOX、或来自APPLE公司的SAFARI,等等。然而,本领域技术人员可以明白,可以使用能够呈现标记语言并执行脚本逻辑的任何类型的应用程序来实现web浏览器122。web服务器164包括能够向web浏览器122提供文档的任何软件程序。web服务器162还连接到包含文档和文字处理程序140的数据存储168,这将在以下更详细地描述。根据一个实施例,这些文档可包括提供给web浏览器122的HTML文档128。在计算机120的用户102进行请求时,web浏览器122可用于从web服务器164检索HTML文档128并将其呈现在显示器104的窗口106中以呈现给用户102。
如以上简要讨论的,系统100还包括可用于允许计算机120的用户102在窗口106中对HTML文档128的内容进行编辑的文字处理程序140。根据一个实施例,文字处理程序140能够在web浏览器122所提供的运行时环境内执行。例如,可以使用AJAX开发技术来创建文字处理程序140。
在一个实施例中,从web服务器164中检索文字处理程序140连同要编辑的文档128。在替换实施例中,文字处理程序140可驻留在计算机120本地。文字处理程序140包括可用于向用户102提供文字处理功能的文字处理逻辑148。在一个实施例中,文字处理程序140维护在内部文档图像150中被编辑的文档的内容。在其他实施例中,文字处理程序140维护在HTML文档128中直接被编辑的文档的内容。HTML呈现器124呈现HTML文档128以供显示。
在一个实施例中,文字处理程序140包括监视来自用户输入处理器126的用户输入事件的事件处理逻辑146。如以下将参考图3详细描述的,事件处理逻辑146可用于检测用户102将插入指针置于HTML文档128(如在窗口106中显示的)中的某位置处。事件处理逻辑146还可用于监视对文档的内容的编辑期间的用户输入事件,如以下参考图4描述的。
文字处理程序140还包括在窗口106中创建用于接受对文档的内容的改变的编辑表面的编辑表面创建逻辑144,这在以下参考图3来详细描述。在一个实施例中,通过向HTML文档128添加用于创建编辑表面元素130的标记来创建编辑表面,编辑表面元素130在被web浏览器122呈现时在窗口106中显示编辑表面。另外,文字处理程序140包括回流逻辑142。如以下将参考图5详细描述的,在用户102改变编辑表面208中的内容时,回流逻辑142维护编辑表面208的大小和位置。
现在参考图2A-2C,示出了根据一个实施例的、由在web浏览器122中执行的文字处理程序140所生成的窗口106的说明性屏幕截图。如图2A所示,窗口106显示HTML文档128的主体正文中包含的文本段落202以及HTML文档128的表204中的文本块。希望编辑文本段落202的用户102可以使用鼠标108来在窗口106中将鼠标指针(在此示为文本插入指针即插入记号206)定位在文本段落202中的一位置处,并点击鼠标108上的按钮。文字处理程序140的事件处理逻辑146检测到鼠标点击,且插入指针206处于段落202内,并且使得编辑表面创建逻辑144在窗口106中创建覆盖文本段落202的编辑表面208A,如图2B所示。应当明白,本文描述的由鼠标执行的用户输入活动可以使用另一类型的输入设备来提交。
如以下将参考图3详细描述的,编辑表面创建逻辑144创建编辑表面208A,使得它在窗口106中表现得与文本段落202大小相同并处于同一位置。编辑表面创建逻辑144还将段落202的内容复制到编辑表面208A中,并使得段落202在窗口106中不可见。注意,尽管段落202在窗口106中不再可见,但它在窗口106内仍然占据同一物理空间,并且因而实际上处于编辑表面208A的底层。对应于用户102将插入指针206置于段落202内的位置,编辑表面创建逻辑144随后将光标210定位在编辑表面208A中。应当注意,在图2B的屏幕截图中示出的编辑表面208A的边界只是出于说明目的的。在窗口106中不为编辑表面208A创建实际边界。如各实施例中描述的创建编辑表面208A,将底层段落202的内容复制到编辑表面208A并使得底层段落在窗口中不可见的过程,对用户102而言是察觉不到的。用户102可察觉的对窗口106的唯一改变是在插入指针206的放置位置处创建光标210。
编辑表面208A在窗口106中维持活动以允许用户102对编辑表面208A的文本内容进行低级编辑。例如,在一个实施例中,编辑表面208A允许用户102向光标210的当前位置处的文本添加或从中删除字符。如果用户102向文字处理程序140请求更高级编辑功能,或在窗口106中导航到HTML文档128的不同部分,则用用户120在编辑表面208A中所进行的编辑来更新HTML文档128并销毁编辑表面208A,这在以下将参考图4来描述。例如,如果用户102将插入指针206置于显示在窗口106中的表204内的文本块中,则销毁编辑表面208A,并且用来自编辑表面208的任何编辑来更新处于编辑表面208A底层的文本段落202并使其再次在窗口106中可见,如图2C所示。如上所示,创建覆盖表204内的文本块的新编辑表面202B,并且在该新编辑表面208B内创建用于插入文本的光标210。
现在参考图3,将提供关于本文呈现的用于使用暂时编辑表面来编辑文档的各实施例的附加细节。具体而言,图3是示出在窗口106中创建暂时编辑表面208的操作的各方面的流程图。应理解,此处所述的逻辑操作被实现为(1)一系列计算机实现的动作或运行于计算系统上的程序模块,和/或(2)计算系统内的互连的机器逻辑电路或电路模块。取决于计算系统的性能及其他要求,可以选择不同的实现。因此,此处描述的逻辑操作被不同地称为状态操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可用软件、固件、专用数字逻辑以及它们的任何组合来实现。还应该明白,可以执行比附图中示出并在此处描述的操作更多或更少的操作。这些操作还可以按与此处所描述的不同的次序来执行。
例程300在操作302开始,在此事件处理逻辑146检测用户102将插入指针206置于窗口106内的某一位置。如上所述,在一个实施例中,用户102可以使用鼠标108或通过使用键盘110的导航键将当前光标210从HTML文档128的一个部分移动到留一个备份来将插入指针置于窗口106中的某一位置。在替换实施例中,用户102可以通过用手指或指示笔触摸显示器104来将插入指针206置于窗口106中的某一位置。
在检测到放置了插入指针206后,例程300移至操作304,在此编辑表面创建逻辑144确定HTML文档128中的、当前显示在窗口106内的插入指针206被放置的位置处的部分。在一个实施例中,HTML文档128可被分成该文档的主体正文或诸如表204的单元格等其他容器内所包含的各个文本段落202。在用户102通过使用鼠标108来放置插入指针206时,编辑表面创建逻辑144请求HTML文档128内的、与从web浏览器122中点击鼠标108的位置相对应的段落202的身份。如果用户102通过使用键盘110的导航键来放置插入指针206,则编辑表面创建逻辑144通过分析HTML文档128的内容来确定正确的段落。在替换实施例中,可能需要对该文档的其他划分。
从操作304,例程300继续至操作306,在此编辑表面创建逻辑144确定段落202内的、与窗口106内的其中放置插入指针206的位置最紧密地对应的字符位置。这一字符位置会被用来将光标210定位在编辑表面208中的、与段落内放置插入指针206的位置相对应的位置处。在一个实施例中,编辑表面创建逻辑144使用二分搜索算法来确定字符位置。例如,诸如SPAN元素等HTML元素被置于HTML文档128中、处于包含该段落的文本的标记的中间的字符位置处。从web浏览器122请求SPAN元素的位置在窗口106内的坐标,并将该坐标与插入指针206的放置坐标相比较以确定插入指针206在该文本中是被置于SPAN元素之前还是之后。再次重复该过程,分别将SPAN元素置于该标记的前一半或后一半的中间并以迭代的方式继续,直至确定了段落202中的、与插入指针206的位置相对应的字符位置。
从操作306,例程300继续至操作308,在此编辑表面创建逻辑144确定当被显示在窗口106中时段落202的当前位置和尺寸。在一个实施例中,一旦标识了段落202,就向web浏览器122请求这一信息。编辑表面创建逻辑144随后在窗口106中、在与段落202相同的位置处并以相同的尺寸来创建编辑表面208,如在操作310所示。在一个实施例中,编辑表面创建逻辑144通过向HTML文档128添加标记以用于创建编辑表面元素130诸如HTML IFRAME元素等来创建编辑表面208。通过将编辑表面元素130的contentEditable(内容可编辑)属性设为“true(真)”来将其变得可编辑。在替换实施例中,编辑表面元素130可以是其contentEditable属性被设为“true”的HTML DIV元素或HTML TEXTAREA元素。编辑表面创建逻辑144设定编辑表面元素130的大小和位置属性,以便web浏览器122在与段落202相同的位置并以相同的大小来在窗口106中呈现它。如本领域技术人员将明白的,如果插入指针206被置于新或空段落中使得该段落的当前大小是零,则编辑表面创建逻辑144创建具有足够高度和宽度以正确地显示光标210和用户102键入的前几个字符的编辑表面208。
从操作310,例程300移至操作312,在此编辑表面创建逻辑144将HTML文档128中的段落202的内容复制到编辑表面208中。这包括将HTML文档128中的段落202内包含的文本复制到编辑表面元素130以及将编辑表面元素130的属性设定成与应用于HTML文档128中的段落202的那些属性相同。在操作314,编辑表面创建逻辑144随后使段落202在窗口106中不可见。如上所述,这是以段落202在窗口106中不再对用户102可见而仍然占据窗口106内的同一物理空间的方式来实现的。例如,在一个实施例中,HTML文档128中的段落202的可见性属性被设定成“隐藏”。
例程300随后移至操作316,编辑表面创建逻辑144将光标210定位在编辑表面208中、与其中放置插入指针206的字符位置(在操作306计算)相对应的字符位置处。在一个实施例中,这是通过将当前选择设定成该字符位置处的空文本范围来实现的。接着,例程300前进至操作318,在此编辑表面创建逻辑144向编辑表面208注册事件处理逻辑146的事件处理程序。如以下将参考图4更详细地描述的,这允许事件处理逻辑146处理来自编辑表面208的鼠标、键盘、以及其他浏览器事件,如滚动。在操作320,将窗口106中的当前焦点设定到编辑表面208。
图4是示出当编辑表面208在窗口106中活动时,处理编辑表面208或web浏览器122所生成的事件的操作的各方面的流程图。例程400在操作402开始,在此事件处理逻辑146检测编辑表面208已生成了事件,该事件主要是作为如通过点击鼠标108或在键盘110上键入等用户输入的结果。在检测到用户输入事件后,在操作404,事件处理逻辑146确定编辑表面元素130是否将在本地处理该用户输入。
在一个实施例中,如果用户输入表示在键盘110键入的字符,则事件处理逻辑146将键入的字符与要由编辑表面元素130处理的字符列表相比较。例如,如果键入的字符是字母、数字、或标点字符,则事件处理逻辑146确定它将由编辑表面元素130来处理。然而,如果键入字符可造成对文本的格式改变,如CTRL-B,则它将不被转发到编辑表面元素130来进行处理。在替换实施例中,事件处理逻辑146可以允许编辑表面元素130处理附加键盘输入,如光标导航键或复制和粘贴快捷键。
如果事件处理逻辑146确定编辑表面元素130将在本地处理该用户输入,则例程400前进至操作141,在此将用户输入传递到编辑表面元素130以供处理。在编辑表面元素130处理了该用户输入后,例程400前进至操作416,在此执行回流逻辑142。这将在以下参考图5来详细描述。在一个实施例中,事件处理逻辑146在将用户输入传递给编辑表面元素130之前将web浏览器122中的计时器设定成超时值为零。以此方式,在编辑表面元素130处理了该用户输入后可立即生成对应的计时器事件,从而允许事件处理逻辑146执行回流操作。
如果事件处理逻辑146确定编辑表面元素130将不在本地处理用户输入,则例程400移至操作406,在此事件处理逻辑146将文本(包括用户102进行的任何改变)从编辑表面208复制回HTML文档128的底层段落202。事件处理逻辑146随后通过从HTML文档128中移除编辑表面元素130来销毁编辑表面208,如操作408所示。在操作410,使底层段落202可见,从而反转在操作314中进行的改变。在一个实施例中,这通过将段落202的可见性属性设定成“可见”来实现。在操作412,事件处理逻辑146随后将用户输入传递到文字处理逻辑148以供进一步处理。
图5是示出当HTML文档128内的编辑表面208在窗口106中活动时执行该编辑表面的回流的操作的各方面的流程图。在本文描述的各实施例中,添加到HTML文档的用于创建编辑表面元素130的HTML标记可以不造成在用户102编辑其中包含的内容时其大小将在窗口106中正确地增长或缩小的编辑表面208。例如,HTML IFRAME元素在编辑其内容期间其本身将不会正确地调整大小。这可造成编辑表面208中的内容溢出其边界,从而造成当显示在窗口106中时编辑表面208在其边界内向上或向下滚动其内容。为防止这一点发生,在用户102编辑内容时,回流逻辑142动态地维护编辑表面208在窗口106中的大小和位置。另外,回流逻辑142确保底层不可见段落202的大小和位置保持与活动的编辑表面208相同的大小,以确保HTML文档128的其余部分正确地在编辑表面208的周围流动。在此,该过程被称为“回流”。
例程500在操作502开始,在此回流逻辑142确定编辑表面208的回流是否是必需的。在一个实施例中,当编辑表面元素130在本地处理了每一用户输入事件之后,回流逻辑142可以执行回流操作。例如,当用户102在键盘110上键入了每一字符后,可以回流编辑表面208。在另一实施例中,回流逻辑142可以通过事件处理逻辑146监视web浏览器事件以确定回流操作是否是必需的。例如,回流逻辑142可以只响应于编辑表面208所生成的滚动事件,即指示溢出条件已经发生,来执行编辑表面208的回流操作。在又一实施例中,回流逻辑142可以对编辑表面208的内容执行文本度量计算以确定溢出条件发生的可能性,并且如果存在发生溢出的高可能性,则将执行回流操作。
在确定需要编辑表面208的回流后,例程500前进至操作504,在此回流逻辑142将文本(包括用户102进行的任何改变)从编辑表面208复制回HTML文档128的底层段落202。在操作506,回流逻辑142使web浏览器122在窗口106中重新呈现HTML文档128,从而触发web浏览器122重新计算底层段落202的位置和大小,底层段落202现在包含将在窗口106中显示的、编辑表面208的经修改的内容。回流逻辑142随后确定在窗口106中显示的底层段落202的新位置和尺寸,如在操作508中所示。在一个实施例中,简单地向web浏览器122请求这一信息。一旦知道了新位置和尺寸,则例程500前进至操作510,在此回流逻辑142在窗口106中重新定位编辑表面208并调整其大小,以与底层段落202的相匹配。
图6示出了能够执行本文所描述的用于以上述方式使用暂时编辑表面来编辑文档的软件组件的计算机600的说明性计算机体系结构。图6所示的计算机体系结构示出常规台式、膝上型或服务器计算机,并可以用来执行本文呈现的被描述为在计算机120或服务器计算机162上执行的软件组件的任何方面。
图6所示的计算机体系结构包括中央处理单元602(“CPU”)、包括随机存取存储器614(“RAM”)和只读存储器(“ROM”)616的系统存储器608、以及将存储器耦合至CPU 602的系统总线604。基本输入/输出系统被存储在ROM 616中,该系统包含帮助诸如在启动期间在计算机600中的元件之间传递信息的基本例程。计算机600还包括用于存储操作系统610、应用程序和其他程序模块的大容量存储设备618,这将在本文中更为详尽地描述。
大容量存储设备610通过连接至总线604的大容量存储控制器(未示出)连接到CPU 602。大容量存储设备610及其相关联的计算机可读介质为计算机600提供非易失性存储。虽然对这里包含的计算机可读介质的描述引用了诸如硬盘或CD-ROM驱动器之类的大容量存储设备,但是本领域的技术人员应该明白,计算机可读介质可以是可由计算机600访问的任何可用计算机存储介质。
作为示例而非限制,计算机可读介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块之类的信息或其他数据的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。例如,计算机可读介质包括但不限于,RAM、ROM、EPROM、EEPROM、闪存或其他固态存储器技术、CD-ROM、数字多功能盘(“DVD”)、HD-DVD、蓝光(BLU-RAY)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备、或能用于存储所需信息且可以由计算机600访问的任何其他介质。
根据各实施例,计算机600可以使用通过诸如网络620之类的网络到远程计算机的逻辑连接来在联网环境中操作。计算机600可以通过连接至总线604的网络接口单元606来连接到网络620。应该明白,网络接口单元606还可以被用来连接到其他类型的网络和远程计算机系统。计算机600还可以包括用于接收和处理来自多个其它设备的输入的输入/输出控制器612,这些设备包括键盘、鼠标或者电子指示笔(未在图6中示出)。类似地,输入/输出控制器可以提供至显示屏、打印机或其他类型的输出设备(也未在图6中示出)的输出。
如前简述的那样,多个程序模块和数据文件可以存储在计算机600的大容量存储设备610和RAM 614内,包括适于控制联网的台式计算机、膝上型计算机或服务器计算机的操作的操作系统618。大容量存储设备610和RAM 614还可以存储一个或多个程序模块。具体而言,大容量存储设备610和RAM 614可存储web浏览器122或web服务器164应用程序,其每一个都在上文参考图1-5详细描述。大容量存储设备610和RAM 614还可存储其他类型的程序模块。
基于上述内容,应该明白,本文提供了用于使用暂时编辑表面来编辑文档的技术。虽然以计算机结构特征、方法动作、以及计算机可读的介质专用的语言描述了本文呈现的主题,但是应该理解,在所附权利要求书中所限定的本发明不一定仅限于本文描述的具体特征、动作、或介质。相反,这些具体特征、动作和介质是作为实现权利要求的示例形式来公开的。
上述主题仅作为说明提供,并且不应被解释为限制。可对此处所述的主题作出各种修改和改变,而不必遵循所示和所述的示例实施例和应用,且不背离所附权利要求书中所述的本发明的真正精神和范围。

Claims (19)

1.一种用于编辑文档(128)的方法,所述方法包括:
在窗口(200)中呈现所述文档(128);
接收编辑所述文档(128)的一部分(202、204)的请求;
响应于所述请求,创建在被显示在所述窗口(200)中时覆盖所述文档(128)的所述部分(202、204)的编辑表面(208)并将所述文档(128)的所述部分(202、204)复制到所述编辑表面(208);
在所述编辑表面(208)内接收对所述文档(128)的所述部分(202、204)的一个或多个改变,其中,在所述编辑表面内接收对所述文档的所述部分的一个或多个改变包括:
在所述窗口内接收输入;
在接收到所述输入后,确定所述编辑表面元素是否将处理该输入;
在确定所述编辑表面元素将处理所述输入后,
将所述输入传递到所述编辑表面元素以供处理,以及
对所述编辑表面元素执行回流操作;以及
在确定编辑表面元素将不处理所述输入后,
将所述一个或多个改变应用于所述文档,
从所述文档中移除所述编辑表面元素,以及
使所述文档的所述部分在被显示在所述窗口中时可见;
接收停止编辑所述文档(128)的所述部分(202、204)的请求;以及
响应于接收到所述请求,将所述一个或多个改变应用于所述文档(128)并销毁所述编辑表面(208)。
2.如权利要求1所述的方法,其特征在于,接收编辑所述文档的一部分的请求包括:
检测插入指针被置于所述窗口中的一位置处;以及
确定所述文档中显示在所述窗口内的所述插入指针的位置处的部分。
3.如权利要求2所述的方法,其特征在于,还包括:
在确定了所述文档中显示在所述窗口内的所述部分后,确定文本内、位于所述文档中与所述插入指针的位置相对应的所述部分中的字符位置;以及
在创建了覆盖所述文档中显示在所述窗口中的所述部分的编辑表面后,在所述编辑表面内将光标定位在所述文档的所述部分的文本中的字符位置处。
4.如权利要求1所述的方法,其特征在于,所述文档包括标记语言中、由web浏览器呈现在所述窗口中的元素。
5.如权利要求4所述的方法,其特征在于,放置在被显示在所述窗口中时覆盖所述文档的所述部分的编辑表面还包括:
确定在被显示在所述窗口中时所述文档的所述部分的位置和大小;
使所述文档的所述部分在被显示在所述窗口中时不可见;以及
在所述文档中创建编辑表面元素,所述文档在由所述web浏览器呈现时使得所述编辑表面显示在所述窗口中、所述文档的所述部分的位置处并以所述部分的大小来显示。
6.如权利要求5所述的方法,其特征在于,所述web浏览器所呈现的标记语言包括超文本标记语言(HTML),并且在所述文档中创建的编辑表面元素是HTML IFRAME元素、HTML DIV元素以及HTML TEXTAREA元素之一。
7.如权利要求1所述的方法,其特征在于,对所述编辑表面元素执行回流操作包括:
确定是否需要在所述窗口中回流所述编辑表面元素;以及
在确定需要回流所述编辑表面元素后,
将所述一个或多个改变应用于所述文档,
使web浏览器在所述窗口中重新呈现所述文档,
确定在被显示在所述窗口中时所述文档的所述部分的新位置和新大小;以及
修改所述文档中的编辑表面元素,使其由所述web浏览器呈现在所述窗口中的、所述文档的所述部分的新位置处并以所述新大小来呈现。
8.如权利要求1所述的方法,其特征在于,确定所述编辑表面元素是否将处理所述输入包括确定所述输入是否是键盘上的字母键、标点键、数字键之一被按下的结果。
9.一种用于编辑文档的方法,所述方法包括:
在web浏览器(122)生成的窗口(200)中显示标记语言文档(128);
检测插入指针(206)被置于所述窗口(200)中的某一位置处;
在确定放置了插入指针之后,确定文档(128)中、显示在所述窗口(200)中所述插入指针(206)的位置处的部分(202、204);
在所述窗口(200)中创建覆盖所述文档(128)的所述部分(202、204)的编辑表面(208)并将所述文档(128)的所述部分(202、204)复制到所述编辑表面(208);
检测所述窗口中的输入(200);
在检测到所述窗口中的输入后,确定所述编辑表面(208)是否将处理所述输入;
在确定所述编辑表面将处理所述输入后,
将所述输入传递到所述编辑表面(208)以允许所述编辑表面接受对所述文档(128)的所述部分(202、204)的改变以及
执行所述编辑表面(208)的回流操作(142);以及
在确定所述编辑表面将不处理所述输入后,
用来自所述编辑表面(208)的改变来更新所述文档(128)的所述部分(202、204)以及
销毁所述编辑表面(208)。
10.如权利要求9所述的方法,其特征在于,在所述窗口中创建覆盖所述文档的所述部分的编辑表面包括:
确定在被显示在所述窗口中时所述文档的所述部分的当前位置和大小;
确定所述文档所述部分的任何文本内的、与所述插入指针的位置相对应的字符位置;
使所述文档的所述部分由所述web浏览器在所述窗口中呈现为不可见的;
向所述文档添加标记语言以使所述web浏览器在所述窗口中在所述文档的所述部分的当前位置处呈现编辑表面并以所述部分的当前大小来呈现;
将所述文档的所述部分的文本复制到所述编辑表面中;以及
在所述编辑表面中将光标置于所述文档的所述部分的文本中的所述字符位置处。
11.如权利要求10所述的方法,其特征在于,所述web浏览器所呈现的标记语言是超文本标记语言(HTML),并且被添加到所述文档以使所述web浏览器呈现编辑表面的标记语言创建HTML IFRAME元素、HTMLDIV元素以及HTML TEXTAREA元素之一。
12.如权利要求9所述的方法,其特征在于,执行所述编辑表面的回流操作包括:
确定是否需要在所述窗口中回流所述编辑表面;以及
在确定需要回流后,
在所述窗口中用来自所述编辑表面的改变来更新所述文档的所述部分,
使所述web浏览器在所述窗口中重新呈现所述文档,以及
在所述窗口中重新定位所述编辑表面以覆盖所述文档的所述部分。
13.如权利要求9所述的方法,其特征在于,确定所述编辑表面是否将处理所述输入包括确定所述输入是否是键盘上的字母键、标点键、数字键之一被按下的结果。
14.一种用于在web浏览器(122)内执行的文字处理程序(140)中提供暂时编辑表面(208)的方法,所述方法包括:
检测用户(102)将插入指针(206)置于正在所述文字处理程序(140)中编辑的文档(128)的文本段落(202、204)内;
在检测到放置了所述插入指针时,确定所述插入指针(206)被置于所述文本内的字符位置;
确定在被显示在所述web浏览器生成的窗口(200)中的页面内时所述段落(202、204)的当前位置和大小;
在所述页面上、在被显示在所述页面内时所述段落(202、204)的位置处并以所述段落的大小来创建编辑表面(208);
将所述文本复制到所述编辑表面(208);
使所述段落(202、204)在被显示在所述页面内时不可见;
将光标(210)置于所述编辑表面(208)中的所述插入指针(206)的字符位置处;
检测所述窗口(200)内的用户输入(146);
在检测到所述用户输入后,确定所述编辑表面(208)是否将处理所述用户输入;
在确定所述编辑表面将处理所述用户输入后,
将所述用户输入传递到所述编辑表面(208)以供处理,
确定是否需要回流所述编辑表面,以及
在确定需要回流所述编辑表面后,执行所述编辑表面(120、208)的回流操作(142);以及
在确定所述编辑表面将不处理所述用户输入后,
用来自所述编辑表面(208)的文本来更新所述页面中的所述段落(202、204),
使所述段落(202、204)在被显示在所述页面内时可见;
销毁所述编辑表面(208),以及
将所述用户输入传递到所述文字处理程序(140)以供处理。
15.如权利要求14所述的方法,其特征在于,执行所述编辑表面的回流操作包括:
用来自所述编辑表面的文本来更新所述页面中的所述段落;
使所述web浏览器在所述窗口中呈现所述页面;
确定在被显示在所述页面内时所述段落的新位置和新大小;以及
在所述编辑表面被显示在所述页面内时将所述编辑表面在所述页面中的位置和大小修改成所述段落的新位置和新大小。
16.如权利要求14所述的方法,其特征在于,在所述页面上创建编辑表面包括向所述web浏览器中的所述页面添加超文本标记语言(HTML)IFRAME元素。
17.如权利要求14所述的方法,其特征在于,检测所述窗口内的用户输入包括从所述web浏览器截取键盘和鼠标事件。
18.如权利要求14所述的方法,其特征在于,确定所述编辑表面是否将处理所述用户输入包括确定所述用户是否按下键盘的字母键、标点键、或数字键之一。
19.如权利要求14所述的方法,其特征在于,确定是否需要回流所述编辑表面包括确定所述编辑表面对所述用户输入的处理是否使得所述编辑表面内的文本在被所述web浏览器呈现在所述页面上时超过所述编辑表面的大小。
CN2009801066446A 2008-02-25 2009-01-21 使用暂时编辑表面来编辑文档 Active CN101952821B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/037,059 2008-02-25
US12/037,059 US8266524B2 (en) 2008-02-25 2008-02-25 Editing a document using a transitory editing surface
PCT/US2009/031482 WO2009108417A1 (en) 2008-02-25 2009-01-21 Editing a document using a transitory editing surface

Publications (2)

Publication Number Publication Date
CN101952821A CN101952821A (zh) 2011-01-19
CN101952821B true CN101952821B (zh) 2013-05-01

Family

ID=40999566

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009801066446A Active CN101952821B (zh) 2008-02-25 2009-01-21 使用暂时编辑表面来编辑文档

Country Status (14)

Country Link
US (1) US8266524B2 (zh)
EP (1) EP2260406B1 (zh)
JP (1) JP5490729B2 (zh)
KR (1) KR101524897B1 (zh)
CN (1) CN101952821B (zh)
AU (1) AU2009217633B2 (zh)
BR (1) BRPI0907464B1 (zh)
CA (1) CA2712925C (zh)
IL (1) IL207097A (zh)
MX (1) MX2010009102A (zh)
MY (1) MY154193A (zh)
RU (1) RU2493589C2 (zh)
WO (1) WO2009108417A1 (zh)
ZA (1) ZA201005076B (zh)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9507651B2 (en) * 2008-04-28 2016-11-29 Microsoft Technology Licensing, Llc Techniques to modify a document using a latent transfer surface
JP2010073033A (ja) * 2008-09-19 2010-04-02 Fuji Xerox Co Ltd 情報処理装置及びプログラム
US20100095198A1 (en) * 2008-10-15 2010-04-15 Apple Inc. Shared comments for online document collaboration
US8347208B2 (en) * 2009-03-04 2013-01-01 Microsoft Corporation Content rendering on a computer
US8704783B2 (en) 2010-03-24 2014-04-22 Microsoft Corporation Easy word selection and selection ahead of finger
US9292161B2 (en) * 2010-03-24 2016-03-22 Microsoft Technology Licensing, Llc Pointer tool with touch-enabled precise placement
EP2732383B1 (en) * 2011-07-12 2018-04-04 Snap Inc. Methods and systems of providing visual content editing functions
CN102270193A (zh) * 2011-07-24 2011-12-07 珠海金山办公软件有限公司 对文档中选定区域进行可预览设置的装置及方法
US9317196B2 (en) 2011-08-10 2016-04-19 Microsoft Technology Licensing, Llc Automatic zooming for text selection/cursor placement
CN102314314B (zh) * 2011-08-29 2015-08-26 上海量明科技发展有限公司 文档阅读时光标转换的方法及系统
US9075517B2 (en) * 2012-02-21 2015-07-07 Google Inc. Web input through drag and drop
US9684642B2 (en) 2013-04-19 2017-06-20 Xiaomi Inc. Method and device for updating electronic document and associated document use records
CN103257956B (zh) * 2013-04-19 2016-06-15 小米科技有限责任公司 一种电子文档的数据更新方法及装置
US10599753B1 (en) 2013-11-11 2020-03-24 Amazon Technologies, Inc. Document version control in collaborative environment
US9542391B1 (en) 2013-11-11 2017-01-10 Amazon Technologies, Inc. Processing service requests for non-transactional databases
US10540404B1 (en) 2014-02-07 2020-01-21 Amazon Technologies, Inc. Forming a document collection in a document management and collaboration system
US11336648B2 (en) 2013-11-11 2022-05-17 Amazon Technologies, Inc. Document management and collaboration system
CN104714930B (zh) * 2013-12-12 2018-10-02 鸿合科技股份有限公司 一种文档快速处理方法和装置
KR102283360B1 (ko) * 2013-12-31 2021-07-30 삼성전자주식회사 텍스트 편집 위치를 가이드 하는 방법, 장치 및 기록매체
US10691877B1 (en) * 2014-02-07 2020-06-23 Amazon Technologies, Inc. Homogenous insertion of interactions into documents
CA2901703C (en) 2014-06-06 2016-07-05 Maud Gagne-Langevin System and method for generating task-embedded documents
CN105302828B (zh) * 2014-07-02 2020-09-29 腾讯科技(深圳)有限公司 一种页面标签信息显示方法、装置及电子设备
US9639263B2 (en) 2014-08-05 2017-05-02 Weebly, Inc. Native overlay for rapid editing of web content
US9807073B1 (en) 2014-09-29 2017-10-31 Amazon Technologies, Inc. Access to documents in a document management and collaboration system
US10139998B2 (en) 2014-10-08 2018-11-27 Weebly, Inc. User interface for editing web content
US9535883B2 (en) * 2014-10-24 2017-01-03 Dropbox, Inc. Modifying native document comments in a preview
US10867118B2 (en) * 2015-01-28 2020-12-15 Box, Inc. Method and system for implementing a collaboration platform for structured objects in a document
US9811505B2 (en) * 2015-07-20 2017-11-07 Sas Institute Inc. Techniques to provide processing enhancements for a text editor in a computing environment
CN105808512A (zh) * 2016-03-04 2016-07-27 北京奇虎科技有限公司 百科词条内容的编辑方法及编辑装置
CN105808704A (zh) * 2016-03-04 2016-07-27 北京奇虎科技有限公司 百科词条内容的评价展示方法及评价展示装置
CN105808515A (zh) * 2016-03-04 2016-07-27 北京奇虎科技有限公司 基于分句的百科词条的编辑方法及编辑装置
CN105912225B (zh) * 2016-03-31 2019-08-23 北京奇虎科技有限公司 基于百科词条的飞幕显示方法及装置
CN105930340A (zh) * 2016-03-31 2016-09-07 北京奇虎科技有限公司 基于百科词条的词条纠错方法及装置
CN105892836A (zh) * 2016-03-31 2016-08-24 北京奇虎科技有限公司 基于百科词条的激活态飞幕显示方法及装置
RU2642409C1 (ru) * 2016-09-28 2018-01-24 Общество с ограниченной ответственностью "Аби Девелопмент" Редактирование текста на изображении документа
WO2018109589A1 (en) * 2016-12-15 2018-06-21 Walkme Ltd. Updating data records by adding editing functions to non-editable display elements
KR102029057B1 (ko) * 2017-06-20 2019-10-07 주식회사 인프라웨어 전자문서를 편집하는 방법 및 장치
US10866708B2 (en) 2018-12-10 2020-12-15 Square, Inc. Using combined ecommerce and brick-and-mortar data to produce intelligent recommendations for web page operation
CN109657220A (zh) * 2018-12-11 2019-04-19 万兴科技股份有限公司 Pdf文档的在线编辑方法、装置及电子设备
KR20210057306A (ko) * 2019-11-12 2021-05-21 주식회사 모카앤제이에스 블록 에디터 기반 문서 편집 서비스 제공 방법, 그를 수행하기 위한 서버 및 컴퓨터 프로그램
US11611629B2 (en) * 2020-05-13 2023-03-21 Microsoft Technology Licensing, Llc Inline frame monitoring
CN111797603B (zh) * 2020-07-02 2022-02-01 北京字节跳动网络技术有限公司 文档内表格浏览方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5604858A (en) * 1992-08-10 1997-02-18 International Business Machines Corporation Method and system for apparent direct editing of fixed display elements within a data processing system
CN1969272A (zh) * 2004-07-08 2007-05-23 微软公司 自动生成内容的导入

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2124624C (en) * 1993-07-21 1999-07-13 Eric A. Bier User interface having click-through tools that can be composed with other tools
US5581670A (en) * 1993-07-21 1996-12-03 Xerox Corporation User interface having movable sheet with click-through tools
US5826025A (en) 1995-09-08 1998-10-20 Sun Microsystems, Inc. System for annotation overlay proxy configured to retrieve associated overlays associated with a document request from annotation directory created from list of overlay groups
AUPO525497A0 (en) * 1997-02-21 1997-03-20 Mills, Dudley John Network-based classified information systems
US6278678B1 (en) * 1999-02-12 2001-08-21 Sony Corporation Editing apparatus, editing method, and recording medium
JP2000339312A (ja) * 1999-05-31 2000-12-08 Toshiba Corp 文書編集システム及びタグ情報管理テーブル作成方法
US7124360B1 (en) * 1999-08-04 2006-10-17 William Drenttel Method and system for computer screen layout based on a recombinant geometric modular structure
US7259753B2 (en) * 2000-06-21 2007-08-21 Microsoft Corporation Classifying, anchoring, and transforming ink
AU2001264895A1 (en) * 2000-06-21 2002-01-02 Microsoft Corporation System and method for integrating spreadsheets and word processing tables
US7155667B1 (en) * 2000-06-21 2006-12-26 Microsoft Corporation User interface for integrated spreadsheets and word processing tables
US7117435B1 (en) * 2000-06-21 2006-10-03 Microsoft Corporation Spreadsheet fields in text
US7103838B1 (en) * 2000-08-18 2006-09-05 Firstrain, Inc. Method and apparatus for extracting relevant data
AU2002211310A1 (en) * 2000-09-28 2002-04-08 Fatwire Corporation System and method for in-context editing
US6941507B2 (en) * 2000-11-10 2005-09-06 Microsoft Corporation Insertion point bungee space tool
US7191405B1 (en) * 2000-11-22 2007-03-13 Adobe Systems Incorporated System and method for editing information
JP3943830B2 (ja) * 2000-12-18 2007-07-11 株式会社東芝 文書合成方法および文書合成装置
US7120868B2 (en) * 2002-05-30 2006-10-10 Microsoft Corp. System and method for adaptive document layout via manifold content
US20070028166A1 (en) * 2002-04-10 2007-02-01 Allen Hundhausen System and processes for dynamic document construction
US20040205488A1 (en) * 2001-11-27 2004-10-14 Fry Randolph Allan Active web page for editing with any browser
US7698636B2 (en) * 2002-06-13 2010-04-13 Microsoft Corporation System and method for in-context editing of components
TW576984B (en) 2002-07-19 2004-02-21 Jen-Hwang Weng On-line web page editing system and method
US7340673B2 (en) * 2002-08-29 2008-03-04 Vistaprint Technologies Limited System and method for browser document editing
US7000184B2 (en) * 2003-01-24 2006-02-14 The Cobalt Group, Inc. Remote web site editing in a standard web browser without external software
US20040202352A1 (en) * 2003-04-10 2004-10-14 International Business Machines Corporation Enhanced readability with flowed bitmaps
US7890852B2 (en) * 2003-06-26 2011-02-15 International Business Machines Corporation Rich text handling for a web application
JP2005149061A (ja) * 2003-11-14 2005-06-09 Ricoh Co Ltd 情報処理システム、プログラム、及び記憶媒体
US20050262439A1 (en) * 2004-05-20 2005-11-24 Neil Cameron Automatic web publishing
US7574048B2 (en) * 2004-09-03 2009-08-11 Microsoft Corporation Freeform digital ink annotation recognition
JP4197313B2 (ja) * 2004-10-15 2008-12-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 文章編集方法、文章編集方法を実行するプログラム、及び文章編集システム
US20070150477A1 (en) * 2005-12-22 2007-06-28 International Business Machines Corporation Validating a uniform resource locator ('URL') in a document
US7793231B2 (en) * 2006-01-19 2010-09-07 International Business Machines Corporation Method and system for providing a primary window overlay
US20070288859A1 (en) * 2006-06-07 2007-12-13 Siemens Communications, Inc. Method and apparatus for selective forwarding of e-mail and document content
US20080209311A1 (en) * 2006-12-29 2008-08-28 Alex Agronik On-line digital image editing with wysiwyg transparency

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5604858A (en) * 1992-08-10 1997-02-18 International Business Machines Corporation Method and system for apparent direct editing of fixed display elements within a data processing system
CN1969272A (zh) * 2004-07-08 2007-05-23 微软公司 自动生成内容的导入

Also Published As

Publication number Publication date
CA2712925A1 (en) 2009-09-03
BRPI0907464B1 (pt) 2020-02-11
AU2009217633B2 (en) 2014-01-16
BRPI0907464A2 (pt) 2015-07-14
EP2260406B1 (en) 2021-04-07
JP5490729B2 (ja) 2014-05-14
MX2010009102A (es) 2010-09-09
US20090217158A1 (en) 2009-08-27
AU2009217633A1 (en) 2009-09-03
ZA201005076B (en) 2011-09-28
US8266524B2 (en) 2012-09-11
KR101524897B1 (ko) 2015-06-01
RU2493589C2 (ru) 2013-09-20
KR20100135756A (ko) 2010-12-27
IL207097A0 (en) 2010-12-30
WO2009108417A1 (en) 2009-09-03
EP2260406A1 (en) 2010-12-15
IL207097A (en) 2016-02-29
JP2011514993A (ja) 2011-05-12
RU2010135522A (ru) 2012-02-27
MY154193A (en) 2015-05-15
CA2712925C (en) 2016-08-30
CN101952821A (zh) 2011-01-19
EP2260406A4 (en) 2018-01-24

Similar Documents

Publication Publication Date Title
CN101952821B (zh) 使用暂时编辑表面来编辑文档
US20180275851A1 (en) Input Device Enhanced Interface
US9152529B2 (en) Systems and methods for dynamically altering a user interface based on user interface actions
US20180052809A1 (en) Inferring user interaction with an iframe
JP5629781B2 (ja) スクロール中に文字列の縦の段に追従するための方法および装置
US9921721B2 (en) Navigation interfaces for ebooks
US9317257B2 (en) Folded views in development environment
US10592211B2 (en) Generation of application behaviors
US10353721B2 (en) Systems and methods for guided live help
CN109074375B (zh) web文档中的内容选择
US9910835B2 (en) User interface for creation of content works
CN104657451A (zh) 页面的处理方法及装置
CN103870191A (zh) 网页保存的方法及电子设备
US8560943B2 (en) Displaying documents on mobile devices
Laine et al. Responsive and personalized web layouts with integer programming
US20210365280A1 (en) System & method for automated assistance with virtual content
US20240086616A1 (en) Reading assistant in a browser environment
EP2887210A1 (en) Method and apparatus for automatically generating a help system for a software application
Kumar et al. Chapter 7: Application Lifecycle and Navigation
Cohen Fireworks 4 for Windows and Macintosh: Visual QuickStart Guide

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: 20150421

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

Effective date of registration: 20150421

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.