CN113536731A - 用于格式化文档对象的方法、设备和介质 - Google Patents

用于格式化文档对象的方法、设备和介质 Download PDF

Info

Publication number
CN113536731A
CN113536731A CN202110801111.2A CN202110801111A CN113536731A CN 113536731 A CN113536731 A CN 113536731A CN 202110801111 A CN202110801111 A CN 202110801111A CN 113536731 A CN113536731 A CN 113536731A
Authority
CN
China
Prior art keywords
editing
suggestion
editing suggestion
user
selection
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.)
Pending
Application number
CN202110801111.2A
Other languages
English (en)
Inventor
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 Technology Licensing 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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Priority to CN202110801111.2A priority Critical patent/CN113536731A/zh
Publication of CN113536731A publication Critical patent/CN113536731A/zh
Pending legal-status Critical Current

Links

Images

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
    • 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/151Transformation
    • G06F40/16Automatic learning of transformation rules, e.g. from examples
    • 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/904Browsing; Visualisation therefor
    • 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/93Document management systems
    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Document Processing Apparatus (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本公开的实施例涉及用于格式化文档对象的方法、设备和介质。提出了一种用于通过视觉建议来格式化文档对象的解决方案。对于包括多个编辑单元的文档,生成第一编辑规则,多个编辑单元中的每一个包含多个对象,第一编辑规则指示对文档中的第一对象执行的编辑(210)。然后,基于第一编辑规则来生成编辑建议,该编辑建议描述将对建议范围内的第二对象执行的候选编辑(220)。该编辑建议然后以视觉形式被呈现给用户以供选择(230)。

Description

用于格式化文档对象的方法、设备和介质
本申请是国际申请日为2015年12月29日、于2018年6月26日进入中国国家阶段、中国国家申请号为201580085592.4、发明名称为“用于格式化文档对象的方法、设备和介质”的发明专利申请的分案申请。
技术领域
本申请涉及计算机领域,具体地涉及用于格式化文档对象的方法、设备和介质。
背景技术
在如文档编辑应用的环境中,文档常常包含多个编辑单元,诸如页面或幻灯片。在某些情况下,不同的编辑单位可能不会同时可见。因此,在对多个编辑单元的一些对象进行更改之后,用户可能具有跨多个编辑单元的这些对象来保持视觉一致性的问题。通常,用户需要导航通过每个编辑单元,格式化保持一致性所需的所有对象。因此,对大量文档对象进行更改可能是耗时且容易出错的任务。
发明内容
根据本文描述的主题的实现,提出了一种用于通过视觉建议来格式化文档对象的解决方案。对于包括多个编辑单元的文档,其中每个编辑单元包含多个对象(例如,形状、线条、段落等),本发明的实现实现生成第一编辑规则,第一编辑规则指示对文档中的第一对象执行的编辑。然后,基于第一编辑规则来生成编辑建议,该编辑建议描述将对建议范围内的第二对象执行的候选编辑。该编辑建议然后以视觉形式被呈现给用户以供选择。
提供本发明内容从而以简化方式介绍以下在详细描述中进一步描述的概念的选择。本发明内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在被用于限制所要求保护的主题的范围。
附图说明
图1是其中能够实现本文描述的主题的实现的环境100的框图;
图2是根据本发明的实现的用于通过视觉建议来格式化文档对象的方法200的流程图;
图3是根据本发明的实现的用于生成编辑建议的方法300的流程图;
图4是根据本发明的实现的可视编辑建议的示意图;
图5是根据本发明的实现的用于响应于应用编辑建议的过程的方法500的流程图;
图6是根据本发明的实现的用于通过视觉建议来格式化文档对象的方法600的流程图;以及
图7是根据本发明的实现的用于通过视觉建议来格式化文档对象的方法700的流程图。
在整个附图中,相同或相似的参考符号被用于表示相同或相似的元素。
具体实现
本文所描述的主题现在将参考若干示例实现来被讨论。应该理解,这些实现仅仅是为了使本领域技术人员能够更好地理解并因此实现本文所描述的主题而不是暗示对主题的范围的任何限制来被讨论。
如本文所使用的,术语“包括”及其变体将被理解为开放式术语“包括,但不限于”。术语“或”将被理解为“和/或”,除非上下文另行清楚地指示。术语“基于”将被理解为“至少部分基于”。术语“一个实现”和“实现”将被理解为“至少一个实现”。术语“另一实现”将被理解为“至少一个其他实现”。术语“第一”、“第二”、“第三”等可以指不同或相同的对象。其他定义(显式的和隐式的)可以被包括如下。
如上所述,更改许多文档对象的外观属性是耗时且容易出错的。为了解决这个问题,一些应用提供了格式化工具,以允许用户将一个对象的非空间属性(如字体或颜色)应用到其他对象上。但是,这样的格式化工具通常不支持如大小或位置的空间属性的传播。此外,一些应用允许用户通过使用一个或多个模板来设置对象属性。这需要预先规划所期望的布局和文本格式。当用户想要更改对象的属性时,他/她必须切换到并操作模板而不是实际的页面/幻灯片。这些和其他潜在问题可以通过本文描述的主题的实现来被解决。
图1示出了其中能够实现本文描述的主题的实现的环境100的框图。如所示,环境100包括用户101和计算设备102。
计算设备102可以是台式计算机、膝上型计算机、平板电脑、智能电话或任何其他类型的计算设备。计算设备102的组件可以包括但不限于一个或多个处理器110、存储器120和一个或多个I/O接口130。存储器120可以存储各种模块、应用、程序或其他数据。此外,存储器120可以包括指令,该指令在由处理器110执行时使处理器110执行在此描述的用于计算设备102的操作。在计算设备102中,I/O接口130可以支持使得用户101能够与计算设备102交互的各种不同的输入设备和输出设备中的一个或多个。例如,输入设备可以包括诸如键盘、小键盘、触摸板、轨迹球等用户设备。例如,输出设备可以包括显示器。
计算设备102可以具有附加的特征和/或功能。例如,计算设备102还可以包括附加数据存储设备(可拆卸和/或不可拆卸),诸如磁盘或光盘。这种附加存储设备可以包括可拆卸存储设备和/或不可拆卸存储设备。计算机可读介质可以包括至少两种类型的计算机可读介质,即计算机存储介质和通信介质。计算机存储介质可以包括以用于存储信息(诸如计算机可读指令、数据结构、程序模块、程序数据或其他数据)的任何方法或技术实现的易失性和非易失性、可拆卸和不可拆卸介质。系统存储器、可拆卸存储器和不可拆卸存储器都是计算机存储介质的示例。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储技术,CD-ROM、数字多功能盘(DVD)或其他光存储设备,磁盒、磁带、磁盘存储设备或其他磁存储设备,或者能够用于存储期望的信息并且能够由计算设备102访问的任何其他介质。任何这样的计算机存储介质可以是计算设备102的一部分。此外,计算机可读介质可以包括计算机可执行指令,该计算机可执行指令在由处理器执行时执行本文描述的各种功能和/或操作。相反,通信介质可以在诸如载波的已调制数据信号或其他机制中体现计算机可读指令、数据结构、程序模块或其它数据。
存储器120可以存储用于处理文档103的文档编辑应用121。文档103可以是演示文档或文本文档。文档103可以包括一个或多个编辑单元。如本文所使用的,术语“编辑单元”是指构成文档103的基本单元。编辑单元的示例包括但不限于演示文档中的幻灯片或文本文档中的页面,诸如图1中所示的编辑单元104、105和106。编辑单元中的每一个可以包括一个或多个对象(例如,形状、线条、段落等)。例如,编辑单元104被示出为包括对象114和116,编辑单元104被示出为包括对象115和117,并且编辑单元106被示出为包括对象118和119。这仅仅是为了说明的目的,而非暗示对环境的任何限制。在以下讨论中,仅出于说明的目的,文档103指代演示文档(诸如微软
Figure BDA0003164576130000041
演示文稿),并且编辑单元104、105和106表示演示文档内的三个不同幻灯片。
用户101可以经由I/O接口130所支持的输入设备对编辑单元104中的对象114执行直接编辑,诸如更改对象114的字体。然后,用户101可能具有对编辑单元105中的对象115执行类似编辑的意图。也就是说,用户可能想要将对象115的字体更改为与编辑对象114相同以便保持视觉一致性。本发明的实现提供了一种通过视觉建议来格式化文档对象的解决方案。
图2示出根据本发明的实现的用于通过视觉建议来格式化文档对象的方法200的流程图。例如,方法200可以由如图1所示的计算设备102来实现。备选地或附加地,方法200可以被实现为文档编辑应用121的一部分。方法200将结合图1中所示的示例来描述。仅仅出于说明的目的,在下面的讨论中,编辑单元104中的对象114被称为“第一对象”,并且编辑单元105中的对象115被称为“第二对象”。
在步骤210中,生成第一编辑规则,第一编辑规则指示对文档103中的第一对象114执行的编辑。在一些实现中,第一编辑规则可以响应于第一对象被用户101编辑而被生成。
在一些实现中,第一编辑规则可以采取如下的形式:
条件=>结论 (1)
其中每个条件和结论都采用“属性:值”对的形式。条件定义了哪些对象能够被规则所匹配,并且结论描述了如何编辑这些匹配对象。属性可以是任何种类的视觉属性,包括但不限于诸如位置、高度、大小等空间属性,诸如字体、形状类型、填充颜色等非空间属性,诸如形状内的文本的内容等。例如,下面的规则(2)可以将形状类型为正方形的所有对象转变为形状类型为菱形的对象,而不管它们的大小、颜色、边界等等如何。
(形状类型:正方形)=>(形状类型:菱形) (2)
规则的所有条件都应该被匹配该规则的对象满足。例如,下面的规则(3)可以仅将形状类型为正方形且填充颜色为黄色的所有对象转变为形状类型为菱形的对象。
(形状类型:正方形,填充颜色:黄色)=>(形状类型:菱形) (3)
此外,规则的所有结论应该被应用于匹配该规则的所有对象。例如,下面的规则(4)可以将形状类型为正方形的对象转变为形状类型为菱形且填充颜色为黄色的对象,而不管它们的原始填充颜色如何。
(形状类型:正方形)=>(形状类型:菱形,填充颜色:黄色) (4)
在一些实现中,响应于由用户101对第一对象114执行的编辑,第一编辑规则可以被生成如下。
(被编辑的第一对象114在编辑之前的所有属性:值对)=>
(经编辑的属性:值对) (5)
第一编辑规则(5)可以仅匹配如下对象,这些对象的属性与被编辑的第一对象114在编辑之前的属性全部匹配。
在一些实现中,诸如第一编辑规则的编辑规则可以在三个级别的对象上操作:形状、段落、和文本运行(text run)。形状规则可以影响整个形状,包括其中的所有文本内容。例如,结论为“(字体颜色:红色)的形状规则”可以将匹配对象的所有文本设置为红色,而不管之前使用的任何文本运行颜色。当多段落对象的整个第一段或最后一段被格式化时,可以创建段落规则,就好像通常为了区分或强调所做的那样。例如,段落规则可以导致格式化类似的多段落对象的第一段或最后一段,而不管该段落的先前格式或文本运行结构如何。当对象内的单个文本运行被格式化时,可以创建文本运行规则,从而导致格式化另一类似的文本运行。
在一些实现中,如果编辑的目标是模糊的,则可以生成具有混合类型的第一编辑规则。例如,如果用户101编辑统一幻灯片标题的文本,则他/她的意图可能是编辑该类形状或该类文本运行。在这种情况下,可以生成形状运行类型的第一编辑规则。再例如,如果用户101编辑文本框的第一段或最后一段,他/她的意图可能是编辑该类段落或该类文本运行。在这种情况下,可以生成段落运行类型的第一个编辑规则。在其他实现中,如果编辑的目标是模糊的,则可以生成多于一个第一编辑规则。采用与上述相同的示例,如果用户101编辑文本框的第一段或最后一段,则可以生成两个第一编辑规则,一个具有段落类型而另一个具有文本运行类型。
然后,该方法200进行到步骤220,其中基于第一编辑规则来生成编辑建议。在一些实现中,这可以通过计算“放松”编辑规则来完成。例如,图3示出了根据本发明的实现的用于生成编辑建议的方法300的流程图。该编辑建议可以描述将对建议范围内的第二对象(诸如第二对象115)执行的候选编辑。
在步骤310中,建议范围内的所有对象与第一编辑规则的条件相匹配。
在一些实现中,建议范围可以是整个文档103,以便于当直接编辑被执行时在整个文档中传播格式更改。也就是说,文档103内的所有对象都被认为是匹配第一编辑规则的条件的对象。在一些实现中,建议范围根据用户的操作而被更新。例如,当用户101导航到多个编辑单元之一(诸如编辑单元105)时,建议范围被更新以包括编辑单元105,使得编辑单元105内的所有对象被视为匹配第一编辑规则的条件的对象。
如上所述,第一编辑规则的所有条件应该被匹配第一规则的对象满足。然而,在步骤310中,可以考虑建议范围内的每个对象,并且第一编辑规则的一些条件可以被放松以匹配对象,这可以导致“放松”编辑规则被生成。仅出于说明的目的,在以下讨论中,从第一编辑规则生成的“放松”编辑规则也被称为“第二编辑规则”。
然后,该方法300进行到步骤320,其中一个或多个第二编辑规则从第一编辑规则被生成。如上所述,第二编辑规则中的每一个的条件是第一编辑规则的条件的子集,其中第二编辑规则中的每一个与建议范围内的对象中的至少一个对象匹配。在一些实现中,如果该第二编辑规则的条件是另一第二编辑规则的条件的子集,则该第二编辑规则可以被移除。这是因为始终能够通过首先应用较不“放松”的编辑规则来达到更“放松”的编辑规则,如稍后将讨论的。
方法300进行到步骤330,其中多个第二编辑规则中的一个第二编辑规则被选择。这可以通过计算和比较针对第二编辑规则中的每一个而向第一编辑规则的放松条件指派的权重来完成。
在一些实现中,权重可以被指派第一编辑规则的条件中的每一个,其被放松以生成相应的第二编辑规则。向不同的放松条件指派的权重可以相同或不同。用于放松条件的较低权重可以鼓励具有该放松条件的编辑建议被生成,如稍后将讨论的。可以针对第二编辑规则中的每一个来计算权重的总和,并且可以根据权重的总和来对第二编辑规则进行排序。在一些实现中,可以选择具有最小权重总和的第二编辑规则之一,因为它与第一编辑规则匹配具有最小差异。所选择的第二编辑规则可以匹配与由用户编辑的对象最相似的对象。以此方式,建议范围内的视觉一致性可以被最大化。
然后,该方法300进行到步骤340,其中基于所选择的第二编辑规则来生成编辑建议。
在一些实现中,多于一个第一编辑规则可以被保持以支持并行编辑,其中的每一个可以具有不同的优先级。最近生成的(或者更新的,例如,如稍后将参考图5描述的)的第一编辑规则可以具有最高优先级,其可以被称为“活动”编辑规则。应该理解,在一些实现中,可以仅基于“活动”编辑规则来生成一个编辑建议。备选地或附加地,可以基于第一编辑规则中的每一个来生成一个编辑建议,这可以导致多个编辑建议被生成。
在一些实现中,如果在第一对象114上执行的编辑是空间编辑,诸如改变形状的大小或位置,则确切的空间属性(例如,左边缘位置、右边缘位置、顶部边缘位置和底部边缘位置)可以不被用于生成第一编辑规则,而相对空间属性(例如,宽度、高度、面积、中心-x、中心-y等)可以被替代地使用,以便于跨幻灯片来匹配其边缘处于相似但不相同的位置的对象。然而,应该理解,在其他实现中,取决于不同的情况,可以使用确切的空间属性来生成第一编辑规则。此外,在一些实现中,如果第一对象114被用户101移动,则第二编辑规则(其是编辑建议的候选者)可以基于一些特定的对齐和缩放选项来被生成,诸如对齐左上角、对齐右上角、对齐右下角、对齐左下角和/或对齐所有边缘(即,缩放以进行匹配)。第二编辑规则的排序可以基于第一对象114的移动方向。备选地或附加地,编辑建议可以被过滤,以便于避免过度的形状收缩或左右/上下颠倒。
仍然参照图2,方法200进行到步骤230,其中编辑建议以视觉形式被呈现给用户101以供选择。如上所述,编辑建议可以描述将对第二对象(诸如第二对象115)执行的候选编辑。在一些实现中,可以提供用户界面以呈现该编辑建议。备选地或附加地,编辑建议可以被呈现作为文档103的预览,其中编辑建议被应用于第二对象115。在一些实现中,编辑建议可以被呈现给用户101,其中突出显示对第二对象115的更改,使得用户101能够在视觉上比较当前文档状态与应用编辑建议之后的状态之间的差异。备选地或附加地,如果编辑建议的精确细节是重要的但仅从预览中是不清楚的(例如,确切的字体大小),则可以提供关于编辑建议的可读描述。例如,图4示出了根据本发明的实现的视觉编辑建议的示意图。
如图4所示,编辑建议410可以被显示在幻灯片区域420右侧的垂直列表中,明显区别于在幻灯片区域左侧示出的幻灯片的现有列表430。在一些实现中,可以手动激活编辑建议的呈现,诸如通过按下用户界面上的按钮。在一些其他实现中,编辑建议的呈现可以被自动激活,例如,当看起来用户正在文档中进行重复编辑时。例如,激活阈值可以被设置为相同编辑的重复应用的数量。
在一些实现中,在编辑建议被呈现给用户101之后,如果编辑建议不满足用户101,则用户101可以发送针对替换编辑建议的请求。响应于从用户101接收到针对替换编辑建议的请求,可以生成备选编辑建议。例如,如上面参照图3所描述的,可以基于除了与要被替换的编辑建议相关联的第二编辑规则之外的多个第二编辑规则(它们是“放松”的编辑规则)来生成另外的编辑建议,并且然后可以将另外的编辑建议可以以与多个第二编辑规则和第一编辑规则之间的差异(例如,由权重的总和所指示)相关联的顺序被呈现给用户以供选择。
在其它实现中,如果编辑建议满足用户101,则用户101可以选择该编辑建议。响应于编辑建议被用户101选择,编辑建议可以被应用到第二对象115。
例如,图5示出了根据本发明的实现的响应于应用编辑建议的过程的方法500的流程图。例如,方法500可以由如图1所示的计算设备102来实现。备选地或附加地,方法500可以被实现为文档编辑应用121的一部分。方法500将结合图1中所示的示例来描述。仅出于说明的目的,在下面的讨论中,对象117被称为“第四对象”。
在步骤510中,响应于将编辑建议应用于第二对象115,第一编辑规则被更新以指示对第二对象115执行的编辑。在一些实现中,第一编辑规则可以被重新生成以指示对第二对象115执行的编辑。备选地或附加地,在支持多个(例如,3个)第一编辑规则的情况下,重新生成的第一编辑规则可以被提升为具有最高优先级的“活动”编辑规则,而具有先前最低优先级的那个可以被删除。然后,在步骤520中,基于更新的第一编辑规则来重新生成编辑建议。重新生成编辑建议的过程可以根据上面参照图3描述的方法300。例如,重新生成的编辑建议可以描述将对第四对象(诸如,第四对象117)执行的编辑。方法500进行到步骤530,其中经重新生成的编辑建议以视觉形式被呈现给用户以供选择。
在一些情况下,例如如图1所示,在用户101对第一对象114进行直接编辑之后,用户可能具有对对象116执行类似编辑的意图。然而,第三对象116可能处于特定的幻灯片区域,如“左上”或与对象X重叠”,其条件可能无法被表达为“属性:值”对。为了针对这种情况提供解决方案,例如,图6示出了根据本发明的实现的用于通过视觉建议来格式化文档对象的方法600的流程图。例如,方法600可以由如图1所示的计算设备102来实现。备选地或附加地,方法600可以被实现为文档编辑应用121的一部分。方法600将结合图1所示的示例进行描述。仅出于说明的目的,在以下讨论中,对象116被称为“第三对象”。
在步骤610中,响应文档103中的第一对象114被用户101编辑,生成第一编辑规则。第一编辑规则指示对第一对象114执行的编辑。然后,在步骤620中,响应于用户101对第三对象116的选择,生成编辑建议,以建议将第一编辑规则应用于第三对象116,而不是如上面参照图3所述的那样计算“放松”的编辑规则。然后,方法600进行到步骤630,其中重新生成的编辑建议以视觉形式被呈现给用户以供选择。
到目前为止所描述的用于格式化文档对象的方法都有编辑(诸如,直接编辑或通过应用编辑建议的编辑)来驱动,用户希望在整个文档中传播该编辑。然而,在某些情况下,用户想要传播的格式化可能已经存在于文档对象的状态中。本发明的实现还为这种情况提供了解决方案。
图7示出了根据本发明的实现的用于通过视觉建议来格式化文档对象的方法700的流程图。例如,方法700可以由如图1所示的计算设备102来实现。备选地或附加地,方法700可以被实现为文档编辑应用121的一部分。方法700将结合图1中所示的示例来描述。仅出于说明的目的,在以下讨论中,对象118被称为“第五对象”,并且对象119被称为“第六对象”。
在步骤710中,响应于指示用户101对第五对象118的偏好的动作来生成第一编辑规则。在一些实现中,指示对第五对象118的偏好的动作可以是,例如,选择第五对象118并按下“喜欢”按钮(或等价物)。响应于该动作,可以如下生成第一编辑规则(5)。
(喜欢的第五对象118的所有属性:值对)=>
(喜欢的第五对象118的所有属性:值对) (5)
在一些实现中,用户101可以“喜欢”多于一个对象。因此,可以生成以下规则(6)。
(所有喜欢的对象共享的所有属性:值对)=>
(所有喜欢的对象共享的所有属性:值对) (6)
喜欢多于一个对象还实现了传播所喜欢的对象的共享属性的子集。例如,假设总共有三个对象“X”、“Y”和“Z”,它们的“属性:值”对可以如下示出:
X:(A:1,B:1,C:1)
Y:(A:2,B:2,C:1)
Z:(A:1,B:2,C:1) (7)
由于属性“A”的值为1,用户101可能“喜欢”对象“X”,但是他/她可能不希望将对象“X”的属性“B”传播到其他对象。在这种情况下,由于对象“Z”的属性“B”的值不同于对象“X”的属性“B”的值,因此用户也可以“喜欢”对象“Z”。以此方式,可以生成以下规则(8),其导致其他对象的属性“B”的值不被更改。
(A:1,C:1)=>(A:1,C:1) (8)
然后,方法700进行到步骤720,其中基于第一编辑规则来生成编辑建议。在一些实现中,这可以根据上面参照图3描述的方法300类似地完成。在其他实现中,这可以响应于用户101选择另一对象来完成,并且编辑建议可以被生成以建议将第一编辑规则应用于该另一对象,如参照图6所描述的。例如,所生成的编辑建议可以描述将对第六对象119执行的候选编辑。
方法700进行到步骤730,其中该编辑建议以视觉形式被呈现给用户以供选择。以此方式,格式化文档对象可以由文档中已经存在的文档对象的状态来驱动。
将理解的是,在一些实现中,方法500还可以在方法600和700之后并且响应于用户101选择应用编辑建议而被执行。
在一些实现中,可以基于第一编辑规则来生成多于一个的编辑建议,并且所有的编辑建议可以经由相同的用户界面被呈现给用户以供选择。用户可以单独选择所呈现的编辑建议或选择一次全部应用它们。
此外,在一些实现中,如果用户导航到该文档的一个编辑单元,除了生成仅匹配该编辑单元内的对象的编辑建议之外,匹配整个文档内的对象的其他编辑建议也可以被提供以供选择例如,具有比以前的编辑建议更低的优先级。类似地,根据本文描述的主题可以设想其他变型。
通过以上的描述中,将理解的是,本文所描述的主题的实现通过示出最近的编辑如何能被应用于任何地方来允许最小化在整个文档中进行格式化更改所需的用户操作。另外,根据本文描述的主题的实现,如果用户的编辑引入任何不一致,则系统将向用户提供警告和修正建议,由此确保整个文档的视觉一致性。此外,本文描述的主题的实现提供了用于以交互方式使用过程在整个文档中传播由用户执行的编辑的解决方案。
本文描述的功能可以至少部分地由一个或多个硬件逻辑组件来执行。例如但不限于,可以使用的说明性类型的硬件逻辑组件包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。
用于执行本文中所描述的主题的方法的程序代码可以以一种或多种编程语言的任何组合来编写。这些程序代码可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码在由处理器或控制器执行时使在流程图和/或框图中指定的功能/操作被实现。程序代码可以完全在机器上、部分在机器上、作为独立软件包、部分在机器上并且部分在远程机器上或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是任何有形介质,其可以包含或存储由指令执行系统、装置或设备使用或与其结合使用的程序。机器可读介质可以是机器可读信号介质或机器可读存储介质。机器可读介质可以包括但不限于电子、磁性、光学、电磁、红外或半导体系统、装置、或设备、或者前述的任何适当组合。机器可读存储介质的更具体的示例将包括具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光学存储设备、磁性存储设备、或者前述的任何适当组合。
此外,尽管以特定顺序来描绘操作,但这不应被理解为要求以所示的特定顺序或顺序执行这样的操作,或者要求执行所有示出的操作,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。同样,尽管在上述讨论中包含了若干具体实现细节,但这些不应被解释为对本文描述的主题的范围的限制,而是作为对可能是特定实现所特定的特征的描述。在单独的实现的上下文中描述的某些特征也可以在单个实现中以组合方式来被实现。相反地,在单个实现的上下文中描述的各种特征也可以单独地在多个实现中被实现或者以任何适当的子组合被实现。
以下列出本文所描述的主题的一些示例实现。
在一方面,提供了一种设备。所述设备包括处理单元和存储器,所述存储器被耦合到所述处理单元并存储用于由所述处理单元执行的指令,所述指令在由所述处理单元执行时使所述设备:生成第一编辑规则,所述第一编辑规则指示对文档中的第一对象执行的编辑;基于所述第一编辑规则来生成编辑建议,所述编辑建议描述将对建议范围内的第二对象执行的候选编辑;以及以视觉形式向用户呈现所述编辑建议以供选择。
在一些实现中,所述指令在由所述处理单元执行时还使所述设备:响应于所述编辑建议被所述用户选择,将所述编辑建议应用于所述第二对象。
在一些实现中,所述第一编辑规则包括多个条件和结论,所述多个条件指示所述第一对象在所述编辑之前的属性值对,所述结论指示所述第一对象的经编辑的属性值对,并且所述指令在由所述处理单元执行时使所述设备:从所述第一编辑规则生成多个第二编辑规则,所述多个第二编辑规则中的每一个与所述建议范围内的对象中的至少一个对象匹配,并且所述多个第二编辑规则的条件被包括在所述第一编辑规则的所述多个条件中;选择所述多个第二编辑规则中的一个第二编辑规则,所选择的第二编辑规则与所述第一编辑规则具有最小差异;以及基于所述所选择的第二编辑规则来生成所述编辑建议。
在一些实现中,所述指令在由所述处理单元执行时还使所述设备:基于除所述所选择的第二编辑规则之外的所述多个第二编辑规则来生成另外的编辑建议;以及以与所述多个第二编辑规则和所述第一编辑规则的差异相关联的顺序来向所述用户呈现所述另外的编辑建议以供选择。
在一些实现中,所述指令在由所述处理单元执行时还使所述设备:响应于用户对第三对象的选择,生成建议将所述第一编辑规则应用于所述第三对象的编辑建议。
在一些实现中,所述指令在由所述处理单元执行时还使所述设备:经由用户界面呈现所述编辑建议作为对所述文档的预览,其中所述编辑建议被应用于所述第二对象。
在一些实现中,所述指令在由所述处理单元执行时还使所述设备:响应于将所述编辑建议应用于所述第二对象,更新所述第一编辑规则以指示对所述第二对象执行的所述编辑;基于经更新的第一编辑规则来重新生成所述编辑建议,经重新生成的编辑建议描述将对所述建议范围内的第四对象执行的候选编辑;以及以视觉形式向所述用户呈现所述经重新生成的编辑建议以供选择。
在一些实现中,所述文档包括多个编辑单元,并且其中所述指令在由所述处理单元执行时还使得所述设备:响应于用户导航到所述多个编辑单元中的一个编辑单元,将所述建议范围更新为所述多个编辑单元中的所述一个编辑单元。
在一些实现中,所述指令在由所述处理单元执行时还使所述设备:响应于指示用户对第五对象的偏好的动作,生成指示所述第五对象的状态的所述第一编辑规则。
在另一方面,提供了一种方法。所述方法包括:生成第一编辑规则,所述第一编辑规则指示对文档中的第一对象执行的编辑;基于所述第一编辑规则来生成编辑建议,所述编辑建议描述将对建议范围内的第二对象执行的候选编辑;以及以视觉形式向用户呈现所述编辑建议以供选择。
在一些实现中,所述方法还包括:响应于所述编辑建议被所述用户选择,将所述编辑建议应用于所述第二对象。
在一些实现中,所述第一编辑规则包括多个条件和结论,所述多个条件指示所述第一对象在所述编辑之前的属性值对,所述结论指示所述第一对象的经编辑的属性值对,并且基于所述第一编辑规则来生成所述编辑建议包括:从所述第一编辑规则生成多个第二编辑规则,所述多个第二编辑规则中的每一个与所述建议范围内的对象中的至少一个对象匹配,并且所述多个第二编辑规则的条件被包括在所述第一编辑规则的所述多个条件中;选择所述多个第二编辑规则中的一个第二编辑规则,所选择的第二编辑规则与所述第一编辑规则具有最小差异;以及基于所述所选择的第二编辑规则来生成所述编辑建议。
在一些实现中,所述方法还包括:基于除所述所选择的第二编辑规则之外的所述多个第二编辑规则来生成另外的编辑建议;以及以与所述多个第二编辑规则和所述第一编辑规则的差异相关联的顺序来向所述用户呈现所述另外的编辑建议以供选择。
在一些实现中,基于所述第一编辑规则来生成所述编辑建议包括:响应于用户对第三对象的选择,生成建议将所述第一编辑规则应用于所述第三对象的编辑建议。
在一些实现中,以视觉形式向所述用户呈现所述编辑建议以供选择包括:经由用户界面呈现所述编辑建议作为对所述文档的预览,其中所述编辑建议被应用于所述第二对象。
在一些实现中,所述方法还包括:响应于将所述编辑建议应用于所述第二对象,更新所述第一编辑规则以指示对所述第二对象执行的所述编辑;基于经更新的第一编辑规则来重新生成所述编辑建议,经重新生成的编辑建议描述将对所述建议范围内的第四对象执行的候选编辑;以及以视觉形式向所述用户呈现所述经重新生成的编辑建议以供选择。
在一些实现中,所述建议范围是整个文档。
在一些实现中,所述文档包括多个编辑单元,并且其中所述方法还包括:响应于用户导航到所述多个编辑单元中的一个编辑单元,将所述建议范围更新为所述多个编辑单元中的所述一个编辑单元。
在一些实现中,该方法还包括:响应于指示用户对第五对象的偏好的动作,生成指示所述第五对象的状态的所述第一编辑规则。
在又一方面,提供了一种计算机程序产品。所述计算机程序产品被有形地存储在非暂态机器可读介质上并且包括机器可执行指令,所述指令当在设备上被执行时使所述设备执行所述方法的步骤。
尽管本主题已经以特定于结构特征和/或方法动作的语言进行了描述,但是应当理解,在所附权利要求中限定的主题不必限于上述具体特征或动作。相反,上述具体特征和动作作为实施权利要求的示例形式而被公开。

Claims (20)

1.一种设备,包括:
显示器;
与所述显示器通信的处理单元;
存储器,与所述处理单元通信并且存储用于由所述处理单元执行的指令,所述指令在由所述处理单元执行时,使所述设备:
接收由用户对文档中的第一对象执行的第一编辑,所述第一对象在所述显示器中所提供的用户界面的第一部分中被显示;
基于所述第一编辑生成编辑建议,所述编辑建议描述将要对第二对象执行的候选编辑;以及
在所述用户界面的第二部分中显示所述编辑建议的预览,就好像所述编辑建议对所述第二对象执行了一样。
2.根据权利要求1所述的设备,其中所述第一对象和所述第二对象是以下中的一项:形状、段落或文本运行。
3.根据权利要求1所述的设备,其中所述第一对象和所述第二对象共享至少一个属性。
4.根据权利要求1所述的设备,其中所述指令在由所述处理单元执行时还使所述设备:接收所述用户对要被应用到所述第二对象的所述编辑建议的选择。
5.根据权利要求4所述的设备,其中所述指令在由所述处理单元执行时还使所述设备:响应于接收到所述用户对所述编辑建议的所述选择,将所述编辑建议应用于所述第二对象。
6.根据权利要求1所述的设备,其中所述指令在由所述处理单元执行时还使所述设备:经由所述用户界面的所述第二部分,将所述编辑建议呈现给至少第三对象。
7.根据权利要求6所述的设备,其中所述用户界面的所述第二部分临近于相同的窗口中的所述用户界面的所述第一部分。
8.根据权利要求1所述的设备,其中所述指令在由所述处理单元执行时还使所述设备:
在所述用户界面中接收第二选择,所述第二选择指示所述用户期望查看所述用户界面的所述第二部分;以及
响应于所述第二选择,在所述用户界面的第二部分中显示所述编辑建议的预览,就好像所述编辑建议对所述第二对象执行了一样。
9.根据权利要求1所述的设备,其中所述指令在由所述处理单元执行时还使所述设备:
接收所述用户期望替换所述编辑建议的第三选择;
响应于所述第三选择,利用第二编辑建议替换所述编辑建议;以及
在所述用户界面的所述第二部分中显示如同被应用于所述第二对象的所述第二编辑建议的预览。
10.一种计算机实现的方法,包括:
接收由用户对文档中的第一对象执行的第一编辑,所述第一对象在显示器中所提供的用户界面的第一部分中被显示;
基于所述第一编辑生成编辑建议,所述编辑建议描述将要对第二对象执行的候选编辑;以及
在所述用户界面的第二部分中显示所述编辑建议的预览,就好像所述编辑建议对所述第二对象执行了一样。
11.根据权利要求10所述的方法,
接收所述用户对要被应用到所述第二对象的所述编辑建议的选择。
12.根据权利要求10所述的方法,还包括:
响应于接收到所述用户对所述编辑建议的所述选择,将所述编辑建议应用于所述第二对象。
13.根据权利要求12所述的方法,还包括:
在所述用户界面中接收第二选择,所述第二选择指示所述用户期望查看所述用户界面的所述第二部分;以及
响应于所述第二选择,在所述用户界面的第二部分中显示所述编辑建议的预览,就好像所述编辑建议对所述第二对象执行了一样。
14.根据权利要求10所述的方法,其中基于所述第一编辑规则生成编辑建议包括:
接收所述用户期望替换所述编辑建议的第三选择;
响应于所述第三选择,利用第二编辑建议替换所述编辑建议;以及
在所述用户界面的所述第二部分中显示如同被应用于所述第二对象的所述第二编辑建议的预览。
15.根据权利要求10所述的方法,其中所述第一对象和所述第二对象共享至少一个属性值对。
16.根据权利要求15所述的方法,其中所述编辑建议与所述属性值对相关联。
17.一种计算机程序产品,被有形地存储在非暂态机器可读介质上并且包括机器可执行指令,所述指令当在设备上被执行时使所述设备执行方法的步骤,所述方法包括:
接收由用户对文档中的第一对象执行的第一编辑,所述第一对象在显示器中所提供的用户界面的第一部分中被显示;
基于所述第一编辑生成编辑建议,所述编辑建议描述将要对第二对象执行的候选编辑;以及
在所述用户界面的第二部分中显示所述编辑建议的预览,就好像所述编辑建议对所述第二对象执行了一样。
18.根据权利要求17所述的计算机程序产品,其中所述文档包括多个编辑单元,并且其中所述方法还包括:
接收所述用户对要被应用到所述第二对象的所述编辑建议的选择;以及
响应于接收到所述用户对所述编辑建议的所述选择,将所述编辑建议应用于所述第二对象。
19.根据权利要求17所述的计算机程序产品,所述方法还包括:
在所述用户界面中接收第二选择,所述第二选择指示所述用户期望查看所述用户界面的所述第二部分;以及
响应于所述第二选择,在所述用户界面的第二部分中显示所述编辑建议的预览,就好像所述编辑建议对所述第二对象执行了一样。
20.根据权利要求17所述的计算机程序产品,所述方法还包括:
接收所述用户期望替换所述编辑建议的第三选择;
响应于所述第三选择,利用第二编辑建议替换所述编辑建议;以及
在所述用户界面的所述第二部分中显示如同被应用于所述第二对象的所述第二编辑建议的预览。
CN202110801111.2A 2015-12-29 2015-12-29 用于格式化文档对象的方法、设备和介质 Pending CN113536731A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110801111.2A CN113536731A (zh) 2015-12-29 2015-12-29 用于格式化文档对象的方法、设备和介质

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/CN2015/099512 WO2017113110A1 (en) 2015-12-29 2015-12-29 Formatting document objects by visual suggestions
CN202110801111.2A CN113536731A (zh) 2015-12-29 2015-12-29 用于格式化文档对象的方法、设备和介质
CN201580085592.4A CN108475258B (zh) 2015-12-29 2015-12-29 用于格式化文档对象的方法、设备和介质

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201580085592.4A Division CN108475258B (zh) 2015-12-29 2015-12-29 用于格式化文档对象的方法、设备和介质

Publications (1)

Publication Number Publication Date
CN113536731A true CN113536731A (zh) 2021-10-22

Family

ID=59224193

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202110801111.2A Pending CN113536731A (zh) 2015-12-29 2015-12-29 用于格式化文档对象的方法、设备和介质
CN201580085592.4A Active CN108475258B (zh) 2015-12-29 2015-12-29 用于格式化文档对象的方法、设备和介质

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201580085592.4A Active CN108475258B (zh) 2015-12-29 2015-12-29 用于格式化文档对象的方法、设备和介质

Country Status (4)

Country Link
US (4) US10970473B2 (zh)
EP (1) EP3398080A4 (zh)
CN (2) CN113536731A (zh)
WO (1) WO2017113110A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018081525A1 (en) * 2016-10-28 2018-05-03 Ebay Inc. Optimization of publication for target computing device
US10713424B2 (en) 2018-04-10 2020-07-14 Microsoft Technology Licensing, Llc Automated document content modification
US11194845B2 (en) 2019-04-19 2021-12-07 Tableau Software, LLC Interactive lineage analyzer for data assets
US11651003B2 (en) 2019-09-27 2023-05-16 Tableau Software, LLC Interactive data visualization interface for data and graph models
US10996930B1 (en) * 2019-10-29 2021-05-04 Microsoft Technology Licensing, Llc Rules generation using learned repetitive code edits
US11829421B2 (en) * 2019-11-08 2023-11-28 Tableau Software, LLC Dynamic graph generation for interactive data analysis

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05298292A (ja) * 1992-04-22 1993-11-12 Casio Comput Co Ltd 自動編集機能付き文書処理装置
JPH08227415A (ja) * 1995-02-21 1996-09-03 Fuji Xerox Co Ltd 文書編集装置
CN1228565A (zh) * 1997-07-18 1999-09-15 睿扬资讯股份有限公司 电脑文档自动检错、改错装置及方法
US6901384B2 (en) * 2000-06-03 2005-05-31 American Home Credit, Inc. System and method for automated process of deal structuring
AU2002224343A1 (en) * 2000-10-02 2002-04-15 Vialanguage, Inc. Machine editing system incorporating dynamic rules database
US20020173971A1 (en) * 2001-03-28 2002-11-21 Stirpe Paul Alan System, method and application of ontology driven inferencing-based personalization systems
US20050289463A1 (en) * 2004-06-23 2005-12-29 Google Inc., A Delaware Corporation Systems and methods for spell correction of non-roman characters and words
US20060143562A1 (en) * 2004-12-29 2006-06-29 Andreas Seurig Self-describing editors for browser-based WYSIWYG XML/HTML editors
US7716574B2 (en) * 2005-09-09 2010-05-11 Microsoft Corporation Methods and systems for providing direct style sheet editing
US20070061714A1 (en) 2005-09-09 2007-03-15 Microsoft Corporation Quick styles for formatting of documents
US20090292987A1 (en) * 2008-05-22 2009-11-26 International Business Machines Corporation Formatting selected content of an electronic document based on analyzed formatting
CN101706771A (zh) * 2009-11-06 2010-05-12 北京理工大学 一种基于模板的针对Word文档的智能格式检查方法
US8370156B1 (en) * 2010-01-20 2013-02-05 The Mathworks, Inc. Editing suggestions in different formalisms
US10409892B2 (en) * 2011-01-26 2019-09-10 Microsoft Technology Licensing, Llc Formatting data by example
EP3014484A4 (en) 2013-06-28 2017-05-03 Microsoft Technology Licensing, LLC Selecting and editing visual elements with attribute groups

Also Published As

Publication number Publication date
CN108475258B (zh) 2021-07-27
US11449667B2 (en) 2022-09-20
US20200285803A1 (en) 2020-09-10
EP3398080A4 (en) 2019-07-31
CN108475258A (zh) 2018-08-31
EP3398080A1 (en) 2018-11-07
WO2017113110A1 (en) 2017-07-06
US20220405465A1 (en) 2022-12-22
US10970473B2 (en) 2021-04-06
US11875107B2 (en) 2024-01-16
US20230409812A1 (en) 2023-12-21
US20210182472A1 (en) 2021-06-17

Similar Documents

Publication Publication Date Title
CN108475258B (zh) 用于格式化文档对象的方法、设备和介质
JP7354294B2 (ja) 階層流動コンポーネントおよび動的レイアウトを統合した応答編集および表示を提供するシステムおよび方法
CN105339931B (zh) 用于处理数据容器的方法和设备
US8438495B1 (en) Methods and systems for creating wireframes and managing containers
KR102096113B1 (ko) 판옵틱 가시화 도큐먼트 인쇄
EP2642414A2 (en) Panoptic visualization document database management
US20160189404A1 (en) Selecting and Editing Visual Elements with Attribute Groups
US10565280B2 (en) Website content identification in a content management system
JP2017500664A (ja) 多ディメンション・データー構造に対する実行のためのクエリー構築
US20160162165A1 (en) Visualization adaptation for filtered data
EP3408788B1 (en) Alignment of objects to multi-layer grid layouts
KR101546725B1 (ko) 반응형 레이아웃 설계 방법
KR20130095176A (ko) 선택된 데이터의 일시적인 형식화 및 도표화
US20110221764A1 (en) Laying out and cropping images in pre-defined layouts
US9104760B2 (en) Panoptic visualization document database management
US20130290837A1 (en) Method and Apparatus for Correcting Document Formatting Based on Source Document
US11714953B2 (en) Facilitating dynamic document layout by determining reading order using document content stream cues
US20130167016A1 (en) Panoptic Visualization Document Layout
US9524342B2 (en) Panoptic visualization document navigation
US10467782B2 (en) Interactive hierarchical bar chart
EP2711897A1 (en) Panoptic visualization document differencing
KR102111804B1 (ko) 판옵틱 가시화 도큐먼트 억세스 제어
US20190212904A1 (en) Interactive time range selector
EP3563253A1 (en) Representing position of graphical user interface elements with hierarchical identifiers
US20100021060A1 (en) Method for overlapping visual slices

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