使用形状的公用图表.pdf

上传人:小** 文档编号:971714 上传时间:2018-03-22 格式:PDF 页数:22 大小:942.59KB
返回 下载 相关 举报
摘要
申请专利号:

CN201110027149.5

申请日:

2005.07.28

公开号:

CN102081522A

公开日:

2011.06.01

当前法律状态:

授权

有效性:

有权

法律详情:

专利权的转移IPC(主分类):G06F 9/44变更事项:专利权人变更前权利人:微软公司变更后权利人:微软技术许可有限责任公司变更事项:地址变更前权利人:美国华盛顿州变更后权利人:美国华盛顿州登记生效日:20150429|||授权|||实质审查的生效IPC(主分类):G06F 9/44申请日:20050728|||公开

IPC分类号:

G06F9/44; G06F17/30

主分类号:

G06F9/44

申请人:

微软公司

发明人:

D·P·考瑞; M·瓦菲亚季斯; S·L·肖

地址:

美国华盛顿州

优先权:

2004.09.15 US 10/941,566

专利代理机构:

上海专利商标事务所有限公司 31100

代理人:

张欣

PDF下载: PDF下载
内容摘要

一种用于呈现与文档相关联的图表的方法包括将图表对象转换成基于形状的图表定义,其中,该图表对象用图表元素定义图表,而基于形状的定义用形状定义图表,以及在文档中维护图表对象以允许访问包含在图表中的底层图表数据。一种系统包括用图表元素定义图表的图表对象、能用于呈现形状的图形模块、基于图表对象生成基于形状的图表定义的图表模块,其中,基于形状的图表定义用能由图形模块呈现的形状定义了图表。

权利要求书

1: 一种不管应用程序类型如何, 跨应用程序一致地呈现和处理与文档相关联的图表的 方法, 所述方法包括 : 接收文档中的一个图表对象, 所述图表对象用图表元素定义图表, 并且引用所述图表 所基于的底层图表数据的数据源, 所述底层图表数据包括图表的数据值 ; 确定由所述图表对象表示的图表的类型 ; 从所述图表对象所引用的数据源检索底层图表数据 ; 基于图表类型和与多个图表元素的每一个关联的数据值将多个图表对象转换成多个 相应的形状 ; 基于所述多个相应的形状生成基于形状的图表定义 ; 基于所述基于形状的图表定义来呈现所述图表 ; 以及 在所述文档中维持所述图表对象, 以允许访问所述图表中包含的底层图表数据。
2: 如权利要求 1 所述的方法, 其特征在于, 所述检索包括从下列的一个或多个检索数 据: 文档 ; 数据库 ; 文件 ; 或 因特网。
3: 如权利要求 1 所述的方法, 其特征在于, 所述转换包括组合相关形状。
4: 如权利要求 3 所述的方法, 其特征在于, 还包括将组效果应用于组中的相关形状。
5: 如权利要求 1 所述的方法, 其特征在于, 所述转换是在文档被打开时自动执行的。
6: 如权利要求 1 所述的方法, 其特征在于, 所述转换是当图表被复制到另一文档时自 动执行的。
7: 如权利要求 1 所述的方法, 其特征在于, 还包括高速缓存所述基于形状的图表定义。
8: 如权利要求 1 所述的方法, 其特征在于, 还包括 : 基于所述图表对象处理底层图表数据 ; 以及 基于所述基于形状的图表定义处理所述图表中的形状。
9: 如权利要求 1 所述的方法, 其特征在于, 每个所述形状由相应的形状定义来描述, 每 个形状定义包括一个标识符。
10: 如权利要求 1 所述的方法, 其特征在于, 所述基于形状的图表定义是由可扩展标记 语言 (XML) 定义的。
11: 一种不管应用程序类型如何, 跨应用程序一致地呈现和处理与文档相关联的图表 的系统, 所述系统包括 : 用于接收文档中的一个图表对象的装置, 所述图表对象用图表元素定义图表, 并且引 用所述图表所基于的底层图表数据的数据源, 所述底层图表数据包括图表的数据值 ; 用于确定由所述图表对象表示的图表的类型的装置 ; 用于从所述图表对象所引用的数据源检索底层图表数据的装置 ; 用于基于图表类型和与多个图表元素的每一个关联的数据值将多个图表对象转换成 多个相应的形状的装置 ; 用于基于所述多个相应的形状生成基于形状的图表定义的装置 ; 2 用于基于所述基于形状的图表定义来呈现所述图表的装置 ; 以及 用于在所述文档中维持所述图表对象, 以允许访问所述图表中包含的底层图表数据的 装置。
12: 如权利要求 11 所述的系统, 其特征在于, 所述用于生成基于形状的图表 定义的装 置包括 : 用于将两个或多个相关形状放到一组中的装置。
13: 如权利要求 12 所述的系统, 其特征在于, 所述两个或多个相关形状对应于两个或 多个文本元素, 所述文本元素包括图表标签。
14: 如权利要求 12 所述的系统, 其特征在于, 所述两个或多个相关形状对应于所述图 表中一系列的数据点。
15: 如权利要求 12 所述的系统, 其特征在于, 还包括用于将组效果应用于所述组中的 所有形状的装置。
16: 如权利要求 12 所述的系统, 其特征在于, 还包括 : 用于检测所述形状组中一形状的第一用户操作的装置 ; 以及 用于响应于检测到所说第一用户操作, 通过将所述用户操作应用于所述组中的所有形 状来编辑所述图表的装置。
17: 如权利要求 16 所述的系统, 其特征在于, 还包括 : 用于检测所述形状组中一形状的第二用户操作的装置 ; 以及 用于响应于检测到所述第二用户操作, 通过将所述用户操作仅应用于所述形状来编辑 所述图表的装置。
18: 如权利要求 11 所述的系统, 其特征在于, 所述用于生成基于形状的图表定义的装 置包括 : 用于基于一图表元素的一个或多个数据值特征, 确定与所述图表元素相关联的形状的 维数的装置。
19: 如权利要求 11 所述的系统, 其特征在于, 每个所述形状由相应的形状定义来描述, 每个形状定义包括一个标识符。
20: 如权利要求 11 所述的系统, 其特征在于, 所述基于形状的图表定义是由 可扩展标 记语言 (XML) 定义的。
21: 一种不管应用程序类型如何, 跨应用程序一致地呈现和处理与文档相关联的图表 的系统, 包括 : 用图表元素定义图表的图表对象 ; 第一模块, 可用于呈现形状 ; 第二模块, 可用于在文档被打开时基于所述图表对象自动地生成基于形状的图表定 义, 其中所述基于形状的图表定义用能被第一模块呈现的形状来定义图表, 并且其中第二 模块还可操作用于确定图表对象所表示的图表的类型、 从被图表对象所引用的数据源检索 包括数据值在内的底层图表数据、 并基于图表类型以及和多个图表元素的每一个关联的数 据值将多个图表元素转换为多个相应形状。
22: 如权利要求 21 所述的系统, 其特征在于, 所述一个或多个数据源是下列的一个或 多个 : 3 与所述图表对象相关联的文档 ; 文件 ; 数据库 ; 或 因特网。
23: 如权利要求 21 所述的系统, 其特征在于, 所述第二模块将来自所述多个形状的相 关形状放入一组中。
24: 如权利要求 21 所述的系统, 其特征在于, 所述第二模块基于与所述多个图表元素 中的一个相关联的一个或多个数据值确定与所述图表元素相关联的形状的维数。
25: 如权利要求 21 所述的系统, 其特征在于, 每个所述形状由相应的形状定义来描述, 每个形状定义包括一个标识符。
26: 如权利要求 21 所述的系统, 其特征在于, 所述基于形状的图表定义是由可扩展标 记语言 (XML) 定义的。
27: 一种不管应用程序类型如何, 跨应用程序一致地呈现和处理与文档相关联的图表 的系统, 包括 : 包含图表的文档, 其中, 所述图表是由图表对象用图表元素来定义的 ; 用于呈现代表所述图表元素的形状的图形模块 ; 用于将所述图表元素转换成能由所述图形模块呈现的形状的装置, 其中该装置包括 : 用于确定图表类型的装置 ; 用于从被图表所引用的数据源检索底层图表数据的装置, 所述底层图表数据包括图表 的数据值 ; 用于基于图表类型和与多个图表元素的每一个关联的数据值将图表元素转换成相应 的形状的装置 ; 以及 用于基于多个相应形状生成基于形状的图表定义的装置。
28: 如权利要求 27 所述的系统, 其特征在于, 所述用于转换的装置包括用于基于所述 一个或多个数据值确定与所述图表元素相关联的形状的维数的装置。
29: 如权利要求 27 所述的系统, 其特征在于, 所述形状是在可扩展标记语言代码中指 定的。
30: 如权利要求 28 所述的系统, 其特征在于, 所述用于转换的装置还组合一个或多个 相关形状, 藉此组效果能被应用于所述组中所有的相关形状。
31: 如权利要求 27 所述的系统, 其特征在于, 每个所述形状由相应的形状定义来描述, 所述形状定义包括一个标识符。
32: 如权利要求 27 所述的系统, 其特征在于, 所述基于形状的图表定义是由可扩展标 记语言 (XML) 定义的。

