CN1811773A - 以串行二进制格式存储文档的系统和方法 - Google Patents

以串行二进制格式存储文档的系统和方法 Download PDF

Info

Publication number
CN1811773A
CN1811773A CNA2006100069125A CN200610006912A CN1811773A CN 1811773 A CN1811773 A CN 1811773A CN A2006100069125 A CNA2006100069125 A CN A2006100069125A CN 200610006912 A CN200610006912 A CN 200610006912A CN 1811773 A CN1811773 A CN 1811773A
Authority
CN
China
Prior art keywords
data
node
ink marks
computer
file structure
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.)
Granted
Application number
CNA2006100069125A
Other languages
English (en)
Other versions
CN100492361C (zh
Inventor
王海勇
J·N·维克安姆
J·J·特纳
S·鲍鲁斯
S·巴哈塔查雅
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 Corp
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
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1811773A publication Critical patent/CN1811773A/zh
Application granted granted Critical
Publication of CN100492361C publication Critical patent/CN100492361C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/18Extraction of features or characteristics of the image
    • G06V30/1801Detecting partial patterns, e.g. edges or contours, or configurations, e.g. loops, corners, strokes or intersections

Abstract

一种计算机可读介质,具有以串行化二进制格式存储文件数据的数据结构,使得文档数据对于其它应用是可访问的。产生一种文档结构,它包括根节点数据。以串行二进制数据格式存储该文档。串行二进制格式包括在第一数据域中存储与文档结构相关联的大小数据。串行二进制格式还包括在第二数据域中存储文档结构描述符数据,其中,文档结构描述符数据包括至少一个用于指示数据预期对象的标志。串行二进制格式还包括在第三数据域中存储根节点数据,其中根节点数据是由所述标志中的至少一个指示的。

Description

以串行二进制格式存储文档的系统和方法
背景技术
写字板式PC一般允许用户在屏幕上直接绘图或书写。这种绘图或书写一般称为“墨迹(inking)”。墨迹是一种用户输入类型,并且包括触摸屏和用户使用计算笔在屏幕上书写,就好象用传统的笔与纸书写一样。墨迹用于各种各样应用。例如,墨迹可用于绘图应用,绘画应用,字处理应用,信用卡签名应用等等。
墨迹不仅可包括笔画的可视表示;它可包括数据类型。尽管数据结构是已知的,但用于存储信息的数据结构大小可变得过分大和麻烦。此外,程序之间文档结构的兼容性增加了计算机的效率和通用性。然而,在用户希望将墨迹数据从一个应用传送到另一个墨迹应用时,兼容性是一个问题。
发明内容
通常,本发明的诸方面涉及产生文档结构和以串行二进制格式存储文档结构的系统和方法。本发明还涉及产生墨迹文档结构和存储墨迹文档结构使得它可由其它应用访问的系统和方法。本发明还涉及用于修改或改变墨迹一部分而不要求重新分析整个墨迹的系统和方法。
本发明的诸方面涉及一种计算机可读介质,具有用于以串行化二进制格式存储文档数据的数据结构,使得文档数据对于其它应用是可访问的。产生文档结构,它包括根节点数据。以串行二进制数据格式存储该文档。串行二进制格式包括在第一数据域中存储与文档结构相关联的大小数据。串行二进制格式还包括在第二数据域中存储文档描述符数据,其中,文档结构描述符数据包括至少一个用于指示数据预期对象的标志。串行二进制格式还包括在第三数据域中存储根节点数据,其中,根节点数据是由所述标志中至少一个指示的。
本发明的其它方面涉及一种计算机实现的方法,用于以串行化格式存储二进制树结构。该计算机实现的方法包括在第一数据域中存储文档结构大小数据。该计算机实现的方法还包括在第二数据域中存储文档结构描述符数据,其中文档结构描述符数据包括至少一个指示数据预期对象的标志。该计算机实现的方法还包括在第三数据域中存储根节点数据,其中根节点数据是由所述标志中至少一个指示的。
本发明的又一方面涉及一种计算机可读介质,具有存储在其上的计算机可执行指令。所述指令包括产生墨迹文档结构,其中墨迹文档结构包括至少一个根节点。所述指令还包括以串行二进制格式存储墨迹文档结构。串行二进制格式包括在第一数据域中存储与墨迹文档结构相关联的大小数据。串行二进制格式还包括在第二数据域中存储墨迹文档描述符数据,其中,墨迹文档结构描述符数据包括至少一个用于指示数据预期对象的标志。串行二进制格式还可包括在第三数据域中存储根节点数据,其中根节点数据是由所述标志中至少一个指示的。
附图说明
图1例示可在本发明的一个方面中使用的示例性计算设备。
图2例示可在本发明的一个方面中使用的示例性移动设备。
图3例示用于以串行二进制格式存储墨迹文档数据的系统的一个示例性方面。
图4例示按照本发明一个方面的示例性墨迹。
图5例示表示图4中所示墨迹的一部分的示例性墨迹文档结构。
图6例示按照本发明诸方面的用于存储串行二进制数据块的数据结构。
图7例示按照本发明诸方面的用于存储上下文节点数据的数据结构。
图8例示一个流程图,描绘以串行二进制格式存储墨迹文档结构的一般方面。
具体实施方式
现在将参考附图更详细地描述本发明的实施例,这些附图构成本发明的一部分,并且作为例示,示出用实践本发明的特定示例性实施例。然而,本发明可以用许多不同形式来具体化,并且不应当解释为受限于在此阐述的实施例;相反,提供这些实施例是为了本说明书的全面与完整,并且将充分地向本领域熟练技术人员传达本发明的范围。尤其是,本发明可以具体化为方法或设备。因此,本发明可采用全部硬件实施例、全部软件实施例或者组合软硬件方面的实施例的形式。因此不是在限制意义上采用下面的详细描述。
以串行二进制格式存储数据的方法与系统的说明性实施例
本发明一般涉及产生墨迹文档结构和存储墨迹文档结构使得其它应用能够访问它的系统和方法。更明确地,本发明涉及以串行二进制格式存储数据以增加存储效率的系统和方法。本发明还涉及修改或改变墨迹一部分而不要求重新分析整个墨迹的系统和方法。即使在此阐述的说明引用了存储和加载墨迹文档,但在此引用的串行二进制格式也可用于存储其它类型的数据。例如,本发明可包括与字处理应用、电子表格应用、绘图应用、图形应用、笔记应用、图片应用等等相关联的数据。简洁地说,串行二进制格式可用于存储与二进制树结构相关联的任何类型数据。
1.墨迹应用的说明性实施例
作为本发明一个方面的一般上下文,墨迹应用可在用户使用笔输入数据时提供实时的可视化反馈。然而,墨迹可包括比笔画的可视化多得多的内容;它可包括数据类型。用户可建立应用,用于支持笔、墨迹、墨迹分析和墨迹识别的各种层次功能的数字转换器。这类应用范围从识别简单的文本输入到创建和编辑复杂的墨迹文档。
墨迹应用也可包括墨迹到文本的转换。在有些情况下,应用可不接受直接的墨迹输入。在这样一种情况下,墨迹应用可实现手写识别和将墨迹转换成文本,使得它可以剪切和粘贴到不接受直接墨迹输入的应用中。应用也可识别有关其它文档对象的墨迹对象及其上下文。其它实施例允许用户操纵墨迹并且使用墨迹来编写丰富文档,它包括文本、图形、矢量形状、多媒体对象等等。这类实施例将墨迹作为具有回流(reflow)和叠加(overlie)墨迹对象的数据类型来处理。
墨迹输入可与原始墨迹数据形式的应用相关联。在一个实施例中,原始墨迹数据可发送到墨迹分析器来处理原始墨迹数据,并且产生可与原始墨迹数据分离的墨迹文档结构。墨迹分析器可实现分析和识别过程,以便将原始墨迹数据分成可管理的笔画组件。如下面更完整地阐述的,在一个实施例中,墨迹分析器可产生具有二进制树的墨迹文档结构,其中树的每个节点定义与原始墨迹数据各部分的关系。墨迹文档结构允许将与平台相关联的墨迹应用与原始墨迹数据和墨迹文档结构相关,以便加载原始墨迹和相关联的墨迹文档结构。墨迹文档结构还允许用户加载和修改墨迹,不要求重新分析整个墨迹文档。而且,本发明允许在一个平台上的多个应用之间共享墨迹。
图3表示以串行二进制格式存储墨迹文档数据的系统的一个示例性实施例的一般概观。如所示的,系统300包括数字转换器302、应用304和墨迹分析器306。数字转换器302可包括结合图1描述的计算设备。数字转换器302也可包括结合图2描述的移动计算设备。在一个实施例中,数字转换器包括平板式PC数字转换器,它运行来自MICROSOFT CORPORATION(总部在华盛顿州雷蒙德)的WINDOWSXP TABLET PC EDITION(写字板式PC版本)。然而,数字转换器302可包括促进墨迹应用操作的任何设备。
数字转换器302数字化用户输入的笔画(例如书写和/或绘图的笔画),将数据存储在原始数据存储308中。原始数据存储308是任何类型的能够保存来自数字转换器302的存储。原始数据存储308可与一或多个应用和/或一或多个平台相关联。在另一个实施例中,数字转换器302旁路原始数据存储308并将数字化的数据传输给应用304。
应用304可包括任何与平台相关联的应用。在一个实施例中,应用304是促进墨迹的应用。应用304可包括字处理应用、绘画应用、制图应用、绘图应用、信用卡签名应用等等。在一个实施例中,应用304包括来自MICROSOFTCORPORATION(微软公司)的InkEdit、InkPicture和/或OneNote。在另一个实施例中,应用304能够执行保存操作和加载操作。保存操作可包括保存墨迹数据和非墨迹数据。应用304可将原始墨迹数据保存在原始数据存储308中,并且应用304可将墨迹文档结构保存到与平台相关联的墨迹分析器。在加载操作中,应用304可加载和综合墨迹文档结构和原始墨迹数据,如将在下面进一步阐述的。
墨迹分析器306可配置为从应用304接收原始墨迹数据。墨迹分析器306被配置为在原始墨迹数据上执行结构分析,以便产生墨迹文档结构。结构分析可包括原始数据的分析和原始数据的识别。
在一个实施例中,结构分析可促进文本识别,书写和绘图分类以及布局分析。墨迹分析器306可包括分析组件和识别器组件,它们协同工作以增强文本识别。例如,分析器可执行作为在将墨迹发送到识别器之前的预处理步骤的操作。预处理允许分析器分析和“清除”多行墨迹并且将它发送到识别器,一次一个小包(parcle)。小包可包括墨迹文档的一部分。分析器可进一步配置成纠正不正确的输入笔画顺序信息,以保证识别所有笔画而不管输入的顺序。而且,分析器可产生有关相邻行的信息。例如,两个以项目符号开始相邻行是当前行以项目符号开始的强指示符。
在另一个实施例中,墨迹分析器306的分析操作也可包括将墨迹分类为绘图或书写。书写可包括有利于字的任何墨迹笔画。绘图笔画可包括不是书写笔画的任何笔画。例如,参考图4,笔画“H”可包括书写笔画,而“下画线”可包括绘图笔画。以这种方式,按照一个实施例,书写笔画是发送给识别器的最合适笔画。
在墨迹分析器306的又一个实施例中,布局分析包括相对于彼此和非墨迹数据的书写和绘图笔画的分解。一旦墨迹分析器306分析了墨迹的笔画,就可产生这些笔画的树表示(即墨迹文档结构)。简洁地说,墨迹分析器306可包括任何类型的能够以二进制树存储文档并且使二进制树能够由其它应用通过串行二进制格式访问的分析器。虽然在此参考墨迹文档结构来描述串行二进制格式,但是串行二进制格式也可用于存储任何类型的与文档树结构相关联的信息。
一旦墨迹分析器306已经基于原始数据产生了墨迹文档结构,就使墨迹文档结构可用于应用304。墨迹文档结构可包括活的墨迹文档结构。当激起存储操作时,应用请求墨迹分析器306存储墨迹文档结构。因为墨迹分析器306是平台组件,所以墨迹文档结构可用于其它墨迹应用。例如,如果用户在字处理文档中产生墨迹,则该墨迹可剪切并粘帖到绘图应用,而不必重新分析。在本例中,绘图应用将理解如何从墨迹文档结构产生最初的墨迹。而且,由于以串行二进制格式分析和保存墨迹(下面讨论),因此墨迹可修改并有效地存储而不要求重新分析整个墨迹。修改的部分可对应于墨迹文档结构的一个单个小包,并且因此,仅要求重新分析被改变的小包。
通常,在加载操作期间,应用304可加载原始墨迹数据、非墨迹数据和墨迹文档结构。原始墨迹数据可从原始数据存储308加载。非墨迹数据也可从原始数据存储308加载。然而,预期非墨迹数据可从与应用304相关联的任何存储加载。墨迹文档结构可从墨迹分析器306加载,墨迹分析器306是一个平台组件。在一个实施例中,应用304将原始数据与墨迹文档结构相关联,使得墨迹被加载而不要求重新分析。
图4表示按照本发明一个方面的示例性墨迹400。墨迹400可与文本、绘图、表格、图表等等相关联。而且,墨迹400可包括各种类型的书写、绘画、形状、语言、符号和歪斜(skew)。如下面更完整地描述的,墨迹400可包括多个输入,它们与多个墨迹文档结构的节点相关。例如,参考编号402表示书写区域。
如另一个示例,参考编号404表示对齐级别。如图4所示,墨迹400的第一和最后一行目的是同一级别,并且因此表示对齐级别404。墨迹400的中间行向内缩进,并且因此,表示另一个对齐级别。
在又一示例中,参考编号406表示一个段落而参考编号408表示一行。墨迹400还包括字410,并且尽管未示出,字410也可包括笔画。笔画可包括一个字的一部分。
图5表示示例性墨迹文档结构500。示例性墨迹文档结构500与示例性墨迹400相关。墨迹文档结构500只是墨迹文档结构的一个示例。可实现任何类型的便于数据结构表示的树结构。墨迹文档结构500包括多个节点,诸如根节点501、书写区域节点502、对齐级别节点504、段落节点506、行节点508、字节点510和/或笔画节点(未示出)。墨迹文档结构500也可包括绘图节点512、提示节点514和一或多个链接。
在图4中,绘图412是名字“Mr.Bhattacharyay”的下画线。绘图412在图5中由绘图节点512表示。由于绘图412与字“Mr.”和“Bhattacharyay”相关联,绘图节点512和字节点510与511通过如图5描绘的链接相关联。同样,参考编号414表示一种类型的提示。在一个实施例中,提示414包括提示框。提示414可表示输入是数字、字母、符号、结构、代码、顺序等等。例如,在图4中,提示可包括一个提示,即输入是不大于三位数的数字。因此,墨迹分析器将不会将“5”误作“S”。由于提示414与书写“35”相关联,因此提示节点514可通过图5描绘的链接与字节点515相关联。上面的示例是示例性,并且仅仅为了描述。
以这种方式,墨迹400可通过节点表示为墨迹文档结构500。例如,笔画节点(未示出)可以是字节点510的子节点。字节点510可以是行节点508的子节点,而行节点508可以是段落节点506的子节点。同样,段落节点506可以是对齐级别节点504的子节点,而对齐级别节点504可以是书写区域节点502的子节点。以这种方式,根节点501可包含所有其子节点的信息。在一个实施例中,整个墨迹400可关于根节点501来表示。任意数量的节点可与任何类型的文档相关联,只要它们便于文档以文档树结构来表示。
2.墨迹文档串行化
图6表示一个示例性实施例,用于在内部以串行二进制格式600存储文档结构。虽然在此参考墨迹文档结构,但串行二进制格式600可用于存储任何类型的树文档结构。当产生墨迹文档结构时,将存在与文档结构相关的一或多个串。在一个实施例中,压缩包括这些串的Lempel-Ziv Welch格式(“LZW格式”。然而,所预期的是,这些串可通过减少这些串大小的任何压缩格式来压缩。图6包括数据604-618的存储的展开图(其中有些数据是可选地存储的)。在一个实施例中,存储包括多字节编码(“MBE”)值,它们有利于无符号整数的存储,以节省存储空间。
串行二进制数据块602包括墨迹文档的串行化二进制数据并且由数据块604-618表示。数据块604-618表示整个串行二进制数据块602的展开图。大小数据604可以是存储在串行二进制数据块602中的第一信息。大小数据604包括与墨迹文档结构的大小相关联的数据。
墨迹文档描述符数据606可跟随在大小数据604之后。墨迹文档描述符数据606可包括任何类型的的数据,它与有关包括在串行二进制数据块602中数据类型的预期对象相关联。该预期对象可由一组标志来指示,它们表示在墨迹文档结构中可用的相关联数据。这些标志可指示在串行二进制数据块602内可用的任何数据。数据块604-618只是可与墨迹文档结构相关联的数据的一些示例。在本发明的一个实施例中,根节点数据614(下面进一步描述)始终与墨迹文档描述符606中的一个标志相关联。
脏区域数据608是可任选的数据,它可不与每个墨迹文档结构相关联。脏区域数据608指向墨迹文档结构中在保存前没有完全分析过的数据。脏区域数据608既可指向墨迹数据,也可指向非墨迹数据,诸如文本字、图象等等。脏区域数据608可由一个与墨迹文档描述符数据608相关联的标志来指示。当墨迹文档描述符数据606包括指示一个脏区域的标志时,该标志指示墨迹文档结构具有一个有限的非空脏区域。如果脏区域数据608存在,则该数据可表示为一系列矩形,它们以二进制格式存储,以利于脏区域的再生。在完全分析了墨迹文档的情况下,脏区域数据608不存在,并且不需要墨迹文档描述符606中的标志。在一个实施例中,脏区域数据608(如果存在)紧跟在墨迹文档描述符数据606之后。
在一个实施例中,脏区域数据608作为区域数据存储到串行二进制数据块602。区域数据格式可用于存储脏区域数据608、非墨迹叶上下文节点的位置数据或提示节点的位置。区域数据可包括单独矩形的数组,这些矩形定义整个区域数据的范围。为了正确地从流重构区域数据对象(例如脏区域数据608),区域数据可包括矩形的计数。对于每个矩形,区域数据可包括有关顶端数据、左边数据、宽度数据和高度数据的信息。描述矩形数据的各个值可使用MBE或带符号的多字节编码(“SMBE)来存储。持久化的区域数据的表示的一个示例如下:
MBE[矩形的计数]
[矩形数据]}
矩形的计数}
[矩形数据]}
矩形数据可表示为如下:
SMBE[矩形.左边]
SMBE[矩形.顶端]
SMBE[矩形.宽度]
SMBE[矩形.高度]
全局唯一标识符(“GUID”表格数据610是可任选的数据,它可不与每个墨迹文档结构相关联。GUID表格数据610可包括MBE GUID数量的计数,这些GUID与GUID表格和/或GUID值的列表相关联。GUID值的列表可包括每个GUID的16字节无符号文字值。墨迹文档结构或文档树结构中任何单独的节点可包括由GUID标识的任意数据。该任意数据可包括已知的数据类型和与特定应用相关联的数据类型。对于与特定应用相关联的数据(即定制属性数据),该数据针对一个特定的GUID来存储。GUID表格数据610指定不能通过推理得知的有关墨迹文档结构使用的任何GUID的值。GUID表格数据610相应于在墨迹文档级别或上下文节点级别上的任何定制属性数据、并且随后可通过MBE、关于GUID表格数据610的基于零的索引来引用。作为示例,非预定义的GUID可包括应用特定扩展的节点类型和节点上应用特定扩展的属性。在有关串行二进制数据块602的GUID表格数据610存在的情况下,该存在是由一个与文档描述符数据606相关的标志标识的。同样,如果GUID表格数据61O不存在,则在墨迹文档描述符数据606中不设置标志。持久化的GUID表格数据的表示的一个示例如下:
MBE[Guid的计数]
[GUID]}
...}Guid的计数
[GUID]}
串表格数据612是可选的数据,它可不与每个墨迹文档结构相关联。串表格数据612可包括串表格中MBE串数量的计数、压缩串数据的大小和/或压缩串数据。串表格数据612可与分析提示后缀数据、前缀文本数据、被描述为事实的数据、提示名字数据、字列表数据、定制节点链接数据和经识别的串数据相关联。按照本发明的一个方面,串表格数据612可包括复制对象。到此为止,因为墨迹文档结构是以特定的顺序加载的,所以将索引保存到串表格数据612允许从串表格数据612加载适当的串数据。
每当一个串与串表格数据612相关联时,可不写索引。在这样一种情况下,至少每个实例保存一个字节。而且,在串表格数据612中的串可用LZW来压缩。通过不为每个串写索引并结合LZW压缩,可实质性地减少串的大小。在有关串行二进制数据块602的串表格数据612存在的情况下,该存在是由一个与墨迹文档描述符数据606相关的标志标识的。同样,如果串表格数据612不存在,则在墨迹文档描述符数据606中不设置标志。持久化的串表格数据的表示的一个示例如下:
//串表格数据
MBE[串的计数]
MBE[压缩串数据的大小]
[压缩串数据字节]
根节点数据614包括与根节点大小相关的数据和/或与根节点相关联的数据。根节点数据614可如参考图8所讨论的那样存储(下面更完整地阐述)。在一个方面,根节点数据是强制性数据,它与每个墨迹文档结构相关联,即使根节点数据614为空。一个与墨迹文档描述符数据606相关联的标志可指示根节点数据614的存在。
链接数据616是可任选的数据,它可不与每个墨迹文档结构相关联。链接616包括指示墨迹文档结构的任何节点是否链接到同一墨迹文档结构中的其它节点的数据。链接数据616可关联于墨迹文档结构全局地保存。在存储链接数据616时,链接数据616可包括与墨迹文档结构相关联的链接数量的计数。单独的链接数据616也可包括MBE数据大小。在一个方面,MBE大小数据之后跟随着链接描述符,它标识链接类型和起源信息。在另一个方面,描述符数据之后跟随着源节点索引值的SMBE和目的地节点索引值的SMBE。源节点索引和目的地节点索引分别标识源节点和目的地节点。在又一个方面,如果链接描述符数据指示链接数据616包括定制链接,则定制链接数据是从由全局串表格中的索引标识的全局串表格读取的。在有关串行二进制数据块602的链接数据616存储的情况下,该存在是由一个与墨迹文档描述符数据606相关的标志标识的。同样,如果链接数据616不存在,则在墨迹文档描述符数据606中不设置标志。持久化的墨迹数据的表示的一个示例如下:
[上下文链接描述符]//1字节
SMBE[源节点索引]
SMBE[目的地节点索引]
定制属性数据618是可任选的数据,它可不与每个墨迹文档结构相关联。定制属性数据618可与墨迹文档结构相关联,并且在一个方面,作为与节点相关联的定制属性数据存储。定制属性数据可包括任何由应用将其与节点相关联的任何数据,定制属性数据可由GUID标识并且可包括已知或未知的GUID。在GUID是未知的情况下,该GUID可存储为GUID表格数据610。在存储定制属性数据618时,一个标志可将定制属性数据618标识为已知值。在另一个方面,存储定制属性数据618包括对GUID表格数据610的索引。定制属性数据618的存储也可包括数据大小的MBE值和表示数据的字节数组。在有关串行二进制数据块602的定制属性数据618存在的情况下,该存在是由一个与墨迹文档描述符数据606相关的标志标识的。同样,如果定制属性数据620不存在,则在墨迹文档描述符数据606中不设置标志。持久化的墨迹文档结构的表示的一个示例如下:
MBE[大小]
<墨迹结构描述述-1字节>
//脏区域数据
[分析区域数据]
//Guid表格数据
MBE[Guid的计数]
[GUID]}
...}Guid的计数
[GUID]}
//串表格数据
MBE[串的计数]
MBE[LZ压缩串数据的大小]
[LZ压缩串数据]
//根节点数据
MBE[大小]
[数据]
//全局上下文链接数据
MBE[链接表格的大小]
[单独的链接数据]
图7表示一个示例性实施例,用于在内部存储上下文节点数据700。在一个实施例,根节点数据614是上下文节点并且存储为上下文节点数据700。上下文节点数据700可包括在墨迹文档的串行化二进制数据中,并且由数据块704-716表示。数据块704-716表示上下文节点数据702的展开视图。
节点描述符数据704可包括与墨迹文档结构的每个节点相关联的数据。节点描述符数据704可由标志集合指示,这些标志定义节点数据的配置以及与墨迹文档结构相关联的节点类型。
节点大小数据706可包括存储在特定节点上的可能已知的属性(例如,格子数据、边界框数据和/或钉住标志数据(pinning flags data))。节点大小数据706也可包括未知属性(扩展的/定制的属性)连同位置数据、子附属节点数据和笔画数据。在一个方面,节点大小数据706可紧跟在节点描述符数据704之后。简洁地说,节点描述符数据704可指示整个上下文节点树的大小。
节点位置数据708是可任选的数据,它可不与每个节点类型相关联。在节点位置数据708存在的情况下,该存在是由一个与节点描述符数据704相关的标志标识的。同样,如果节点位置数据708不存在,则在节点描述符数据704中不设置标志。在一个方面,如果节点描述符数据704指示一个非墨迹叶节点,则节点位置数据708可跟随在其后。非墨迹叶节点可包括没有子节点且不包括笔画数据的任何节点。例如,非墨迹叶节点可包括图象节点、文本节点或提示节点。在一个实施例中,节点位置数据708存储为区域数据。区域数据可包括单独矩形的数组,它们定义整个区域数据的范围。为了正确地从流重构区域数据对象(例如节点位置数据708),区域数据可包括矩形的计数。对于每个矩形,区域数据可包括有关顶端数据、左边数据、宽度数据和高度数据的信息。这些描述矩形数据的单独值可使用MBE或SMBE来存储。持久化的区域数据的表示的一个示例如下:
MBE[矩形的计数]
[矩形数据]}
}矩形的计数
[矩形数据]}
矩形数据可表示为如下:
SMBE[矩形.左边]
SMBE[矩形.顶端]
SMBE[矩形.宽度]
SMBE[矩形.高度]
笔画数据710是可任选的数据,它可不与每个节点类型相关联。笔画数据710可包括与任何包括笔画数据的节点相关联的数据。例如,笔画数据710可与未分类的墨迹节点、字节点或绘图节点相关联。在笔画数据710存在的情况下,该存在可由一个与节点描述符数据704相关的标志来标识。同样,如果笔画数据710不存在,则在节点描述符数据704中不设置标志。
当笔画数据710存在时,存储可包括与节点相关联的MBE笔画数量值。在一个方面,每个笔画与一字节的笔画描述符相关联,后者包括笔画描述符标志集合。这些标志可指示笔画标识,它表示MBE笔画标识数据。在一个方面,如果笔画标识标志没有设置,则笔画标识可包括检索到的最后一个笔画标识。这些标志也可包括书写笔画描述符标志,它们标识与书写相关联的笔画类型。在另一个方面,这些标志可包括绘图笔画描述符标志,它们标识与绘图相关联的笔画类型。这些标志也可包括突出(加亮)对象(highlighter)描述符标志,它标识与突出(加亮)相关联的笔画类型。在又一个实施例中,这些标志可包括确认的祖先描述符标志,它们标识一个笔画的有效确认的祖先。确认的祖先串行化索引的MBE值可存储在流中。在又一个实施例中,这些标志可包括笔画语言标识标志,它们标识与笔画相关联的语言。相应于该语言的带符号编码值可存储在流中。在又一个实施例中,与这些标志相关联的值以上述取决于笔画描述符数据的顺序来存储。进一步预期的是,可设置任何类型的标志来促进笔画的标识。
子节点数据712是可任选的数据,它可不与每个节点类型相关联。在子节点数据712存在的情况下,该存在可由一个与节点描述符数据704相关的标志来标识。同样,如果子节点数据712不存在,则在节点描述符数据704不设置标志。子节点数据712可包括容器类型节点(即,段落节点、行节点、对齐节点、书写区域节点和/或根节点等等)。容器节点可包括任何包含子节点的节点类型。子节点数据712的存储包括存储子节点数量和来自每个子节点的数据。来自每个子节点的数据以与上下文节点数据702相同的方式存储。
节点已知属性数据714是可任选的数据,它可不与每个节点类型相关联。在节点已知属性数据714存在的情况下,该存在可由一个与节点描述符数据704相关联的标志来标识。同样,如果节点已知属性数据714不存在,则在节点描述符数据704中不设置标志。
节点已知属性数据714包括数据类型与格式已知的属性,并且促进最优化以减少数据大小。节点已知属性数据714可包括经旋转的边界框数据(八个整数的数组)、识别格子数据(包括可变长度字节的数组)、注解数据确认数据(整数类型)和/或提示数据(用于提示节点)。在一个实施例中,该数据以预定义的方式存储,以便最优化数据的二进制表示。例如,整数数组可用带符号的编码格式保存。而且,复杂数据类型诸如结构或类数据,可用有效定义该数据的二进制格式存储。持久化的已知属性数据的表示的一个示例如下:
[已知属性描述符]//1字节
[经旋转的边界框数据]
8*SMBE[表示坐标的整数]
[识别格子]
MBE[格子数据大小]
[格子数据]
[确认]
SMBE[确认]
[注解]
SMBE[注解]
[分析提示属性]
[分析提示数据]
节点定制属性数据716是可任选的数据,它可不与每个节点类型相关联。在节点定制属性数据716存在的情况下,该存在可由一个与节点描述符数据704相关联的标志来标识。同样,如果节点定制属性数据716不存在,则在节点描述符数据704中不设置标志。节点定制属性数据可包括任何由应用将其与节点相关联的任意数据。节点定制属性数据716可由GUID来标识,并且可包括已知或未知的GUID。在GUID是未知的情况下,该GUID可存储为GUID表格数据610。在存储节点定制属性数据716时,一个标志可将节点定制属性数据716标识为已知值。在另一个方面,存储节点定制属性数据716包括对GUID表格数据610的索引。节点定制属性数据716的存储也可包括数据大小的MBE值和表示数据的字节数组。持久化的上下文节点数据的表示的一个示例如下:
MBE[大小]
//位置数据-用于非墨迹叶节点
[分析区域数据]
//笔画数据-用于墨迹叶节点
MBE[笔画的计数]
[笔画数据]}
...}笔画的计数
[笔画数据]}
每个笔画数据二进制块(blob)在流中表示为如下:
<1字节的笔画描述符标志>
MBE[笔画标识]
MBE[确定了的祖先节点的索引]
MBE[笔画的语言标识]
//子数据-用于容器节点
<1字节节点描述符>
MBE[附属节点数据的大小]
[附属节点数据]
<1字节节点描述符>
MBE[附属节点数据的大小]
[附属节点数据]
[已知属性数据]
[标记最大已知属性计数(TagMaxKnownPropertyCount)+到全局Guid表格中的索引]
MBE[大小定制属性]
[定制属性数据]
3.以串行化格式存储文档的说明性过程
图8表示以串行化二进制格式存储墨迹文档数据的系统的一个普通实施例。系统800开始于起始框802,并且流至框804,其中产生一个墨迹文档。框804可包括一个用于将来自用户的笔画输入数字化的数字转换器。数字转换器可包括计算设备(例如图1)、移动计算设备(例如图2)、运行来自MICROSOFTCORPORATION(微软公司)的WINDOWS XP TABLET EDITION的写字板式PC或者便于墨迹应用操作的任何设备。而且,虽然在此的描述参考墨迹文档,但系统800可相对于任何类型的数据来实现。例如,本发明也可关联于字处理应用、电子表格应用、绘图应用、图象应用、笔记应用、图片应用等等来使用。在一个实施例中,应用包括来自MICROSOFT CORPORATION(微软公司)的InkEdit、InkPicture和/或OneNote。从框804,过程800流至框806。
框806指示产生原始墨迹数据的步骤。在一个实施例中,产生原始墨迹数据包括数字转换器将笔画输入转换成原始墨迹数据和将原始墨迹数据存储到原始数据存储。在另一个实施例中,产生原始墨迹数据包括数字转换器将笔画输入转换成原始墨迹数据和将原始墨迹数据发送给应用。过程800随后流至框808。
框808指示产生墨迹文档结构的步骤。框808可包括墨迹分析器从应用接收原始墨迹数据。墨迹分析器可配置为分析和识别操作,如上面结合图3更完整地阐述的。框808还可包括产生墨迹文档结构,如上面按照图4和5描述的。在另一个实施例中,墨迹文档结构包括与墨迹相关的多个节点。例如,墨迹文档结构可包括书写区域节点、对齐节点、段落节点、行节点、字节点或笔画节点。墨迹文档结构还可包括绘图节点和/或提示节点。所预期的是,墨迹文档结构可包括便于墨迹的二进制树表示的任何类型的节点。在另一个实施例中,这些节点可与使有关节点相关的链接相关联。
流至框810,可存储墨迹文档结构,使之能全局访问。在一个实施例中,压缩并存储墨迹文档结构,如上结合图6和7所述。在这样一种情况下,可结合一个应用产生墨迹,并且随后存储它,以使其它应用能访问它。换言之,与该平台相关联的其它应用可使用该墨迹文档结构和原始墨迹来重新产生经分析的墨迹。该可访问能力有利于在应用之间的剪切和粘贴操作。而且,墨迹可修改而不要求对整个墨迹文档的重新分析,因为墨迹已经被分析、识别和以串行化格式保存。
4.说明性操作环境
参考图1,用于实现本发明的示例性系统包括一个计算设备如计算设备100。在基本配置中,计算设备100一般包括至少一个处理单元102和系统存储器104。取决于计算设备的准确配置和类型,系统存储器104可以是易失性的(如RAM)、非易失性的(如ROM、闪存等等)或两者的某种组合。系统存储器104一般包括操作系统105、一或多个应用106,并且可包括程序数据107。在一个实施例中,应用106还包括用于墨迹操作的应用120。该基本配置在图1中由虚线108内的那些组件来例示。
计算设备100还可具有附加特征或功能。例如,计算设备100还可包括附加的数据存储设备(可移动的和/或不可移动的),诸如例如磁盘、光盘或带。这样的附加存储在图1中由可移动存储109和不可移动存储110来例示。计算机存储介质可包括易失性与非易失性、可移动与不可移动的介质,它们是以任何用于存储信息诸如计算机可读指令、数据结构、程序数据或其它数据的方法或技术来实现的。系统存储器104、可移动存储109和不可移动存储110都是计算机存储介质的示例。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光存储、磁带盒、磁带、磁盘存储或其它磁存储设备,或者任何可以用于存储所想要的信息并且可以由计算设备100访问的其它介质。任何这样的计算机存储介质可以是设备100的一部分。计算设备100还可具有输入设备112,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备等等。还包括输出设备114诸如显示器、扬声器等等。所有这些设备在本领域中是已知的并且不需要在这里详细讨论。
计算设备100还包含通信连接116,允许设备与其它计算设备118通信,诸如通过网络或无线网状网络。通信连接116是通信介质的示例。通信介质一般包含在经调制的数据信号中的计算机可读指令、数据结构、程序模块或其它数据,诸如载波或其它传输机制并且包括任何信息传送介质。术语“经调制的数据信号”指对信号中的信息编码的方式设置或改变其一或多个特性的一种信号。作为示例,且非限制性地,通信介质包括无线介质诸如线连接网络或直接线连接,并包括有线介质,诸如声音、RF、红外和其它无线介质。术语计算机可读介质如在此使用的包括存储介质和通信介质两者。
图2例示可在本发明的一个示例性实施例中使用的移动计算设备。参考图2,用于实现本发明的一个示例性系统包括一个移动计算设备如移动计算设备200。移动计算设备200具有处理器260、存储器262、显示器228和小键盘232。存储器262一般包括易失性(例如RAM)和非易失性存储器(例如ROM、闪存等等)两者。移动计算设备200包括操作系统264,它驻留在存储器262中并在处理器260上执行。小键盘232可以是按压按钮数字拨号板(诸如在典型的电话上的),或者多键键盘(诸如常规的键盘)。显示器228可以是液晶显示器,或者任何通常在移动计算设备中使用的其它类型的显示器。显示器228可以是触敏的,并且因而也用作输入设备。
一或多个应用程序266被加载到存储器262中并且在操作系统264上运行。应用程序的示例包括电话拨号器程序、电子邮件程序、日程安排程序、PIM(个人信息管理)程序、字处理程序、电子表格程序、因特网浏览器程序等等。移动计算设备200还包括在存储器262内的非易失性存储268。非易失性存储268可用于存储持久信息,在移动计算设备200关闭电源时不应该丢失。应用266可在存储268中使用和存储信息,诸如由电子邮件应用使用的电子邮件或其它消息、由PIM使用的联系人信息、由日程安排程序使用的约会信息、由字处理应用使用的文档等等。在一个实施例中,应用266还包括用于墨迹操作的应用280。
移动计算设备200具有电源270,它可实现为一或多个电池。电源270可能还包括外部电源,诸如交流适配器或补充或充电电池的充电座。
移动计算设备200示为两种类型的外部通知机制:LED(发光二极管)240和音频接口274。这些设备可直接耦合至电源270,使得当被激活时,它们保持接通由通知机制指示的一段时间,即使处理器260和其它组件可能关闭以节省电池电源。LED 240可编程为无限期地保持接通,直到用户采取动作来指示设备的电源接通状态。音频接口274用于提供可听见的信号给用户,并且从用户接收可听见的声音。例如,音频接口274可耦合到扬声器以提供可听见的输出,以及耦合到话筒以接受可听见的输入,诸如促进电话交谈。
移动计算设备200还包括无线电接口层272,它执行收发通信诸如无线电频率通信的功能。无线电接口层272促进移动计算设备200通过通信公司或服务提供者与外部世界之间的无线连通性。与无线电接口层272的传输是在操作系统264的控制下进行的。换言之,由无线电接口层272接收的通信可通过操作系统264传播到应用程序266,反之亦然。
上述描述、示例和数据提供制造的完整描述和本发明组成的用法。由于可以在不脱离本发明的精神和范围的情况下作出本发明的许多实施例,所以本发明存在于下面所附的权利要求书中。

