定位屏幕元素
背景
诸如文字处理程序、电子表格程序、文本编辑程序、电子邮件程序等常规的“键入即看见”计算机应用程序通常输出信息以供在具有比任何打印机所提供的低得多的分辨率的监视器上显示。由此,打印机分辨率一般被称为“高”分辨率,而监视器分辨率通常相对地为“低”分辨率。这种低分辨率是由于在常规的监视器的显示屏幕上可以提供的像素数目的物理限制而引起的。虽然诸如基于等离子的监视器和液晶显示器等新技术使用较小的像素并由此比常规的监视器在每英寸上提供更多的像素,但是这些仍为新兴的技术比常规的监视器要贵的多,并且还是不能提供甚至是中等激光打印机可用的高分辨率。
理想的是,这些新兴技术可用于以基本上等于打印机提供的高分辨率来显示信息,以使在显示屏幕上叠加打印信息可以产生所呈现信息的相同大小和位置。虽然这种“最优”分辨率当前不可用,但是应用程序开发者努力至少维持在显示屏幕和打印文档之间一致的信息定位,即使结果是降低的可读性。为此,通常的做法是按比例缩小打印机的信息定位,以便在显示屏幕上显示。然而,通过这种缩小,所显示的信息看起来混合在一起,由此阻碍读者在字符之间进行区分的能力。这个问题还存在于公式构造中,公式通常包括彼此靠近的元素,诸如具有指数元素和分数的情况。
出于这些和其他考虑,作出了本发明。
概述
本发明一般涉及给定与显示屏幕相关联的分辨率约束,确定在显示屏幕上显示的元素的最优位置。更具体而言,本发明涉及考虑这种分辨率限制在显示屏幕上最优地定位公式的元素。例如,本发明适用于确定表示上标的屏幕元素相对于表示基字符的屏幕元素的最优位置,用于形成指数公式表达式。
响应于接收到在显示屏幕上显示屏幕元素的指令,本发明的一个实施例涉及确定在显示屏幕上显示屏幕元素的定位特性。该定位特性表示屏幕元素在显示屏幕的实际分辨率下的屏幕布局。针对与最优分辨率(OR)相关联的定位特性,分析所确定的屏幕元素在实际分辨率(AR)下的定位特性,以便确定在输出屏幕元素以供在屏幕上显示之前是否应该修改基于AR的定位特性。
在一个实施例中,该评估涉及确定根据基于AR的定位特性显示在显示屏幕上的屏幕元素和根据基于OR的定位特性显示在显示屏幕上的屏幕元素之间的位移程度。如果所确定的位移程度超过了一预定的阈值,则修改基于AR的定位特性,使得位移基本上等于该阈值且该屏幕元素根据经修改的定位特性被显示在显示屏幕上。否则,该屏幕元素根据原始的基于AR的定位特性被显示在显示屏幕上。
依照另一实施例,本发明涉及用于在显示屏幕上相对于第二屏幕元素定位第一屏幕元素的方法。响应于接收到与第二屏幕元素相邻地显示第一屏幕元素的请求,该方法涉及根据显示屏幕的实际分辨率确定用于相对于第二屏幕元素来显示第一屏幕元素的第一组定位特性。如果第一组定位特性指示第一屏幕元素会离开第二屏幕元素至少预定量的空白空间,则该方法包括根据从第一组定位特性确定的垂直定位和从基于最由分辨率的第二组定位特性确定的水平位置在显示屏幕上显示第一元素。
本发明的各个实施例可以被实现为计算机进程、计算系统或诸如计算机程序产品或计算机可读介质等制品。该计算机程序产品可以是可由计算机系统读取并编码了用于执行一计算机进程的指令的计算机程序的计算机存储介质。该计算机程序产品也可以是可由计算系统读取并编码了用于执行一计算机进程的指令的计算机程序的载波上的传播信号。
当阅读以下详细描述并观察相关联的附图之后,表征本发明的这些和各种其它特征以及优点将变得显而易见。
附图说明
图1示出了依照本发明的一个实施例的相对于彼此定位的屏幕元素的显示。
图2示出了其上可实现本发明的各实施例的示例性计算机系统。
图3是示出依照本发明一个实施例的用于相对另一屏幕元素定位图1中所示的屏幕元素的过程的操作特性的流程图。
图4示出了在屏幕的实际分辨率下显示在显示屏幕上的屏幕元素的屏幕布局的虚拟表示。
图5示出了基于最优分辨率显示在显示屏幕上的图4的屏幕元素的屏幕布局的虚拟表示。
图6示出了图4中所示的虚拟表示和图5中所示的虚拟表示之间比较。
图7是示出依照本发明的一个实施例的用于图3的定位过程的其他操作特性的流程图。
图8是示出依照本发明的一个实施例的用于图3的定位过程的其他操作特性的流程图。
详细描述
现在将在下文中参考其中示出了本发明的各实施例的附图更全面地描述本发明。然而,本发明可以具体化为许多不同的形式,并且不应该被解释为限于此处所提出的各实施例;而是提供这些实施例是为了使得本发明变得详尽和完整,并且完全将本发明的范围传达给本领域的技术人员。在全部附图中,相同的标号指示相同的元素。
一般而言,本发明涉及在显示屏幕上相对于彼此定位屏幕元素。依照一个实施例,屏幕元素是字符和/或连字的一个或多个图像表示(“图示符”(glyph))。依照一个示例性实施例,此处参考图示符描述的本发明个别地或共同地表示通过显示屏幕显示的文字处理文档中的公式中的表达式或子表达式。例如,图1示出了具有显示为通过显示屏幕102向用户呈现的文字处理文档105中的内容的图示符114-142的公式112。虽然这些图示符中的某一些(例如122)个别地表示单个公式表达式(“=”),然而其他图示符(例如124和126)共同地表示单个公式表达式(例如“X2”),而另一些图示符(例如148和150)共同地表示完整的公式表达式的单个子表达式(例如“Xab”)。
本发明的各实施例此处是参考根据本发明的一个示例性实施例相对于彼此定位图示符114-142来形成公式112的表达式和子表达式而示出的。图1示出了在图示符114-142已被定位后,并且因此已形成了公式表达式和子表达式之后的时间点处的公式112。另一方面,图3-7示出了依照本发明的一个实施例用于定位图示符114-142以便呈现该所得公式112的过程300。然而,在参考这些附图进一步描述定位过程300之前,在图2中示出并在以下段落中描述了实现过程300的示例性计算环境(例如计算设备200)。
在其最基本配置中,计算设备200包括至少一个处理单元202和存储器204。取决于计算设备200的确切配置和类型,存储器204可以是易失性的(诸如RAM)、非易失性的(诸如ROM、闪存等)或这两者的某个组合。计算设备200的最基本配置在图2中由虚线206示出。此外,计算设备200可以具有另外的特征/功能。例如,计算设备200也可以包括另外的存储(可移动和/或不可移动),包括但不限于磁盘或光盘或磁带。这种另外的存储在图2中用可移动存储208和不可移动存储210示出。
此处所使用的计算机存储介质包括以用于储存诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任一方法或技术实现的易失性和非易失性,可移动和不可移动介质。系统存储器204、可移动存储208和不可移动存储210都是计算机存储介质的示例。计算机存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储设备、或可以用来储存所期望的信息并可由计算机200访问的任一其它介质。任何这种计算机存储介质都可以是设备200的一部分。
计算设备200也可以包括用于与其他设备通信的通信连接212。通信连接212是通信介质的一个示例。通信介质通常以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并包括任一信息传送介质。术语“已调制数据信号”指以对信号中的信息进行编码的方式设置或改变其一个或多个特征的信号。作为示例而非局限,通信介质包括有线介质,如有线网络或直接连线连接,以及无线介质,如声学、射频(RF)、红外线和其它无线介质。
计算设备200也可以包括输入设备214,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备等。也可以包括诸如显示器、扬声器、打印机等输出设备216。所有这些设备在本领域中是公知的,无需在此赘述。
计算设备200通常包括至少某种形式的计算机可读介质。计算机可读介质可以是可由处理单元202访问的任何可用介质。作为示例而非局限,计算机可读介质可以包括计算机存储介质和通信介质。任何以上的组合也应该包括在计算机可读介质的范围内。
计算设备200可使用到一个或多个远程计算机(未示出)的逻辑连接在网络化环境中操作。远程计算机可以是个人计算机、服务器计算机系统、路由器、网络PC、对等设备或其它常见的网络节点,并通常包括以上相对于计算设备200所描述的许多或所有元件。计算设备200和远程计算机之间的逻辑连接可以包括局域网(LAN)和广域网(WAN),但也可以包括其他网络。这类网络环境常见于办公室、企业范围计算机网络、内联网和因特网。
当在LAN网络环境中使用时,计算设备200通过网络接口或适配器连接到LAN。当在WAN网络环境中使用时,计算设备200通常包括调制解调器,或用于通过诸如因特网等WAN建立通信的其他装置。调制解调器可以是内置或外置的,它通过通信连接212或其他合适的机制连接到计算机处理器202。在网络化环境中,程序模块或其部分可以被存储在远程存储器存储设备中。作为示例而非局限,远程应用程序可以驻留在连接到远程计算机系统的存储器设备上。应该理解,所解释的网络连接是示例性的,可以使用在计算机之间建立通信链路的其他手段。
了解了图2的计算环境之后,以下结合定位过程300描述的各种示例性实施例的逻辑操作可以被实现为(1)在计算系统上运行的计算机实现的动作的序列或程序模块,和/或(2)计算系统中的互连机器逻辑电路或电路模块。实现是取决于实现本发明的计算系统的性能要求的选择问题。因此,组成此处所描述的示例性实施例的逻辑操作被不同地称为操作、结构设备、动作或模块。本领域的技术人员会认识到,这些操作、结构设备、动作和模块可以用软件、固件、专用数字逻辑和/或以上的任意组合来实现,而不背离所附权利要求所述的本发明的精神和范围。
现在参考图3,定位过程300具体化为由在计算设备200上实现的应用程序实施的操作特性。示例性应用程序包括但当然不局限于,文字处理应用程序、电子表格应用程序、演示应用程序、应用程序开发应用程序、文本编辑器应用程序、电子邮件应用程序和web浏览器。由此,定位过程300可用于在显示屏幕(例如102)上彼此相对地定位任何类型的屏幕元素。
依照一个示例性实施例,定位过程300示出了图1的公式112的构造,这是通过彼此相对地定位图示符(例如114-142)来形成和排列公式112的表达式和子表达式来完成的。为了说明起见,参考在公式112的构造期间的时间点来描述定位过程300,在该时间点处,正相对另一屏幕元素(即基本图示符112(“X”)来定位屏幕元素(即上标图示符126(“2”)),以便在显示屏幕102上呈现指数公式表达式“X2”。同样地,为了示出定位过程300的执行,对图3的文字中术语“屏幕元素”的参考是指上标图示符126(“2”),而对该图的文字中术语“表达式”的参考是指完整的表达式“X2”。更进一步地,图4和6顺序地描述了关于该示例性说明对定位过程300的执行的概念性说明,并由此结合其进行描述。
虽然以下仅描述了定位过程300的单次迭代,但是该过程300被反复地实施以完成对整个公式112的显示。定位过程300由此涉及被同时(例如并发处理线程)或顺序地调用来定位各个图示符114-142以便形成公式112的表达式和子表达式的操作流程(即,“操作流”)。例如,以下更详细描述的图8示出了依照本发明的一个示例性实施例的关于相对于图示符138来定位图示符140和142以及相对于图示符146来定位图示符148和150以形成嵌套的指数表达式的定位过程300的递归特性。
定位过程300的操作流从开始操作302处开始,并且以终止操作320结束。开始操作302是响应于接收到显示公式表达式的指令而启动的。因此,关于这里提供的示例性说明,这种指令涉及将上标图示符126与基本图示符124相邻地定位以形成指数表达式“X2”的请求。操作流从开始操作302传到第一创建操作304。
第一创建操作304确定显示屏幕102的实际分辨率,并接着在所确定的实际分辨率下创建指数表达式“X2”的像素化表示。显示屏幕102可用于以各种分辨率显示图示符,且因此,实际分辨率可以根据实现定位过程300的时间而改变。由此,本发明的一个实施例涉及根据对当前屏幕显示设置的评估来确定当前实际分辨率。
像素化表示是将以实际分辨率与基本图示符124相邻地显示的上标图示符126的虚拟的、存储器内的表示。由此,该表示被具体化为在用于管理定位过程300的应用程序内部维护的数据结构,并且至少在该时间点并不被显示为到显示屏幕102的输出。该数据结构包括标识实际分辨率下用于上标图示符126和基本图示符124的定位特性(即屏幕布局)的数据,更具体而言,为显示屏幕102上的哪些像素要被着色以提供指数公式表达式“X2”的图像。为了说明起见,图4示出了根据由第一创建操作304创建的像素化表示125将在显示屏幕102上与基本图示符124相邻地显示的上标图示符126。该操作流从第一创建操作304传到第二创建操作306。
第二创建操作306确定最优分辨率,并接着以所确定的最优分辨率创建指数公式表达式“X2”的表示。该最优分辨率表示是当显示屏幕102以最优分辨率显示图示符时,将与基本图示符124相邻地显示的上标图示符126的虚拟的、存储器内的表示。由此,该表示被具体化为在用于管理定位过程300的应用程序内部维护的数据结构,并且并不被显示为到显示屏幕102的输出。该数据结构包括定义在最优分辨率下用于上标图示符126和基本图示符124的假想定位特性(即假想屏幕布局)的坐标。
在一个实施例中,最优分辨率由管理定位过程300的应用程序的开发者定义。依照另一实施例,可以根据与连接到计算设备200上的打印机相关联的分辨率来定义最优分辨率。当确定最优分辨率并创建了指数公式表达式“X2”的相关联的表示之后,该操作流从第二创建操作306传到按比例缩放操作308。
按比例缩放操作308按比例缩小最优分辨率表示,以符合与显示屏幕102相关联的分辨率约束。为此,按比例缩放操作308将一分辨率因子应用于定义最优分辨率下的上标图示符126和基本图示符124的假想屏幕布局的定位特性(即坐标)。依照一个实施例,该分辨率因子是基于所定义的最优分辨率与显示屏幕102的实际分辨率的比率的。或者,该分辨率因子可以用使得最优分辨率与实际分辨率有关的其他数学考虑来定义。
一旦被定义,该分辨率因子即被应用于最优分辨率坐标,由此呈现表示上标图示符126和基本图示符124的按比例缩小的最优分辨率表示的、按比例缩小或“向下舍入”的坐标集。与最优分辨率表示一样,该按比例缩小的最优表示被具体化为在用于管理定位过程300的应用程序内部维护的数据结构,并且并不被显示为到显示屏幕102的输出。图5示出了根据按比例缩小的最优分辨率表示127将与基本图示符124相邻地在显示屏幕102上显示的上标图示符126。该操作流从按比例缩放操作308传到比较操作310。
比较操作310分析像素化表示125和按比例缩小的最优分辨率表示127指定的屏幕布局,以确定当在显示屏幕102上显示时这些表示(125、127)之间的上标表示126的位移程度。如上所述,由两种表示指定的屏幕布局被具体化为在管理定位进程300的应用程序内维护的数据结构。比较操作310由此通过比较两种屏幕布局相对于彼此的定位来呈现两种表示之间的分析。在一个实施例中,比较操作310涉及在两个屏幕布局上选择上标图示符126的共同点(例如左下角)并测量在共同点之间存在的像素的个数。在该实施例中,比较操作310涉及可以通过在显示屏幕102上一起显示像素化表示125和按比例缩小的最优分辨率表示127并确定它们之间上标126的位移来逻辑地表示的分析,如图6中所示。
当比较操作310确定了像素化表示125的上标图示符126和按比例缩小的最优分辨率表示的上标图示符126之间的位移程度(以像素数为单位)后,该操作流传到查询操作312。查询操作312确定由比较操作310确定的位移程度是否超过为最优定位定义的最大像素位移值。该最大像素位移值表示可以在显示屏幕上的经评估的图示符的实际分辨率表示和显示屏幕102上该图示符的经按比例缩小的最优分辨率表示之间存在的像素的最大数目。该最大像素位移值在不同的字体之间可以不同,它可以由应用程序的开发者或应用程序的用户来定义(例如通过“选项”对话框等来定制显示属性)。
如果位移程度超过最大像素位移,那么查询操作312将操作流传到移位操作314。移位操作314使得像素化表示125上的上标图示符126朝着按比例缩小的最优分辨率表示127上的上标图示符126移位,以使它们之间的位移程度等于最大像素位移值,并且由此处于“允许的”像素范围内。这样,根据像素化表示125中的移位修改了标识实际分辨率下用于上标图示符126的屏幕布局的数据。该操作流从移位操作314传到第一输出操作316。
第一输出操作316根据当前为像素化表示125指定的经移位的屏幕布局来指定要着色以便在显示屏幕102上显示上标图示符126的适当像素。第一输出操作316由此导致上标图示符126被输出到显示屏幕102以便向用户显示,如图1中所示。该操作流从第一输出操作316到终止操作320处结束。
再次参考查询操作312,如果由比较操作310确定的位移程度不超过为最优定位定义的最大像素位移值,那么像素化表示125被认为在相对于按比例缩小的最优分辨率表示127的“允许的”像素范围内。从而,该操作流传到第二输出操作318。第二输出操作318根据为像素化表示125指定的屏幕布局指定要着色以便在显示屏幕102上显示上标图示符126的适当像素。由此,如同第一输出操作316一样,第二输出操作318导致上标图示符126被输出到显示屏幕102以便向用户显示,如图1中所示。
现在转向图7,依照本发明的一个实施例示出了用于图3的定位过程300的操作流330。在该实施例中,定位过程300包括当完成按比例缩放操作308后调用的查询操作334。查询操作334判定被请求显示的图示符之前是否有至少预定量的空间(即“空白空间”)。在一个实施例中,这种预定量的空间由应用程序的开发者确定。例如,预定量的空间可以被定义为通常已知与运算符号相关联的空白空间的量。示例性运算符号包括等号、加号和减号。由此,表示运算符号的图示符通常包括用于定位附近的任何图示符的足够的空白空间,并且由此消除了确定是否应该移动这些基于运算符号的图示符或这些基于运算符号的图示符之后的任何图示符的位置的需要。实际上,关于具有子表达式的分数公式表达式,诸如a+b/x+y,这种大量的空白空间通常导致子表达式中的运算符号(例如+)在垂直方向上对齐,使得一个运算符号基本上位于另一个的上方。
如果查询操作334确定被请求显示的图示符之前有预定量的空间,那么定位过程300的操作流被直接传到部分移位操作336。部分移位操作336部分地基于像素化表示,并部分地基于按比例缩小的最优分辨率表示,来确定图示符的位置。例如,在一个实施例中,部分移位操作336对由像素化表示指定的图示符的水平定位进行移位,以便与由按比例缩小的最优分辨率表示指定的图示符的水平定位匹配,而同时维持由像素化表示指定的图示符的垂直定位。由此,用于显示所请求的图示符的x坐标是根据按比例缩小的最优分辨率表示来确定的,而y坐标是根据像素化表示来确定的。接着,该操作流从部分移位操作336经由第一传递操作336传到第一输出操作316。
然而,如果查询操作334确定被请求显示的图示符之前没有预定量的空间,那么定位过程300的操作流通过第二传递操作338传到比较操作310,由此如上所述地继续定位过程300。
虽然以对结构化特征、方法动作和包含这种动作的计算机可读介质专用的描述了本发明,但是应该理解,在所附权利要求书中定义的本发明不必限于所述的具体结构、动作或介质。本领域的技术人员会认识到在本发明的范围和精神内的其他实施例或改进。
例如,虽然示例性屏幕元素在此处被描述为表示体现公式表达式的字符和连字的图示符,但是应该理解,本发明适用于定位任何类型的屏幕元素。此外,本发明的各实施例在此处是参考文字处理文档中的这些示例性屏幕元素的定位来描述的。然而,本发明可以等价地应用于其他类型的电子文档,并且就此而言可用于提供显示屏幕元素的媒介的任何电子文档。
此外,计算设备200仅是合适的操作环境的一个示例,而不旨在提出对本发明的使用范围和功能的任何限制。其他适合与本发明一起使用的公知的计算系统、环境和/或配置的示例包括但不限于个人计算机、服务器计算机、手持式或膝上型设备、多处理器系统、基于微处理器的系统、可编程消费电子产品、网络PC、微型计算机、大型计算机、以及包括任何以上系统或设备的分布式计算环境等等。
此外,当结合相对于由单个图示符形成的屏幕元素(基本图示符124“X”)来定位同样由单个图示符形成的另一屏幕元素(即上标图示符126“2”)来描述时,定位过程300也适用于相对于由一个或多个图示符形成的屏幕元素来定位由多个图示符形成的屏幕元素。例如,定位过程300适用于相对于彼此定位分数表达式的图示符(例如130、132和134)以及相对于基本图示符(例如138和146)来定位嵌套的上标图示符(例如140、142、148和150)。关于后者,本发明的各实施例涉及组成表达式的子表达式的屏幕元素的定位。为此,定位过程300是结合定义用于实现过程300的递归程序的另一组操作组来管理的,如图8中的示例性方法所示。具体地,图8示出了递归地定位屏幕元素,以便定义诸如嵌套指数(140/142和148/150)等具有子表达式的表达式的过程800。
使用以第一传递操作802开始并且以终止操作822结束的操作流来执行递归定位过程800。第一传递操作802响应于开始操作302的启动而开始,并且用于将定位过程300的操作流从开始操作302传递到调用第一创建操作304之前的第一查询操作804处。这样,开始操作802被触发以响应于接收显示公式表达式的指令来启动递归定位过程800,如以上参考开始操作302所描述的。第一查询操作804接着判定所请求的公式表达式是否包括任何子表达式。如果是,那么第一查询操作804将操作流传到选择操作808。否则,第一查询操作804将操作流传到第二传递操作806,并且定位过程在如上所述的第一创建操作304处继续。
示出了相对于示例性公式112的第一查询操作804,使用上标图示符126和基本图示符124形成的公式表达式“X2”不包括任何子表达式,由此,在这种情况下,该操作804将操作流传给第二传递操作806。然而,使用图示符146、148和150形成的公式表达式“Xab”包括一个子表达式(即“ab”),由此,在这种情况下,第一查询操作804可以将操作流传到选择操作808。由此,为了示出递归定位过程800,在此处示出了后一公式表达式,即“Xab”。
选择操作808选择体现相对于表达式的基本屏幕元素的最外面的子表达式的图示符,以供递归定位过程800进行初始评估。有关下标和下标子表达式,最外面的子表达式是指右侧最远的子表达式,即表达式中“最右边”的子表达式。有关本说明,公式表达式“Xab”仅具有一个子表达式,即“ab”,由此,该子表达式体现将应用于递归定位过程800的最外面的子表达式。由此,选择操作810选择图示符148和150作为屏幕元素,以供递归定位过程800进行初始评估。在该选择之后,递归定位过程800的操作流传到第一创建操作810。
第一创建操作810确定最优分辨率,并接着在所确定的最优分辨率下创建所选的子表达式“ab”的表示。最优分辨率表示是当显示屏幕102以最优分辨率显示图示符时,将与基本图示符148(“a”)相邻地显示的图示符150(“b”)的虚拟的、存储器内的表示。该表示被具体化为在用于管理递归定位过程800的应用程序内部维护的数据结构,并且并不被显示为到显示屏幕102的输出。该数据结构包括定义在最优分辨率下图示符150(“b”)相对于图示符148(“a”)的假想定位特性(即假想屏幕布局)。在确定最优分辨率并创建了所选的子表达式“ab”的相关联的表示之后,该操作流从第一创建操作810传递到按比例缩放操作812。
按比例缩放操作308按比例缩小最优分辨率表示,以符合与显示屏幕102相关联的分辨率约束。为此,按比例缩放操作812将一分辨率因子应用于定义最优分辨率下图示符150(“b”)相对于图示符148(“a”)的假想屏幕布局的定位特性(即坐标)。该最优分辨率坐标由此呈现表示子表达式“ab”的按比例缩小的最优分辨率表示的、按比例缩小或向下“舍入”的坐标集。与最优分辨率表示一样,按比例缩小的最优表示被具体化为在用于管理递归定位过程800的应用程序内部维护的数据结构,并且并不被显示为到显示屏幕102的输出。该操作流从按比例缩放操作812传到第三传递操作814。
第三传递操作814将递归定位过程800的操作流传回到定位过程300。此外,第三传递操作814指定子表达式“ab”的按比例缩小的最优表示为相对于子表达式所相邻的屏幕元素(在本说明中为公式表达式“Xab”的基本图示符146(“X”))定位的“屏幕元素”。定位过程300于是如上所述地管理,使得相对于基本图示符146(“X”)最优地定位子表达式“ab”。当完成定位过程300时,该操作流从终止操作320处传来,并且经由第四传递操作816被传回递归定位过程800,以供进一步评估。第四传递操作816接受定位过程300的操作流,并且在第五传递操作820处继续递归定位过程800的操作流。
第五传递操作820重新启动通过递归定位过程800迭代的每个子表达式的定位过程300,以使其中所包含的每个图示符被相对于彼此最优地定位。例如,关于本说明,使用定位过程300将图示符150(“b”)最优地与图示符148(“a”)相邻地定位。这样,评估公式表达式中的图示符的顺序相对于递归定位过程800的初始迭代被反转。当向每个子表达式应用定位过程300后,递归定位过程800的操作流在终止操作822处结束。