说明书


使用形状的公用图表

    本申请是 2005 年 7 月 28 日提交的, 申请号为 “200510089517.3” 的, 发明名称为 “使用形状的公用图表” 的发明专利申请的分案申请。
     背景技术
     图表是数值数据的图形表示。 图表对于以简明且简单易懂的形式表示复杂的数据 尤为有用。在现今桌面出版环境中, 用户能够利用图表创建令人印象深刻的演示文稿。图 表是基于输入到诸如来自微软公司的 “EXCEL” 等应用程序的底层数据的。底层数据可随后 用于以多种不同的格式创建数据图表, 诸如饼状图、 条形图、 柱状图、 折线图等等。此外, 图 表的每一部分都能具有相关联的颜色、 纹理以及能够改善图表外观的其它效果, 其对于传 达信息非常重要。
     应用程序通常使用原函数 (primitive function) 调用来呈现图表。例如, 来自 “MICROSOFT WINDOWS” 的图形显示接口 (GDI 或 GDI+) 和来自 “MICROSOFTOFFICE” 的 GEL, 是通常由应用程序用于呈现图表的相对低级的接口。 此类低级的接口通常在像素级提供用 于呈现图表元素的函数。 例如, 为了画一线条, 应用程序必须指定一个起始像素和一个终止 像素。随后, 若该线条被拉伸, 则应用程序必须再次指定新的起始和 / 或终止像素。传统的 接口不包含用以处理诸如线条等一组像素的更高级函数, 诸如线条拉伸函数。
     另 一 个 问 题 是 不 同 的 应 用 程 序 通 常 不 同 地 呈 现 图 表。 例 如,在 “MICROSOFTWINDOWS” 中, 一个应用程序可使用 GDI, 与此同时另一个应用程序可使用对 GEL 和 GDI 的调用的组合。因为图表被不同地呈现, 因此不同的应用程序呈现的图表中类似的 元素对用户可能表现不同。因此, 例如, 应该在微软的 “POWERPOINT” 和 “EXCEL” 中在表现 为相同的图表可能在两个应用程序中表现得轻微的不同。
     用户常常从一个应用程序复制图表并将其导入另一个应用程序。例如, 图表从可 “EXCEL” 中被复制出并被粘贴至微软的 “WORD” 文档或 “POWERPOINT” 演示文稿中。传统上, 用户能将图表粘贴为图表对象或图片。 不幸的是, 当用户将图表粘贴为图片时, 图表与用于 创建图片的底层数据相分离。这意味着用户不能再通过粘贴的图表处理图表的底层数据。 例如, 一旦图表被粘贴为图片, 用户就不能在图表中编辑数值数据或标签。
     此外, 当它们没有被粘贴为图片时, 文档中的图表会具有某些缺点。 这些缺点主要 是由于该非图片格式的图表不是以心中的演示样子来生成的。例如, 有时图表以分散视觉 的图形失真效应出现。作为另一个示例, 当用户调整图表大小时, 由于字体缩放比例不精 确, 文本会表现得异常。作为又一个示例, 由于坐标映射的不同, 没有作为图片粘贴的图表 有时在计算机屏幕上表现得与其在打印输出中不同。
     因此, 需要跨应用程序一致地呈现以及处理图表的能力。 此外, 需要提供图表的一 致、 高质量的表示, 同时允许用户处理图表的底层元素。
     附图简述
     图 1 示出了使用利用公用图表组件的基于形状的图表的示例性图表系统。
     图 2 是示出利用从图表对象导出的形状呈现图表的流程图。图 3 是示出将图表对象转换成基于形状的图表定义的流程图。
     图 4 示出了能由转换引擎转换成形状和 / 或组合的具有数据、 标签、 系列以及其它 图表元素的图表。
     图 5 示出了能用于实现在此所述的公用图表系统和方法的通用计算机。
     详细描述
     在此所述的是用于呈现和处理图表的系统和方法的各种实现。 根据在此所述的各 种实现, 图表从图表对象被转换成基于形状的定义。该图表对象根据图表元素定义了图表 的各部分, 并参考图表所基于的底层图表数据。 尽管图表被呈现为形状, 但是维持图表对象 以允许处理底层图表数据。 对一个或多个应用程序公用的公用图表组件利用图表对象使用 户能够处理图表的底层元素。
     基于形状的定义根据形状定义了图表。 公用图形模块利用基于图形的定义为不同 的应用程序提供一致形状呈现服务和形状处理服务。 此外, 公用图形模块提供组处理功能, 借此一组相关形状能在图表中处理。
     图 1 示出了利用基于形状的图表定义实现公用图表的图表系统 100。术语公用图 表指的是跨多个和 / 或不同的应用程序的图表处理的公用方法。系统 100 中包括用于提供 对文档 104 的访问的应用程序 102 以及在计算机监视器屏幕 108 上呈现文档 104 的公用图 形模块 106。 正如在此使用的, 文档 104 是包括诸如文本和图形等用户可读信息的计算机可读 文件。 文档 104 可由用户通过应用程序 102 的用户界面查看和编辑。 文档类型的示例包括, 但不限于, 电子表格、 演示文稿或常规的文本文档。因此, 根据文档的类型, 应用程序 102 可 以是, 例如, 但不限于, 微软的 “WORD” 、 “POWERPOINT” 、 “EXCEL” 或其它应用程序。作为示例, 如屏幕 108 上所示, 文档 104 是一个 “演示文稿” , 其常常但不总是与 “POWERPOINT” 相关联。
     特别涉及本描述的是演示文稿中的图表 110。在图 1 的特定实现中所示的图表 110 是一个柱状图表。根据其它实现, 图表 110 不限于柱状图表, 而可以是任何其它类型的 图表, 诸如, 但不限于, 饼状图、 折线图或分散绘图。图表 110 中的各种数据最初由文档 104 指定。文档 104 用被称为图表对象 112 的图表定义来指定图表 110。
     图表对象 112 根据图表元素来定义图表 110。 一般而言, 图表元素是表示图表的一 个方面的数据单元。通常图表元素表示与图表所传达的信息或图表类型有关的图表方面。 示例性图表元素包含条 ( 例如, 用于条形图 )、 图表轴、 图表图例、 图表标题、 图表标签、 元素 颜色、 文本字体、 元素位置、 数据源等等。图表对象 112 的一种实现是一组可扩展标记语言 (XML) 代码。为了阐明, 以下所示是来自图表对象 112 的 XML 代码的示例 :
     文档 104 通常也具有其它文档数据 114, 包括但不限于, 文本和格式信息。根据一 个实现, 当应用程序 102 被启动且文档 104 被打开时, 图表对象 112 被传送到公用图形模块 的公用图形接口 116 以供呈现。
     公用图形接口 116 确定图表对象 112 表示的图形类型。可由公用图形接口 116 处 理的图形类型包括, 但不限于, 图解、 图表或自动形状 (autoshape)。 图表对象 112 包括指示 它定义图表的标识符。基于图表标识符, 公用图形接口 116 确定图表对象 112 定义了图表 并将其发送至公用图表模块 118。
     公用图表模块 118 包括将图表对象 112 转换成图形模块 106 用于向屏幕 108 呈现 图表 110 的形式的转换引擎 120。具体地, 转换引擎 120 将图表对象 112 转换成基于形状的 图表定义 122。 正如其名字暗示的, 基于形状的图表定义 122 跟据形状而不是图表元素来定 义图表。 正如将要描述的, 通过允许与图形交互的公用机制, 形状的使用能够改进图表的呈 现过程、 图表外观以及图表处理。
     在转换过程中, 转换引擎 120 进行多种操作。例如, 转换引擎 120 从图表对象 120 中引用的数据源检索构成图表 110 的数据 ( 例如, 数值数据 )。该数据源可以是文档 104 本 身, 或某些其它来源, 诸如, 但不限于, 另一文档、 数据库、 文件、 因特网或队列。 除数据之外, 转换引擎 120 可检索描述数据如何被格式化的数字格式信息。数字格式信息包括, 但不限 于, 货币符号、 小数位数、 百分比或分数格式、 或日期和时间格式。
     转换引擎 120 还将图表元素转换成形状, 诸如线、 矩形、 圆形、 三角形等等。形状是 仅表示图表元素的可视外观, 且不受限于或依赖于底层数值图表数据的数据单元。 因此, 例 如, 图表对象 112 中的条将被转换成基于形状的图表定义 122 中的矩形 ; 图表轴将被转换成 线, 等等。
     此外, 转换引擎 120 组合所选的相关形状以便于用户对相关形状的处理。公用图 形接口 116 提供允许用户与相关图形组交互的功能。转换引擎 120 通过组合诸如但不限于 相关数据标签和相关数据序列等相关图表元素利用那些功能。在检索数据、 将图表元素转 换成图形、 以及组合相关形状之后, 转换引擎 120 生成基于形状的图表定义 122。
     基于形状的图表定义 122 的实现由 XML 代码组成。为了阐明, 下面示出了来自基 于形状的图表定义 122 的 XML 代码 :
     图形接口 116 接收基于形状的图表定义 122, 并在屏幕 108 上将图表 110 呈现为一 组由基于形状的图表定义指定的形状。公用图形接口 116 通常通过对操作系统或显示控制 器函数作出调用来执行呈现。例如, 在 WINDOWS 操作系统中, 公用图形接口 116 可对图形显 示接口 (GDI+) 作出调用。
     正如所示的, 公用图形模块 106 包括一组公用图形服务 124。 公用图形服务 124 包 括应用程序能够访问以处理图表 110 的服务。公用图形服务 124 提供一个或多个应用程序 编程接口 (API) 以访问服务。
     因为公用图形模块 106 呈现形状, 所以图形服务 124 能够提供用于处理图表 110 的高级函数。例如, 图形服务 124 能够在图表内的图形上执行矢量图形函数。为了说明, 矩 形可以简单地通过调用图形服务 124 中移动形状的单个函数来移动, 而不用调用多个低级 函数以在一个新位置重画该矩形。此外, 公用图形模块 106 对于多个应用程序而言是公用 的, 因此形状处理 / 编辑以及外观在应用程序中是一致的。因此, 公用图形模块 106 可以呈 现用于编辑图表 110 中的形状的公用图形用户界面, 而不管应用程序 102 的类型如何。
     公用图形模块 106 还包括用于在屏幕 108 上呈现和 / 或处理文档 104 的内容的其 它服务 126。其它服务 126 包括但不限于, 存储器分配和文本相关处理。
     在图表 110 被呈现之后, 用户可处理图表 110 中的形状或图表 110 的底层数据。 大 部分编辑图表的命令被传递到公用图表组件 128。公用图表组件 128 随后根据命令行动或 将命令传递回图形服务 124。在将命令传递至图形服务 124 之前, 若有需要, 公用图表组件 128 可修改命令。若用户编辑底层图表数据并由此改变图表对象 112, 则转换引擎 118 自动 将图表对象 112 再一次转换成一已更新的基于形状的图表定义 122。
     当用户处理图表 110 的底层数据时, 公用图表组件 128 提供用于处理函数。在过
     去, 当用户处理图表时, 应用程序 102 执行处理。这导致了不同图表的表示和行为, 以及不 同应用程序间不同用户的交互。在此所述的实现中, 公用图表组件 128 提供用于处理构成 图表 110 的底层图表数据的一组公共函数。结果, 当用户编辑底层图表数据时, 图表 110 的 行为跨所有应用程序一致。
     有益的是, 尽管图表 110 是利用基于形状的图表定义 122 来呈现的, 但是底层图表 数据仍维持 ( 即, 没有被从中移动 ) 在图表对象 112 的文档 104 中。当用户编辑底层图表 数据 ( 例如, 数值数据 ) 时, 公用图表组件 128 使用图表对象 112。因此, 用户能够通过公用 图形接口 116 编辑图表 110 的形状, 并通过公用图表组件 128 编辑底层图表数据。即使文 档 104 被关闭, 图表对象 112 仍维持在文档 104 中。因此, 用户能将图表 110 作为图表和 / 或图片来编辑。
     在一个特定实现中, 基于形状的图表定义 122 可被保存以供将来使用。在这个实 现中, 基于形状的图表定义 122 可与文档 104 一起保存, 或在文档 104 被关闭之前保存在高 速缓存中 ( 没有示出 )。然后, 当文档 104 随后被打开, 从存储器中检索基于形状的图表定 义 122, 并用于呈现图表 110。在这个实现中, 转换引擎 120 不需要在每次打开文档 104 时 转换图表对象 112。 数据模块在一般意义上用于描述能够执行一个或多个指定功能的组件。 模块可以 用各种方式和形式来实现。例如, 模块可以用或硬件、 软件、 固件、 或硬件、 软件和 / 或固件 的各种组合来实现, 或被实现为硬件、 软件、 固件、 或硬件、 软件和 / 或固件的各种组合, 取 决于诸如速度、 成本、 大小等等。例如, 但不限于, 在一个实现中, 系统 100 中的每一个模块 都包括软件, 诸如存储在计算机可读介质中并在诸如下文相对于图 6 所描述的计算系统等 计算系统上执行的动态链接库 (DLL)。
     示例性操作
     图 2 示出了能由图 1 中所示的图表系统 100 实现的公用图表算法 200。公用图表 算法 200 同样可通过除了公用图表系统 100 之外的系统实现。公用图表算法 200 包括使用 形状来呈现与文档相关联的图表, 同时维持图表对象以使用户能够编辑底层图表数据的示 例性操作。
     最初, 检索操作 202 检索提供图表定义的图表对象。通常, 图表对象是从文档检索 的。图表对象定义图表中带有图表元素的部分, 诸如条、 轴、 标签、 数值数据等, 它们内在地 与图表有关。图表对象提供对图表所基于的底层图表数据的数据源的引用。
     转换操作 204 将图表对象转换成基于形状的图表定义, 以使图表可以利用形状来 呈现和编辑。形状指定了图表元素的可视外观 ( 例如, 大小、 位置和颜色 )。数据标签或其 他文本元素也可以通过创建其中带有相应文本或标签的矩形而被转换成形状。 文本或标签 矩形能被编辑, 以用指定的颜色来填充、 或具有边框、 或其它对矩形适当的图形效果。示例 性转换操作 204 在图 3 中示出并在下文描述。
     当图表对象被转换成基于形状的定义之后, 呈现操作 206 利用基于形状的定义中 指定的形状来呈现图表。 通常, 图表在由文档指定的位置上呈现。 图表中形状的位置、 颜色、 分组、 维数和其它属性可以由基于形状的定义指定。
     尽管图表是用形状来呈现的, 但是图表对象坚持与文档相关联。 换言之, 图表对象 与文档不分离。因为图表对象被维持, 所以用户能够继续编辑底层图表数据。无论何时用
     户通过编辑底层图表数据而编辑图表对象, 转换操作 204 就被执行。
     转到图 3, 示出了示例性转换操作 204。转换操作 204 可以在任何相关时间或响应 于相关事件而执行。例如, 但非限制, 只要文档被打开, 或当图表从一个文档中复制并导入 至另一个文档中时, 转换系统 204 就被自动执行。为了便于说明, 参考图 4 讨论转换操作 204。因此, 为了说明, 此处假设图表对象和相应的基于形状的定义定义了图 4 中示出的图 表 400。
     最初, 确定操作 302 确定图表 400 的类型。在示出的特定情况中, 图表对象包括指 示图表为柱状图的图表类型标识符。因此, 确定操作 302 确定图表为柱状图。确定图表的 类型是因为图表的类型通常与为数值赋予意义有关, 以及指示图表元素将如何被转换成形 状。
     检索操作 304 随后检索用作图表基础的底层数据。通常, 但不限于, 底层图表数 据包括数据值、 标签和数据格式, 诸如货币类型或小数点位置。底层数据从由图表对象 指定的一个或多个数据源中检索。因此, 参考图表 400, 所检索的底层数据包括数据标签 402a(6.0)、 数据标签 402a(8.9) 以及数据标签 402c(3.2)。
     转换操作 306 随后将图表元素转换成相应形状。参考图表 400, 例如, 图表对象中 的第一列被转换成矩形 404a, 其维数基于与列相关联的数据值。转换操作 306 通过首先识 别带有最大值 ( 在本情况中为 8.9) 的列, 并基于图表的高度线性缩放矩形 404a, 来确定矩 形 404a 的维数。类似地, 转换操作 306 将其它两列转换成相关联的矩形 404b 和 404c。 组合操作 307 随后组合相关形状。最好是将用户希望编辑或处理的形状组合成 一组。例如, 数据标签 402a、 402b 和 402c 可被组合。作为另一个示例, 矩形 404a、 404b 和 404c 可被组合。 组合操作 307 将指明哪个形状在组中的组指示符插入至基于形状的图表定 义中。
     相关形状被组合之后, 公用图形模块 ( 例如, 图 1 的公用图形模块 104) 可基于用 户输入应用组效果。例如, 若用户希望改变图表 400 中所有矩形的颜色, 则用户只需要选择 矩形中的一个并改变其颜色。该组十分有用, 因为用户可通过在组中的形状上点击一次就 能处理组中的所有形状。若用户希望处理组中的单个形状, 则用户在该形状上双击。
     示例性计算设备
     参考图 5, 用于实现在此描述的操作的示例性系统包括传统个人计算机 20 形式的 通用计算设备, 包括处理单元 21、 系统存储器 22 和系统总线 23。系统总线将包括系统存储 器 22 和处理单元 21 的各种系统组件链接在一起。系统总线 23 可以是若干类型总线结构 中的几种, 包括存储器总线或存储控制器、 外围总线、 以及使用各种总线体系结构中任何一 种的局部总线。系统存储器 22 包括只读存储器 (ROM)24 和随机存取存储器 (RAM)25。基本 输入 / 输出系统 26(BIOS) 存储在 ROM 24 内, 它包括诸如在启动时帮助个人计算机 20 内的 各个元件之间传输信息的基本例程。
     如同所述的, 在这个示例中, 个人计算机 20 还包括从硬盘 ( 未示出 ) 中读取或向 其写入的硬盘驱动器 27、 从可移动磁盘 29 中读取或向其写入的磁盘驱动器 28、 以及从诸如 CD ROM、 DVD 或其它光学介质等可移动光盘 31 中读取或向其写入的光盘驱动器 31。硬盘 驱动器 27、 磁盘驱动器 28 以及光盘驱动器 30 分别通过硬盘驱动接口 32、 磁盘驱动接口 33 和光盘驱动接口 34 连接至系统总线 23。这些示例性驱动器及其相关联的计算机可读介质
     向个人计算机 20 提供了计算机可读指令、 数据结构、 计算机程序和其它数据的非易失性存 储。
     尽管在此所述的示例性环境使用了硬盘、 可移动磁盘 29 和可移动光盘 31, 然而 本领域的技术人员应该理解, 能够存储计算机可以访问的数据的其它类型的计算机可读介 质, 如磁带盒、 闪存卡、 数字视频盘、 随机存取存储器 (RAM)、 只读存储器 (ROM) 等, 也可用在 示例性操作环境中。
     硬盘、 磁盘 29、 光盘 31、 ROM 24 或 RAM 25 上能够存储大量计算机程序, 包括操作 系统 35、 一个或多个应用程序 36、 其它程序 37 以及程序数据 38。用户通过诸如键盘 40 和 指示设备 42( 诸如鼠标 ) 等输入设备向个人计算机输入命令和信息。
     能够捕捉图像数据的摄像机 55( 如数字 / 电子照相机或摄影机、 或胶片 / 照片扫 描仪 ) 可作为个人计算机 20 的输入设备包括在内。图像数据通过适当的摄像机接口 57 输 入至计算机 20 中。 在该示例中, 接口 57 连接至系统总线 23, 从而允许图像被路由至并存储 在 RAM 25、 或与计算机 20 相关联的其它数据存储设备中。 尽管如此, 应该注意, 图像数据也 可以从上述的任何计算机可读介质输入至计算机 20, 而无需使用摄像机 55。
     其它输入设备 ( 未示出 ) 可包括麦克风、 操纵杆、 游戏垫、 圆盘式卫星天线、 扫描仪 等等。 这些和其它输入设备通常通过耦合至系统总线的串行端口 46 连接至处理单元 21, 但 也可通过其它接口连接, 诸如并行端口、 游戏端口、 通用串行总线 (USB) 等等。
     监视器 47 或其它类型的显示设备也通过接口, 如视频适配器连接至系统总线 23。 除监视器之外, 个人计算机通常也包括其它外围输出设备 ( 未示出 ), 如扬声器和打印机。
     个人计算机 20 可使用到诸如远程计算机 49 等一个或多个远程计算机的逻辑连接 在网络化环境中工作。远程计算机 49 可以是另一个人计算机、 服务器、 路由器、 网络 PC、 对 等设备或其它公共网络节点, 且通常包括许多或所有上文相对于个人计算机 20 所描述的 元件。
     图 5 所述的逻辑连接包括局域网 (LAN)51 和广域网 (WAN)52。这种网络环境常见 于办公室、 企业范围的计算机网络、 内联网以及因特网。
     当用于 LAN 网络环境时, 个人计算机 20 通过网络接口或适配器 53 连接至局域网 51。当用于 WAN 网络环境时, 个人计算机 20 通常包括调制解调器 54 或用于通过诸如因特 网等广域网 52 建立通信的其它装置。调制解调器 54 可以是内置的或外置的, 它通过串行 端口接口 46 连接至系统总线 23。
     在网络化环境中, 相对于个人计算机 20 所描述的计算机程序或其中的一部分可 存储在远程存储器设备中。 可以理解, 所示网络连接是示例性的, 且可以使用在计算机之间 建立通信链路的其他装置。
     各种模块和技术在此可以在诸如由一个或多个计算机或其它设备执行的程序模 块等计算机可执行指令的一般上下文中描述。一般而言, 程序模块包括执行特定任务或实 现特定抽象数据类型的例程、 程序、 对象、 组件、 数据结构等。通常, 程序模块的功能能如在 各种实施例中所希望的那样组合或分布。
     这些模块和技术的实现可存储在某种形式的计算机可读介质上或通过其传输。 计 算机可读介质可以是能被计算机访问的任何可用介质。 作为示例, 而非限制, 计算机可读介 质包括 “计算机存储介质” 和 “通信介质” 。“计算机存储介质” 包括以任何方法或技术实现的、 用于存储诸如计算机可读指 令、 数据结构、 程序模块或其它数据等信息的易失性和非易失性、 可移动和不可移动介质。 计算机存储介质包括, 但不限于, RAM、 ROM、 EEPROM、 闪存或其它存储器技术, CD-ROM、 数字多 功能盘 (DVD) 或其它光学存储、 磁带盒、 磁带、 磁盘存储器或其它磁存储设备、 或者任何其 它能够用于存储所需信息并能被计算机访问的介质。
     “通信介质” 通常以诸如载波或者其它传输机制等已调制数据信号的形式来具体 化计算机可读指令、 数据结构、 程序模块或其它数据。通信介质还包括任何信息传递介质。 术语 “已调制数据信号” 是指以在信号中编码信息的方式来设置或改变其一个或多个特征 的信号。 作为示例, 而非限制, 通信介质包括有线介质, 诸如有线网络或者直接有线连接, 以 及无线介质, 诸如声学、 射频 (RF)、 红外或者其它无线介质。以上任何一个的组合也应当被 包括在计算机可读介质的范围之内。
     尽管示例性操作实施例是根据常规计算机中的操作流程来论述的, 但是本领域的 技术人员可以意识到, 本发明可以用处理和 / 或传递视频信号的任何平台或环境中使用。 示例包括可编程和不可编程设备两者, 如具有诸如视频会议等的指定目的硬件、 固件、 半导 体设备、 手持式计算机、 掌上计算机、 蜂窝式电话等。
     尽管在附图中示出并在以上详细描述中描述了某些示例性方法和系统, 但是可以 理解, 所示以及所述的方法和系统并不限于在此所述的特定实现, 而是相反, 包括了大量重 排、 修改和代替, 而不脱离在此所述的精神。