Claims (20)

1.一种计算机可读介质,具有存储在其上的数据结构,用于以串行化数据格式存储二进制树结构,包括:
第一数据域,用于存储与文档结构相关联的大小数据;
第二数据域,用于存储文档描述符数据,其中文档描述符数据包括一个或多个指示文档结构的相关联数据的标志;以及
第三数据域,用于存储根节点数据,其中,根节点数据是由所述标志中的至少一个指示的。
2.如权利要求1所述的计算机可读介质,还包括第四数据域,用于存储脏区域数据,其中,脏区域数据在串行化数据中的存在是由与文档描述符数据相关联的标志之一指示的。
3.如权利要求2所述的计算机可读介质,其特征在于,脏区域数据包括下列至少之一:墨迹分析器没有分析过的墨迹数据的位置数据,和墨迹分析器没有分析过的非墨迹数据的位置数据。
4.如权利要求2所述的计算机可读介质,其特征在于,脏区域数据包括下列至少之一:与脏区域数据相关联的矩形的计数,顶端数据,左边数据,宽度数据和高度数据。
5.如权利要求1所述的计算机可读介质,还包括第四数据域,用于存储全局唯一标识符数据,其中,全局唯一标识符数据在串行化数据中的存在是由与文档描述符数据相关联的标志之一指示的。
6.如权利要求5所述的计算机可读介质,其特征在于,全局唯一标识符数据包括下列至少之一:应用特定节点类型和应用特定扩展属性。
7.如权利要求1所述的计算机可读介质,还包括第四数据域,用于存储串表格数据,其中,串表格数据在串行化数据中的存在是由与文档描述符数据相关联的标志之一指示的。
8.如权利要求7所述的计算机可读介质,其特征在于,串表格数据与下列至少之一相关联:分析提示后缀数据,前缀文本数据,被描述为事实的数据,提示节点数据,字列表数据,定制链接节点数据和识别出的串数据。
9.如权利要求1所述的计算机可读介质,还包括第四数据域,用于存储链接数据,其中,链接数据在串行化数据中的存在是由与文档描述符数据相关联的标志之一指示的。
10.如权利要求9所述的计算机可读介质,其特征在于,链接数据包括下列至少之一:与文档结构相关联的链接计数,链接数据大小,链接描述符,源节点索引数据和目的地节点索引数据。
11.如权利要求1所述的计算机可读介质,还包括第四数据域,用于存储定制属性数据,其中,定制属性数据在串行化数据中的存在是由与文档描述符数据相关联的标志之一指示的。
12.如权利要求11所述的计算机可读介质,其特征在于,定制属性数据包括下列至少之一:大小数据和表示定制属性数据的字节数组。
13.如权利要求1所述的计算机可读介质,其特征在于,根节点数据包括描述符数据,并且其中,节点描述符数据在串行化数据中的存在包括一或多个标志,所述标志指示与根节点数据相关联的数据。
14.如权利要求13所述的计算机可读介质,其特征在于,根节点数据包括指示根节点数据大小的大小数据。
15.如权利要求13所述的计算机可读介质,其特征在于,根节点数据包括下列至少之一:节点位置数据,笔画数据,子节点数据,节点已知属性数据和节点定制属性数据。
16.一种计算机实现的方法,用于以串行化数据格式存储二进制树结构,包括:
在第一数据域中存储文档结构大小数据;
在第二数据域中存储文档结构描述符数据,其中,文档结构描述符数据包括至少一个用于指示数据预期对象的标志;以及
在第三数据域中存储根节点数据,其中根节点数据是由所述标志中的至少一个指示的。
17.如权利要求16所述的计算机实现的方法,还包括在第四数据域中存储下列至少之一:脏区域数据,全局唯一标识符表格数据,串表格数据,链接数据和定制属性数据。
18.如权利要求16所述的计算机实现的方法,其特征在于,根节点数据包括下列至少之一:预期对象数据,大小数据,节点位置数据,笔画数据,子节点数据,节点已知属性数据和节点定制属性数据。
19.一种计算机可读介质,具有存储在其上的计算机可执行指令,所述指令包括:
产生墨迹文档结构,其中,墨迹文档结构包括至少一个根节点;
以串行二进制数据格式存储墨迹文档结构,其中存储串行二进制格式包括:
在第一数据域中存储与墨迹文档结构相关联的大小数据;
在第二数据域中存储墨迹文档描述符数据,其中,墨迹文档结构描述符数据包括至少一个用于指示数据预期对象的标志;以及
在第三数据域中存储根节点数据,其中,根节点数据是由所述标志中的至少一个指示的。
20.如权利要求19所述的计算机可执行指令,其特征在于,根节点数据包括下列至少之一:预期对象数据,大小数据,节点位置数据,笔画数据,子节点数据,节点已知属性数据和节点定制属性数据。
CNB2006100069125A 2005-01-21 2006-01-23 以串行二进制格式存储文档的系统和方法 Expired - Fee Related CN100492361C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/041,400 US20060167902A1 (en) 2005-01-21 2005-01-21 System and method for storing a document in a serial binary format
US11/041,400 2005-01-21