使用形状的公用图表.pdf_第1页
第1页 / 共22页
使用形状的公用图表.pdf_第2页
第2页 / 共22页
使用形状的公用图表.pdf_第3页
第3页 / 共22页
点击查看更多>>
资源描述

《使用形状的公用图表.pdf》由会员分享,可在线阅读,更多相关《使用形状的公用图表.pdf(22页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN102081522A43申请公布日20110601CN102081522ACN102081522A21申请号201110027149522申请日2005072810/941,56620040915US200510089517320050728G06F9/44200601G06F17/3020060171申请人微软公司地址美国华盛顿州72发明人DP考瑞M瓦菲亚季斯SL肖74专利代理机构上海专利商标事务所有限公司31100代理人张欣54发明名称使用形状的公用图表57摘要一种用于呈现与文档相关联的图表的方法包括将图表对象转换成基于形状的图表定义,其中,该图表对象用图表元素定义图表,。

2、而基于形状的定义用形状定义图表,以及在文档中维护图表对象以允许访问包含在图表中的底层图表数据。一种系统包括用图表元素定义图表的图表对象、能用于呈现形状的图形模块、基于图表对象生成基于形状的图表定义的图表模块,其中,基于形状的图表定义用能由图形模块呈现的形状定义了图表。30优先权数据62分案原申请数据51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书3页说明书14页附图4页CN102081528A1/3页21一种不管应用程序类型如何,跨应用程序一致地呈现和处理与文档相关联的图表的方法,所述方法包括接收文档中的一个图表对象,所述图表对象用图表元素定义图表,并且引用所述图表所基。

3、于的底层图表数据的数据源,所述底层图表数据包括图表的数据值;确定由所述图表对象表示的图表的类型;从所述图表对象所引用的数据源检索底层图表数据;基于图表类型和与多个图表元素的每一个关联的数据值将多个图表对象转换成多个相应的形状;基于所述多个相应的形状生成基于形状的图表定义;基于所述基于形状的图表定义来呈现所述图表;以及在所述文档中维持所述图表对象,以允许访问所述图表中包含的底层图表数据。2如权利要求1所述的方法,其特征在于,所述检索包括从下列的一个或多个检索数据文档;数据库;文件;或因特网。3如权利要求1所述的方法,其特征在于,所述转换包括组合相关形状。4如权利要求3所述的方法,其特征在于,还包。

4、括将组效果应用于组中的相关形状。5如权利要求1所述的方法,其特征在于,所述转换是在文档被打开时自动执行的。6如权利要求1所述的方法,其特征在于,所述转换是当图表被复制到另一文档时自动执行的。7如权利要求1所述的方法,其特征在于,还包括高速缓存所述基于形状的图表定义。8如权利要求1所述的方法,其特征在于,还包括基于所述图表对象处理底层图表数据;以及基于所述基于形状的图表定义处理所述图表中的形状。9如权利要求1所述的方法,其特征在于,每个所述形状由相应的形状定义来描述,每个形状定义包括一个标识符。10如权利要求1所述的方法,其特征在于,所述基于形状的图表定义是由可扩展标记语言XML定义的。11一种。

5、不管应用程序类型如何,跨应用程序一致地呈现和处理与文档相关联的图表的系统,所述系统包括用于接收文档中的一个图表对象的装置,所述图表对象用图表元素定义图表,并且引用所述图表所基于的底层图表数据的数据源,所述底层图表数据包括图表的数据值;用于确定由所述图表对象表示的图表的类型的装置;用于从所述图表对象所引用的数据源检索底层图表数据的装置;用于基于图表类型和与多个图表元素的每一个关联的数据值将多个图表对象转换成多个相应的形状的装置;用于基于所述多个相应的形状生成基于形状的图表定义的装置;权利要求书CN102081522ACN102081528A2/3页3用于基于所述基于形状的图表定义来呈现所述图表的。

6、装置;以及用于在所述文档中维持所述图表对象,以允许访问所述图表中包含的底层图表数据的装置。12如权利要求11所述的系统,其特征在于,所述用于生成基于形状的图表定义的装置包括用于将两个或多个相关形状放到一组中的装置。13如权利要求12所述的系统,其特征在于,所述两个或多个相关形状对应于两个或多个文本元素,所述文本元素包括图表标签。14如权利要求12所述的系统,其特征在于,所述两个或多个相关形状对应于所述图表中一系列的数据点。15如权利要求12所述的系统,其特征在于,还包括用于将组效果应用于所述组中的所有形状的装置。16如权利要求12所述的系统,其特征在于,还包括用于检测所述形状组中一形状的第一用。

7、户操作的装置;以及用于响应于检测到所说第一用户操作,通过将所述用户操作应用于所述组中的所有形状来编辑所述图表的装置。17如权利要求16所述的系统,其特征在于,还包括用于检测所述形状组中一形状的第二用户操作的装置;以及用于响应于检测到所述第二用户操作,通过将所述用户操作仅应用于所述形状来编辑所述图表的装置。18如权利要求11所述的系统,其特征在于,所述用于生成基于形状的图表定义的装置包括用于基于一图表元素的一个或多个数据值特征,确定与所述图表元素相关联的形状的维数的装置。19如权利要求11所述的系统,其特征在于,每个所述形状由相应的形状定义来描述,每个形状定义包括一个标识符。20如权利要求11所。

8、述的系统,其特征在于,所述基于形状的图表定义是由可扩展标记语言XML定义的。21一种不管应用程序类型如何,跨应用程序一致地呈现和处理与文档相关联的图表的系统,包括用图表元素定义图表的图表对象;第一模块,可用于呈现形状;第二模块,可用于在文档被打开时基于所述图表对象自动地生成基于形状的图表定义,其中所述基于形状的图表定义用能被第一模块呈现的形状来定义图表,并且其中第二模块还可操作用于确定图表对象所表示的图表的类型、从被图表对象所引用的数据源检索包括数据值在内的底层图表数据、并基于图表类型以及和多个图表元素的每一个关联的数据值将多个图表元素转换为多个相应形状。22如权利要求21所述的系统,其特征在。

9、于,所述一个或多个数据源是下列的一个或多个权利要求书CN102081522ACN102081528A3/3页4与所述图表对象相关联的文档;文件;数据库;或因特网。23如权利要求21所述的系统,其特征在于,所述第二模块将来自所述多个形状的相关形状放入一组中。24如权利要求21所述的系统,其特征在于,所述第二模块基于与所述多个图表元素中的一个相关联的一个或多个数据值确定与所述图表元素相关联的形状的维数。25如权利要求21所述的系统,其特征在于,每个所述形状由相应的形状定义来描述,每个形状定义包括一个标识符。26如权利要求21所述的系统,其特征在于,所述基于形状的图表定义是由可扩展标记语言XML定义。

10、的。27一种不管应用程序类型如何,跨应用程序一致地呈现和处理与文档相关联的图表的系统,包括包含图表的文档,其中,所述图表是由图表对象用图表元素来定义的;用于呈现代表所述图表元素的形状的图形模块;用于将所述图表元素转换成能由所述图形模块呈现的形状的装置,其中该装置包括用于确定图表类型的装置;用于从被图表所引用的数据源检索底层图表数据的装置,所述底层图表数据包括图表的数据值;用于基于图表类型和与多个图表元素的每一个关联的数据值将图表元素转换成相应的形状的装置;以及用于基于多个相应形状生成基于形状的图表定义的装置。28如权利要求27所述的系统,其特征在于,所述用于转换的装置包括用于基于所述一个或多个。

11、数据值确定与所述图表元素相关联的形状的维数的装置。29如权利要求27所述的系统,其特征在于,所述形状是在可扩展标记语言代码中指定的。30如权利要求28所述的系统,其特征在于,所述用于转换的装置还组合一个或多个相关形状,藉此组效果能被应用于所述组中所有的相关形状。31如权利要求27所述的系统,其特征在于,每个所述形状由相应的形状定义来描述,所述形状定义包括一个标识符。32如权利要求27所述的系统,其特征在于,所述基于形状的图表定义是由可扩展标记语言XML定义的。权利要求书CN102081522ACN102081528A1/14页5使用形状的公用图表0001本申请是2005年7月28日提交的,申请。

12、号为“2005100895173”的,发明名称为“使用形状的公用图表”的发明专利申请的分案申请。背景技术0002图表是数值数据的图形表示。图表对于以简明且简单易懂的形式表示复杂的数据尤为有用。在现今桌面出版环境中,用户能够利用图表创建令人印象深刻的演示文稿。图表是基于输入到诸如来自微软公司的“EXCEL”等应用程序的底层数据的。底层数据可随后用于以多种不同的格式创建数据图表,诸如饼状图、条形图、柱状图、折线图等等。此外,图表的每一部分都能具有相关联的颜色、纹理以及能够改善图表外观的其它效果,其对于传达信息非常重要。0003应用程序通常使用原函数PRIMITIVEFUNCTION调用来呈现图表。。

13、例如,来自“MICROSOFTWINDOWS”的图形显示接口GDI或GDI和来自“MICROSOFTOFFICE”的GEL,是通常由应用程序用于呈现图表的相对低级的接口。此类低级的接口通常在像素级提供用于呈现图表元素的函数。例如,为了画一线条,应用程序必须指定一个起始像素和一个终止像素。随后,若该线条被拉伸,则应用程序必须再次指定新的起始和/或终止像素。传统的接口不包含用以处理诸如线条等一组像素的更高级函数,诸如线条拉伸函数。0004另一个问题是不同的应用程序通常不同地呈现图表。例如,在“MICROSOFTWINDOWS”中,一个应用程序可使用GDI,与此同时另一个应用程序可使用对GEL和GD。

14、I的调用的组合。因为图表被不同地呈现,因此不同的应用程序呈现的图表中类似的元素对用户可能表现不同。因此,例如,应该在微软的“POWERPOINT”和“EXCEL”中在表现为相同的图表可能在两个应用程序中表现得轻微的不同。0005用户常常从一个应用程序复制图表并将其导入另一个应用程序。例如,图表从可“EXCEL”中被复制出并被粘贴至微软的“WORD”文档或“POWERPOINT”演示文稿中。传统上,用户能将图表粘贴为图表对象或图片。不幸的是,当用户将图表粘贴为图片时,图表与用于创建图片的底层数据相分离。这意味着用户不能再通过粘贴的图表处理图表的底层数据。例如,一旦图表被粘贴为图片,用户就不能在图。

15、表中编辑数值数据或标签。0006此外,当它们没有被粘贴为图片时,文档中的图表会具有某些缺点。这些缺点主要是由于该非图片格式的图表不是以心中的演示样子来生成的。例如,有时图表以分散视觉的图形失真效应出现。作为另一个示例,当用户调整图表大小时,由于字体缩放比例不精确,文本会表现得异常。作为又一个示例,由于坐标映射的不同,没有作为图片粘贴的图表有时在计算机屏幕上表现得与其在打印输出中不同。0007因此,需要跨应用程序一致地呈现以及处理图表的能力。此外,需要提供图表的一致、高质量的表示,同时允许用户处理图表的底层元素。0008附图简述0009图1示出了使用利用公用图表组件的基于形状的图表的示例性图表系。

16、统。0010图2是示出利用从图表对象导出的形状呈现图表的流程图。说明书CN102081522ACN102081528A2/14页60011图3是示出将图表对象转换成基于形状的图表定义的流程图。0012图4示出了能由转换引擎转换成形状和/或组合的具有数据、标签、系列以及其它图表元素的图表。0013图5示出了能用于实现在此所述的公用图表系统和方法的通用计算机。0014详细描述0015在此所述的是用于呈现和处理图表的系统和方法的各种实现。根据在此所述的各种实现,图表从图表对象被转换成基于形状的定义。该图表对象根据图表元素定义了图表的各部分,并参考图表所基于的底层图表数据。尽管图表被呈现为形状,但是维。

17、持图表对象以允许处理底层图表数据。对一个或多个应用程序公用的公用图表组件利用图表对象使用户能够处理图表的底层元素。0016基于形状的定义根据形状定义了图表。公用图形模块利用基于图形的定义为不同的应用程序提供一致形状呈现服务和形状处理服务。此外,公用图形模块提供组处理功能,借此一组相关形状能在图表中处理。0017图1示出了利用基于形状的图表定义实现公用图表的图表系统100。术语公用图表指的是跨多个和/或不同的应用程序的图表处理的公用方法。系统100中包括用于提供对文档104的访问的应用程序102以及在计算机监视器屏幕108上呈现文档104的公用图形模块106。0018正如在此使用的,文档104是。

18、包括诸如文本和图形等用户可读信息的计算机可读文件。文档104可由用户通过应用程序102的用户界面查看和编辑。文档类型的示例包括,但不限于,电子表格、演示文稿或常规的文本文档。因此,根据文档的类型,应用程序102可以是,例如,但不限于,微软的“WORD”、“POWERPOINT”、“EXCEL”或其它应用程序。作为示例,如屏幕108上所示,文档104是一个“演示文稿”,其常常但不总是与“POWERPOINT”相关联。0019特别涉及本描述的是演示文稿中的图表110。在图1的特定实现中所示的图表110是一个柱状图表。根据其它实现,图表110不限于柱状图表,而可以是任何其它类型的图表,诸如,但不限于。

19、,饼状图、折线图或分散绘图。图表110中的各种数据最初由文档104指定。文档104用被称为图表对象112的图表定义来指定图表110。0020图表对象112根据图表元素来定义图表110。一般而言,图表元素是表示图表的一个方面的数据单元。通常图表元素表示与图表所传达的信息或图表类型有关的图表方面。示例性图表元素包含条例如,用于条形图、图表轴、图表图例、图表标题、图表标签、元素颜色、文本字体、元素位置、数据源等等。图表对象112的一种实现是一组可扩展标记语言XML代码。为了阐明,以下所示是来自图表对象112的XML代码的示例0021说明书CN102081522ACN102081528A3/14页70。

20、022说明书CN102081522ACN102081528A4/14页80023说明书CN102081522ACN102081528A5/14页90024文档104通常也具有其它文档数据114,包括但不限于,文本和格式信息。根据一个实现,当应用程序102被启动且文档104被打开时,图表对象112被传送到公用图形模块的公用图形接口116以供呈现。0025公用图形接口116确定图表对象112表示的图形类型。可由公用图形接口116处理的图形类型包括,但不限于,图解、图表或自动形状AUTOSHAPE。图表对象112包括指示它定义图表的标识符。基于图表标识符,公用图形接口116确定图表对象112定义了图。

21、表并将其发送至公用图表模块118。0026公用图表模块118包括将图表对象112转换成图形模块106用于向屏幕108呈现图表110的形式的转换引擎120。具体地,转换引擎120将图表对象112转换成基于形状的图表定义122。正如其名字暗示的,基于形状的图表定义122跟据形状而不是图表元素来定义图表。正如将要描述的,通过允许与图形交互的公用机制,形状的使用能够改进图表的呈现过程、图表外观以及图表处理。0027在转换过程中,转换引擎120进行多种操作。例如,转换引擎120从图表对象120中引用的数据源检索构成图表110的数据例如,数值数据。该数据源可以是文档104本身,或某些其它来源,诸如,但不限。

22、于,另一文档、数据库、文件、因特网或队列。除数据之外,转换引擎120可检索描述数据如何被格式化的数字格式信息。数字格式信息包括,但不限于,货币符号、小数位数、百分比或分数格式、或日期和时间格式。0028转换引擎120还将图表元素转换成形状,诸如线、矩形、圆形、三角形等等。形状是仅表示图表元素的可视外观,且不受限于或依赖于底层数值图表数据的数据单元。因此,例如,图表对象112中的条将被转换成基于形状的图表定义122中的矩形;图表轴将被转换成线,等等。0029此外,转换引擎120组合所选的相关形状以便于用户对相关形状的处理。公用图形接口116提供允许用户与相关图形组交互的功能。转换引擎120通过组。

23、合诸如但不限于相关数据标签和相关数据序列等相关图表元素利用那些功能。在检索数据、将图表元素转换成图形、以及组合相关形状之后,转换引擎120生成基于形状的图表定义122。0030基于形状的图表定义122的实现由XML代码组成。为了阐明,下面示出了来自基于形状的图表定义122的XML代码0031说明书CN102081522ACN102081528A6/14页100032说明书CN102081522ACN102081528A7/14页110033说明书CN102081522ACN102081528A8/14页120034说明书CN102081522ACN102081528A9/14页130035说明。

24、书CN102081522ACN102081528A10/14页140036图形接口116接收基于形状的图表定义122,并在屏幕108上将图表110呈现为一组由基于形状的图表定义指定的形状。公用图形接口116通常通过对操作系统或显示控制器函数作出调用来执行呈现。例如,在WINDOWS操作系统中,公用图形接口116可对图形显示接口GDI作出调用。0037正如所示的,公用图形模块106包括一组公用图形服务124。公用图形服务124包括应用程序能够访问以处理图表110的服务。公用图形服务124提供一个或多个应用程序编程接口API以访问服务。0038因为公用图形模块106呈现形状,所以图形服务124能够。

25、提供用于处理图表110的高级函数。例如,图形服务124能够在图表内的图形上执行矢量图形函数。为了说明,矩形可以简单地通过调用图形服务124中移动形状的单个函数来移动,而不用调用多个低级函数以在一个新位置重画该矩形。此外,公用图形模块106对于多个应用程序而言是公用的,因此形状处理/编辑以及外观在应用程序中是一致的。因此,公用图形模块106可以呈现用于编辑图表110中的形状的公用图形用户界面,而不管应用程序102的类型如何。0039公用图形模块106还包括用于在屏幕108上呈现和/或处理文档104的内容的其它服务126。其它服务126包括但不限于,存储器分配和文本相关处理。0040在图表110被。

26、呈现之后,用户可处理图表110中的形状或图表110的底层数据。大部分编辑图表的命令被传递到公用图表组件128。公用图表组件128随后根据命令行动或将命令传递回图形服务124。在将命令传递至图形服务124之前,若有需要,公用图表组件128可修改命令。若用户编辑底层图表数据并由此改变图表对象112,则转换引擎118自动将图表对象112再一次转换成一已更新的基于形状的图表定义122。0041当用户处理图表110的底层数据时,公用图表组件128提供用于处理函数。在过说明书CN102081522ACN102081528A11/14页15去,当用户处理图表时,应用程序102执行处理。这导致了不同图表的表示。

27、和行为,以及不同应用程序间不同用户的交互。在此所述的实现中,公用图表组件128提供用于处理构成图表110的底层图表数据的一组公共函数。结果,当用户编辑底层图表数据时,图表110的行为跨所有应用程序一致。0042有益的是,尽管图表110是利用基于形状的图表定义122来呈现的,但是底层图表数据仍维持即,没有被从中移动在图表对象112的文档104中。当用户编辑底层图表数据例如,数值数据时,公用图表组件128使用图表对象112。因此,用户能够通过公用图形接口116编辑图表110的形状,并通过公用图表组件128编辑底层图表数据。即使文档104被关闭,图表对象112仍维持在文档104中。因此,用户能将图表。

28、110作为图表和/或图片来编辑。0043在一个特定实现中,基于形状的图表定义122可被保存以供将来使用。在这个实现中,基于形状的图表定义122可与文档104一起保存,或在文档104被关闭之前保存在高速缓存中没有示出。然后,当文档104随后被打开,从存储器中检索基于形状的图表定义122,并用于呈现图表110。在这个实现中,转换引擎120不需要在每次打开文档104时转换图表对象112。0044数据模块在一般意义上用于描述能够执行一个或多个指定功能的组件。模块可以用各种方式和形式来实现。例如,模块可以用或硬件、软件、固件、或硬件、软件和/或固件的各种组合来实现,或被实现为硬件、软件、固件、或硬件、软。

29、件和/或固件的各种组合,取决于诸如速度、成本、大小等等。例如,但不限于,在一个实现中,系统100中的每一个模块都包括软件,诸如存储在计算机可读介质中并在诸如下文相对于图6所描述的计算系统等计算系统上执行的动态链接库DLL。0045示例性操作0046图2示出了能由图1中所示的图表系统100实现的公用图表算法200。公用图表算法200同样可通过除了公用图表系统100之外的系统实现。公用图表算法200包括使用形状来呈现与文档相关联的图表,同时维持图表对象以使用户能够编辑底层图表数据的示例性操作。0047最初,检索操作202检索提供图表定义的图表对象。通常,图表对象是从文档检索的。图表对象定义图表中带。

30、有图表元素的部分,诸如条、轴、标签、数值数据等,它们内在地与图表有关。图表对象提供对图表所基于的底层图表数据的数据源的引用。0048转换操作204将图表对象转换成基于形状的图表定义,以使图表可以利用形状来呈现和编辑。形状指定了图表元素的可视外观例如,大小、位置和颜色。数据标签或其他文本元素也可以通过创建其中带有相应文本或标签的矩形而被转换成形状。文本或标签矩形能被编辑,以用指定的颜色来填充、或具有边框、或其它对矩形适当的图形效果。示例性转换操作204在图3中示出并在下文描述。0049当图表对象被转换成基于形状的定义之后,呈现操作206利用基于形状的定义中指定的形状来呈现图表。通常,图表在由文档。

31、指定的位置上呈现。图表中形状的位置、颜色、分组、维数和其它属性可以由基于形状的定义指定。0050尽管图表是用形状来呈现的,但是图表对象坚持与文档相关联。换言之,图表对象与文档不分离。因为图表对象被维持,所以用户能够继续编辑底层图表数据。无论何时用说明书CN102081522ACN102081528A12/14页16户通过编辑底层图表数据而编辑图表对象,转换操作204就被执行。0051转到图3,示出了示例性转换操作204。转换操作204可以在任何相关时间或响应于相关事件而执行。例如,但非限制,只要文档被打开,或当图表从一个文档中复制并导入至另一个文档中时,转换系统204就被自动执行。为了便于说明。

32、,参考图4讨论转换操作204。因此,为了说明,此处假设图表对象和相应的基于形状的定义定义了图4中示出的图表400。0052最初,确定操作302确定图表400的类型。在示出的特定情况中,图表对象包括指示图表为柱状图的图表类型标识符。因此,确定操作302确定图表为柱状图。确定图表的类型是因为图表的类型通常与为数值赋予意义有关,以及指示图表元素将如何被转换成形状。0053检索操作304随后检索用作图表基础的底层数据。通常,但不限于,底层图表数据包括数据值、标签和数据格式,诸如货币类型或小数点位置。底层数据从由图表对象指定的一个或多个数据源中检索。因此,参考图表400,所检索的底层数据包括数据标签40。

33、2A60、数据标签402A89以及数据标签402C32。0054转换操作306随后将图表元素转换成相应形状。参考图表400,例如,图表对象中的第一列被转换成矩形404A,其维数基于与列相关联的数据值。转换操作306通过首先识别带有最大值在本情况中为89的列,并基于图表的高度线性缩放矩形404A,来确定矩形404A的维数。类似地,转换操作306将其它两列转换成相关联的矩形404B和404C。0055组合操作307随后组合相关形状。最好是将用户希望编辑或处理的形状组合成一组。例如,数据标签402A、402B和402C可被组合。作为另一个示例,矩形404A、404B和404C可被组合。组合操作307。

34、将指明哪个形状在组中的组指示符插入至基于形状的图表定义中。0056相关形状被组合之后,公用图形模块例如,图1的公用图形模块104可基于用户输入应用组效果。例如,若用户希望改变图表400中所有矩形的颜色,则用户只需要选择矩形中的一个并改变其颜色。该组十分有用,因为用户可通过在组中的形状上点击一次就能处理组中的所有形状。若用户希望处理组中的单个形状,则用户在该形状上双击。0057示例性计算设备0058参考图5,用于实现在此描述的操作的示例性系统包括传统个人计算机20形式的通用计算设备,包括处理单元21、系统存储器22和系统总线23。系统总线将包括系统存储器22和处理单元21的各种系统组件链接在一起。

35、。系统总线23可以是若干类型总线结构中的几种,包括存储器总线或存储控制器、外围总线、以及使用各种总线体系结构中任何一种的局部总线。系统存储器22包括只读存储器ROM24和随机存取存储器RAM25。基本输入/输出系统26BIOS存储在ROM24内,它包括诸如在启动时帮助个人计算机20内的各个元件之间传输信息的基本例程。0059如同所述的,在这个示例中,个人计算机20还包括从硬盘未示出中读取或向其写入的硬盘驱动器27、从可移动磁盘29中读取或向其写入的磁盘驱动器28、以及从诸如CDROM、DVD或其它光学介质等可移动光盘31中读取或向其写入的光盘驱动器31。硬盘驱动器27、磁盘驱动器28以及光盘驱。

36、动器30分别通过硬盘驱动接口32、磁盘驱动接口33和光盘驱动接口34连接至系统总线23。这些示例性驱动器及其相关联的计算机可读介质说明书CN102081522ACN102081528A13/14页17向个人计算机20提供了计算机可读指令、数据结构、计算机程序和其它数据的非易失性存储。0060尽管在此所述的示例性环境使用了硬盘、可移动磁盘29和可移动光盘31,然而本领域的技术人员应该理解,能够存储计算机可以访问的数据的其它类型的计算机可读介质,如磁带盒、闪存卡、数字视频盘、随机存取存储器RAM、只读存储器ROM等,也可用在示例性操作环境中。0061硬盘、磁盘29、光盘31、ROM24或RAM25。

37、上能够存储大量计算机程序,包括操作系统35、一个或多个应用程序36、其它程序37以及程序数据38。用户通过诸如键盘40和指示设备42诸如鼠标等输入设备向个人计算机输入命令和信息。0062能够捕捉图像数据的摄像机55如数字/电子照相机或摄影机、或胶片/照片扫描仪可作为个人计算机20的输入设备包括在内。图像数据通过适当的摄像机接口57输入至计算机20中。在该示例中,接口57连接至系统总线23,从而允许图像被路由至并存储在RAM25、或与计算机20相关联的其它数据存储设备中。尽管如此,应该注意,图像数据也可以从上述的任何计算机可读介质输入至计算机20,而无需使用摄像机55。0063其它输入设备未示出。

38、可包括麦克风、操纵杆、游戏垫、圆盘式卫星天线、扫描仪等等。这些和其它输入设备通常通过耦合至系统总线的串行端口46连接至处理单元21,但也可通过其它接口连接,诸如并行端口、游戏端口、通用串行总线USB等等。0064监视器47或其它类型的显示设备也通过接口,如视频适配器连接至系统总线23。除监视器之外,个人计算机通常也包括其它外围输出设备未示出,如扬声器和打印机。0065个人计算机20可使用到诸如远程计算机49等一个或多个远程计算机的逻辑连接在网络化环境中工作。远程计算机49可以是另一个人计算机、服务器、路由器、网络PC、对等设备或其它公共网络节点,且通常包括许多或所有上文相对于个人计算机20所描。

39、述的元件。0066图5所述的逻辑连接包括局域网LAN51和广域网WAN52。这种网络环境常见于办公室、企业范围的计算机网络、内联网以及因特网。0067当用于LAN网络环境时,个人计算机20通过网络接口或适配器53连接至局域网51。当用于WAN网络环境时,个人计算机20通常包括调制解调器54或用于通过诸如因特网等广域网52建立通信的其它装置。调制解调器54可以是内置的或外置的,它通过串行端口接口46连接至系统总线23。0068在网络化环境中,相对于个人计算机20所描述的计算机程序或其中的一部分可存储在远程存储器设备中。可以理解,所示网络连接是示例性的,且可以使用在计算机之间建立通信链路的其他装置。

40、。0069各种模块和技术在此可以在诸如由一个或多个计算机或其它设备执行的程序模块等计算机可执行指令的一般上下文中描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。通常,程序模块的功能能如在各种实施例中所希望的那样组合或分布。0070这些模块和技术的实现可存储在某种形式的计算机可读介质上或通过其传输。计算机可读介质可以是能被计算机访问的任何可用介质。作为示例,而非限制,计算机可读介质包括“计算机存储介质”和“通信介质”。说明书CN102081522ACN102081528A14/14页180071“计算机存储介质”包括以任何方法或技术实现的、用于。

41、存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术,CDROM、数字多功能盘DVD或其它光学存储、磁带盒、磁带、磁盘存储器或其它磁存储设备、或者任何其它能够用于存储所需信息并能被计算机访问的介质。0072“通信介质”通常以诸如载波或者其它传输机制等已调制数据信号的形式来具体化计算机可读指令、数据结构、程序模块或其它数据。通信介质还包括任何信息传递介质。术语“已调制数据信号”是指以在信号中编码信息的方式来设置或改变其一个或多个特征的信号。作为示例,而非限制,通信介质包。

42、括有线介质,诸如有线网络或者直接有线连接,以及无线介质,诸如声学、射频RF、红外或者其它无线介质。以上任何一个的组合也应当被包括在计算机可读介质的范围之内。0073尽管示例性操作实施例是根据常规计算机中的操作流程来论述的,但是本领域的技术人员可以意识到,本发明可以用处理和/或传递视频信号的任何平台或环境中使用。示例包括可编程和不可编程设备两者,如具有诸如视频会议等的指定目的硬件、固件、半导体设备、手持式计算机、掌上计算机、蜂窝式电话等。0074尽管在附图中示出并在以上详细描述中描述了某些示例性方法和系统,但是可以理解,所示以及所述的方法和系统并不限于在此所述的特定实现,而是相反,包括了大量重排、修改和代替,而不脱离在此所述的精神。说明书CN102081522ACN102081528A1/4页19图1说明书附图CN102081522ACN102081528A2/4页20图2说明书附图CN102081522ACN102081528A3/4页21图3图4说明书附图CN102081522ACN102081528A4/4页22图5说明书附图CN102081522A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1