Publications (2)

Publication Number Publication Date
CN1811773A true CN1811773A (zh) 2006-08-02
CN100492361C CN100492361C (zh) 2009-05-27

Family

ID=36589663

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100069125A Expired - Fee Related CN100492361C (zh) 2005-01-21 2006-01-23 以串行二进制格式存储文档的系统和方法

Country Status (13)

Country Link
US (1) US20060167902A1 (zh)
EP (1) EP1684190A2 (zh)
JP (1) JP5042502B2 (zh)
KR (1) KR101224673B1 (zh)
CN (1) CN100492361C (zh)
AU (1) AU2006200055B2 (zh)
BR (1) BRPI0600164A (zh)
CA (1) CA2532676A1 (zh)
MX (1) MXPA06000813A (zh)
MY (1) MY152584A (zh)
RU (1) RU2406142C2 (zh)
TW (1) TWI409708B (zh)
ZA (1) ZA200600238B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102663667A (zh) * 2012-03-28 2012-09-12 华为技术有限公司 触摸屏手写内容的存储方法、展示方法和终端设备
CN103004176A (zh) * 2010-07-30 2013-03-27 夏普株式会社 网络系统和通信方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8060747B1 (en) 2005-09-12 2011-11-15 Microsoft Corporation Digital signatures for embedded code
US7814328B1 (en) * 2005-09-12 2010-10-12 Microsoft Corporation Digital signatures for embedded code
US8190902B2 (en) * 2006-02-27 2012-05-29 Microsoft Corporation Techniques for digital signature formation and verification
US8205087B2 (en) * 2006-02-27 2012-06-19 Microsoft Corporation Tool for digitally signing multiple documents
US20070244865A1 (en) * 2006-04-17 2007-10-18 International Business Machines Corporation Method and system for data retrieval using a product information search engine
MX2009004121A (es) * 2006-10-20 2009-06-08 Nokia Corp Indicacion generica de trayectos de adaptacion para multimedia escalable.
US8126841B2 (en) * 2008-02-20 2012-02-28 International Business Machines Corporation Storage and retrieval of variable data
US10614300B2 (en) * 2014-12-23 2020-04-07 Lenovo (Singapore) Pte. Ltd. Formatting handwritten content

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5588141A (en) * 1993-07-30 1996-12-24 Apple Computer, Inc. System for executing different functions associated with different contexts corresponding to different screen events based upon information stored in unified data structure
JPH08235221A (ja) * 1994-10-17 1996-09-13 Matsushita Electric Ind Co Ltd インデックス付けされたデータベースを生成する方法およびデータベースにインデックス付けを行う方法
US6556712B1 (en) * 1996-05-23 2003-04-29 Apple Computer, Inc. Methods and apparatus for handwriting recognition
US6766494B1 (en) * 1998-06-15 2004-07-20 Fuji Xerox Co., Ltd. Method and system for creating ad-hoc links from free-form ink
US6563503B1 (en) * 1999-05-07 2003-05-13 Nintendo Co., Ltd. Object modeling for computer simulation and animation
US7259753B2 (en) * 2000-06-21 2007-08-21 Microsoft Corporation Classifying, anchoring, and transforming ink
US6956970B2 (en) * 2000-06-21 2005-10-18 Microsoft Corporation Information storage using tables and scope indices
US7397949B2 (en) * 2000-06-21 2008-07-08 Microsoft Corporation Serial storage of ink and its properties
US7155061B2 (en) * 2000-08-22 2006-12-26 Microsoft Corporation Method and system for searching for words and phrases in active and stored ink word documents
US6741749B2 (en) * 2001-01-24 2004-05-25 Advanced Digital Systems, Inc. System, device, computer program product, and method for representing a plurality of electronic ink data points
US6825781B2 (en) * 2001-02-05 2004-11-30 Expway Method and system for compressing structured descriptions of documents
US20030013083A1 (en) * 2001-07-16 2003-01-16 Tsai Tenlin S. Particle analysis as a detection system for particle-enhanced assays
US7039234B2 (en) * 2001-07-19 2006-05-02 Microsoft Corporation Electronic ink as a software object
US7158675B2 (en) * 2002-05-14 2007-01-02 Microsoft Corporation Interfacing with ink
US7206776B2 (en) * 2002-08-15 2007-04-17 Microsoft Corporation Priority differentiated subtree locking
US7533338B2 (en) * 2003-08-21 2009-05-12 Microsoft Corporation Electronic ink processing
US7284192B2 (en) * 2004-06-24 2007-10-16 Avaya Technology Corp. Architecture for ink annotations on web documents

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103004176A (zh) * 2010-07-30 2013-03-27 夏普株式会社 网络系统和通信方法
CN102663667A (zh) * 2012-03-28 2012-09-12 华为技术有限公司 触摸屏手写内容的存储方法、展示方法和终端设备
WO2013143471A1 (zh) * 2012-03-28 2013-10-03 华为技术有限公司 触摸屏手写内容的存储方法、展示方法和终端设备

Also Published As

Publication number Publication date
AU2006200055B2 (en) 2011-03-31
CN100492361C (zh) 2009-05-27
JP5042502B2 (ja) 2012-10-03
JP2006202297A (ja) 2006-08-03
RU2406142C2 (ru) 2010-12-10
RU2006101655A (ru) 2007-08-10
MY152584A (en) 2014-10-31
EP1684190A2 (en) 2006-07-26
BRPI0600164A (pt) 2007-07-17
TW200634658A (en) 2006-10-01
CA2532676A1 (en) 2006-07-21
MXPA06000813A (es) 2006-09-04
TWI409708B (zh) 2013-09-21
US20060167902A1 (en) 2006-07-27
KR101224673B1 (ko) 2013-01-21
AU2006200055A1 (en) 2006-08-10
ZA200600238B (en) 2008-04-30
KR20060085203A (ko) 2006-07-26

Similar Documents

Publication Publication Date Title
CN1811773A (zh) 以串行二进制格式存储文档的系统和方法
US11803860B2 (en) Email mappings
CN1811753A (zh) 文档的二进制串行化的方法和系统
CN1598768A (zh) 信息处理装置及其控制方法
CN101055588A (zh) 获取限制词信息的方法、优化输出的方法和输入法系统
CN1359068A (zh) 文件管理方法和存储信息记录重放装置及存储信息记录媒体
CN1841423A (zh) 业务模型的比较与对比
CN1609796A (zh) 应用编程接口(api)的设计
CN1265208A (zh) 数据通信
CN1811766A (zh) 用于绑定数据的可编程性
CN1615480A (zh) 网络设备间配置文件的翻译
CN1846207A (zh) 类型路径索引
CN1896994A (zh) 用于显示零件信息的装置、系统和方法
CN1783127A (zh) 基于结构化商务能力的有效和灵活的商务建模
CN1799020A (zh) 信息处理方法和设备
CN101075989A (zh) 一种验证字段有效性的方法和系统
CN1797404A (zh) 用于在强类型化环境中保存未知标记的方法和系统
CN101075238A (zh) 一种多媒体文件搜索引擎的排序方法
CN1707430A (zh) X部件-模式化的数据包装器
CN1741018A (zh) Http网页动态输出的方法和系统
CN100336058C (zh) 可放缩的浏览器
JP3994854B2 (ja) 電子カタログ変換システムにおけるデータマッピングルール再利用装置、方法、及びプログラム
CN1898666A (zh) 用于进行高性能结构化数据转换的硬件/软件分区
CN1893008A (zh) 匹配集成电路芯片引出端与封装接线端的方法
CN1048345C (zh) 汉字变换装置

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090527

Termination date: 20150123

EXPY Termination of patent right or utility model