产生用于在各种大小的显示器上显现的基于图像的可回流文件的制作方法

文档序号:2632113阅读:155来源:国知局
专利名称:产生用于在各种大小的显示器上显现的基于图像的可回流文件的制作方法
技术领域
本发明涉及数字图像的处理,更具体地讲,涉及处理和显示含有 文本内容的图像。
背景技术
随着计算机和基于计算机的网络的使用不断扩大,内容提供商正 在准备和发布越来越多的电子形式的内容。这个内容包括以印刷形式 存在的传统媒介以及电子媒介,所述传统媒介诸如书本、杂志、报纸、 时事通讯、手册、指南、参考文献、文章、报告、文档等,在电子媒 介中,前述内容以数字形式存在,或者通过使用扫描装置将前迷内容 从印刷形式转换为数字形式。特别是,互联网通过内容图像的下载和 显示促进了数字内容的更广泛的公开。随着数据传输速度提高,越来 越多的内容页面图像正变得可在线获得。页面图像允许读者象看印刷 形式一样阅读内容页面。
然而, 一些读者可能具有这样的计算装置,其具有的显示器与最 初格式化页面图像所面对的显示器的大小不同。此外, 一些读者可能 希望在显示器内在大小可变的窗口中观看页面图像中的文本。在一个 实施例中,内容提供商可产生和维护相同内容的不同版本,以适应各 种显示器的实施例。然而,这种方法可能效率不高,但成本高。本发 明旨在提供页面图像文件,其被配置为自动进行自我调整,以显现在 不同大小的显示器或窗口上。

发明内容
根据各种示例性的实施例,本发明提供一种用于创建基于图像的可回流文件的计算机实施的方法、系统和其上具有编码指令的计算机 可访问介质。基于图像的可回流文件被配置为通过根据显示器或窗口 的给定大小允许文本的行"回流,,而被显现在各种大小的显示器和窗 口上。如这里所使用的,行的"回流"是指改变文本中的行分割。
用于创建基于图像的可回流文件的方法通常包括六个步骤。首 先,接收具有文本的内容图像,例如,通过在含文本的图像中扫描来 接收所述图像。第二,找到在文本中包含的每个回流对象的边界区域。 第三,找到文本中的每个回流对象的回流对象基线。简要地讲,单词 的回流对象基线是指与该单词中出现的大多数字符的底线一致的线。 第四,相对于图像、也相对于包含回流对象的每个边界区域来确定包 含回流对象的每个边界区域的位置。例如,可将边界区域相对于其对 应的回流对象基线的位置定义为边界区域的一侧和回流对象基线之 间的偏移距离。第五,确定每个边界区域的大小。在一方面中,^f艮据 边界区域的宽度和高度确定该边界区域的大小。第六,存储每个边界 区域的大小和位置。因此,根据本发明的方法而创建的基于图像的可 回流文件定义了包含在接收的具有文本的图像中出现的回流对象的 每个边界区域的大小和位置,每个边界区域还与回流对象基线相关 联。
根据本发明的另外的实施例,还可在各种大小的显示器或窗口上 显现根据本发明的方法而创建的基于图像的可回流文件。在一个实施 例中,在给定大小的显示器或窗口上显现基于图像的可回流文件的方 法通常包括六个步骤。首先,接收基于图像的可回流文件,该文件包 括含有文本的图像。在该文件中,每个回流对象形成子图像,并被限 定在边界区域中,并且在图像中出现的每个边界区域的大小和位置被 定义。第二,确定显示器或窗口的大小。如果显示器/窗口大小与用来 创建基于图像的可回流文件的原始显示器/窗口大小相同,则可"照原 样"使用每个边界区域的大小和位置来显现文件。具体地讲,可根据 在所述文件中定义的边界区域的位置和大小在显示器/窗口上显现这 些边界区域(从而其中所包含的回流对象)。另 一方面,如果显示器/窗口大小以任何方式与原始显示器/窗口 大小不同,则在第三步骤中,基于每个边界区域的大小确定在显示器 上每条水平线都水平拟合的边界区域的数量,在相邻的边界区域之间 具有预定义的最小间隔。例如,在给定显示器/窗口的水平尺寸和每个 边界区域的宽度尺寸的情况下,可确定每条水平线将有多少个边界区 域水平拟合。第四,确定每个边界区域相对于每条水平线的水平位置。 第五,基于边界区域的大小确定每条水平线上水平拟合的每个边界区 域的垂直位置。例如,在给定显示器/窗口的垂直尺寸和每个边界区域 的高度尺寸的情况下,可确定如何在垂直方向上一致地分隔沿显示器 上的多条水平线水平拟合的边界区域。作为另一特疋的例子,可通过
以下方式实现每个边界区域的垂直位置的确定首先基于显示器的大 小确定多条水平线的每条的垂直位置(比如,通过将显示器的垂直尺 寸除以最小间隔),并确定每个边界区域的垂直位置,以使边界区域 的回流对象基线与对应的水平线对齐。在第六步骤中,根据确定的边 界区域的水平位置和垂直位置显现边界区域,从而显现其中包含的回 流对象的子图像。
根据本发明的另 一方面,可根据读者所请求的缩放级别在显示器 /窗口上显现根据本发明的方法而创建的基于图像的可回流文件。在这 个实施例中,确定每条水平线上水平拟合的边界区域的数量的步骤包 括以下步骤首先,根据所请求的显示缩放级别重新调整边界区域的 大小;然后,确定每条水平线上水平拟合的重调大小的边界区域的数 量。确定每个边界区域相对于每条水平线的水平位置的步骤类似地包 括确定每个重调大小的边界区域相对于水平线的水平位置。确定每条 水平线上水平拟合的每个边界区域的垂直位置的步骤包括以下步骤 确定每个重调大小的边界区域的垂直位置,以使沿多条水平线水平拟 合的重调大小的边界区域中的重调大小的回流对象在垂直方向上被 一致地分隔。最后,显现回流对象的子图像的步骤包括以下步骤根 据确定的重调大小的边界区域的水平位置和垂直位置显现在重调大 小的边界区域中限定的回流对象的子图像。例如,如果请求放大,则放大每个边界区域的大小,并显现重调大小(放大)的边界区域,从 而显现其中包含的重调大小(放大)的回流对象。


结合附图,参考以下详细描述将更容易理解本发明的前述方面和
许多相伴而生的优点,在附图中
图1是显示可实现本发明的实施例的示例性计算环境的示意图2A是显示可合并在如图1中描绘的可回流文件产生服务器中 的部件中的一些部件的功能框图2B是显示可合并在如图1中描绘的客户端系统中的部件中一 些部件的功能框图3A是显示其中具有文本内容的内容的页面的数字图像的屏幕 显示器的示意图3B是在大小小的显示器/窗口上显现图3A的内容的浏览器程 序的示意图3C是显现图3B的内容并示出大比例缩放的浏览器程序的示
意图3D是描绘分别显现两幅文本内容的数字图像的网页的浏览器 程序的示意图4A是根据本发明的一个实施例的用于产生基于图像的可回流 文件的示例性方法的流程图4B是根据本发明的一个实施例的用于在任何给定大小的显示 器或窗口上显现基于图像的可回流文件的示例性方法的流程图5示出每行基线和每个包含回流对象的边界区域的概念;和
图6A和图6E示出回流对象基线的概念和可如何从每字符基线 获得它们。
具体实施例方式
本发明涉及用于创建基于图像的可回流文件的计算机实施的方法、系统和其上具有编码指令的计算机可访问介质。基于图像的可回 流文件被配置为自动进行自我调整以显现在各种输出介质上,所述输 出介质例如是各种大小的显示器和窗口、印刷介质等。更具体地讲, 基于图像的可回流文件允许回流对象的各行根据所选择的输出介质 的给定尺寸和限制,诸如显示器或窗口的大小来回流。应该理解,在 本发明的上下文中,术语"回流对象"包括可用于表示图像中的信息的 一个或多个字母、字符、符号、数字、公式、图形、线条画、表格边 框、文本内容等的选择。在示出的实施例中,可将可识别的内容,诸 如单词表示为单个回流对象。或者,也可将可识别的内容表示为许多 个回流对象。如上所述,回流涉及对回流对象的行分割的1务改。
以下的详细描述提供本发明的示例性实施方案。虽然示出了特定 的系统配置和流程图,但是应该理解,所提供的例子不是穷举的,不 限于所公开的精确形式。计算机和数字成像领域中的普通技术人员将 会理解这里所描述的部件和方法步骤,这些部件和方法步骤可与其它 部件或步骤或者部件或步骤的组合互换,但仍可实现本发明的利益和 优点。还应该理解,主要在可由常规计算机部件执行的逻辑和操作等 方面给出以下描述。这些计算机部件可分组在单个位置中或者分布在 很广的区域上,它们通常包括计算机处理器、存储器存储装置、显示 装置、输入装置等。在计算机部件分布式存在的状况下,这些计算机 部件可经由通信链接相互访问。
在以下描述中,为了提供本发明的透彻理解,阐述了许多具体的 细节。然而,本领域的技术人员将清楚的是,可在没有这些具体细节 中的一些细节或所有细节的情况下实施本发明。在其它例子中,为了 避免不必要地模糊本发明,不对公知的方法步骤进行详细描述。
图l提供可实施本发明的实施例的一个计算环境的示例性总图。
所描绘的环境包括通过网络16例如互联网在通信上连接的可回流文 件产生服务器10和客户端系统12。客户端系统12被显示为与用户 18相关联。如图1中还描绘的,可回流文件产生服务器10包括基于 图像的可回流文件数据库19,或者与基于图像的可回流文件数据库19通信。在示出的实施例中,客户端系统12被配置为经由网络16从 可回流文件产生服务器10接收一个或多个基于图像的可回流文件并 在输出介质例如显示器屏幕上显现它们。在示出的实施例中,合适的 阅览器(比如,Web浏览器)应用程序在客户端系统12上运行,以 使它在计算机显示器上显现基于图像的可回流文件。
图1中的网络16可以是局域网("LAN,,)、诸如广域网("WAN,,) 的更大的网络或者诸如互联网的网络集合。网络通信协议,诸如 TCP/IP对计算机网络领域中的技术人员是公知的。这里将本发明描 述为使用互联网。本领域的普通技术人员将认识到,还可在其它交互 式环境中使用本发明,所述交互式环境例如是连接存储相关文档和相 关联的文件、脚本和数据库的服务器的局域网或广域网,或者包括可 访问音频或视频文件、文档、脚本、数据库等的机顶区或其它信息家 电的广播通信网络。
图2A和图2B描绘用于图1中显示的可回流文件产生服务器10 和客户端系统12的示例性计算机体系结构。用于可回流文件产生服 务器10 (图2A)和客户端系统12 (图2B)的示例性计算机体系结构 可用于实现本发明的一个或多个实施例。当然,本领域的技术人员将 意识到,可回流文件产生服务器10以及客户端系统12可包括比图2A 和图2B中显示的部件更多或更少的部件。
图2A中的可回流文件产生服务器IO使用网络接口 20连接至网 络16 (图1)。网络接口 20使得可回流文件产生服务器10能够经由 计算机网络16收发数据、控制信号、数据请求和其它信息。例如, 可回流文件产生服务器10可经由网络接口 20从网络16接收包含其 中具有回流对象的数字内容图像的文件。
可回流文件产生服务器10还包括处理器21、存储器22、计算机 可读介质驱动器25 (比如,硬盘驱动器)和输入/输出接口 26,所有 这些都在通信上彼此连接,并通过通信总线28连接至网络接口 20。 显示装置24可以是典型的显示装置,诸如计算机显示器(比如,CRT 或LCD屏幕)、电视机屏幕等。输入/输出接口 26被配置为与一个或多个外部装置例如输入装置27通信,以捕捉其中具有文本的内容图 像。输入装置27可以是能够捕捉图像的任何装置,包括但不限于 摄像机、扫描仪、数码相机、复印机、扫描笔等。输入/输出接口 26 还可被配置为与一个或多个外部输出装置例如显示器适配器23通信。 显示器适配器23向显示装置24提供使用户能够观察可回流文件产生 服务器10并与可回流文件产生服务器10交互的信号。另外,输入/ 输出接口 26还可被配置为与各种打印适配器(未显示)通信以在打 印介质上显现可回流文件。输入/输出接口 26还可与图2A中未显示 的外部装置通信,诸如用户可操作的鼠标、键盘、笔或其它装置。
处理器21被配置为根据存储在存储器例如存储器22中的计算机 程序指令操作。程序指令也可以表现为硬件格式,例如编程的数字信 号处理器。此外,存储器22可被配置为存储其中具有回流对象的数 字内容图像以根据本发明进行处理、传输和显示。
存储器22通常包括RAM、 ROM和/或永久存储器。存储器22 存储用于控制可回流文件产生服务器10的一般操作的操作系统29。 操作系统29可以是通用操作系统,诸如Microsoft⑧操作系统、UNIX 操作系统或Linux⑧操作系统。存储器22还存储光学字符识别(OCR ) 应用程序30,其包括被设计用于分析其中包含回流对象的数字图像的 程序代码和数据。本领域的普通技术人员将会认识到能够分析和识别 图像中的回流对象的各种算法和技术。然而,为了本发明的目的,如 许多OCR例程实现的那样,算法和技术实际识别各个字符或符号或 者解释它们的意义不是必须的。相反,可使用类似OCR的处理过程, 其中有限的信息,例如数字图像中的字符的基线及位置和大小被确 定。如这里所使用的,术语"字符识别,,是指使用扫描仪和计算机算法 的所有形式的字符识别。可商业利用的OCR软件的例子包括来自 ScanSoft Inc.的OmniPage Prc)TM和来自SmartLink Corporation的 FineReader .存储器22另外存储提供可回流文件产生应用程序31 的程序代码和数据。可回流文件产生应用程序31包含用于处理经由 网络接口 20、输入/输出接口 26等接收的数字图像,以产生基于图像的可回流文件,然后可将该基于图像的可回流文件发送到基于图像的
可回流文件数据库19进行存储的程序代码和数据。
图2B描绘用于图1中显示的客户端系统12的示例性计算机体 系结构。图2B中的客户端系统12包括可与以上关于可回流文件产生 服务器10描述的相同名称的部件类似地操作的几个部件。客户端系 统12包括与存储器33通信的处理器32、与显示装置35耦合的显示 器适配器34、计算机可读介质驱动器36、与输入装置38耦合的输入 /输出接口 37和网络接口 39,所有这些通过总线40在通信上连接。
如所示,存储器33存储控制客户端系统12的一般操作的操作系 统41。存储器另外存储浏览器程序42,诸如Web浏览器程序。根据 本发明的各种示例性实施例,不管显示装置35的具体大小如何,与 浏览器程序42和显示器适配器34连接的处理器32都自适应地在显 示装置35上显现基于图像的可回流文件。在本说明书中,可互换使 用术语"显示器,,和术语"窗口",此外,术语"显示器"可用于涵盖显示 器(或屏幕)和窗口二者。
图3A是显示其中具有回流对象的内容的数字页面图像的屏幕显 示器的示意图。具体地讲,图3A示出正运行浏览器程序42的计算装 置例如客户端系统12的显示器(或窗口 ) 43。在示出的例子中,显 示器43显示图书中的完整一页的图像。浏览器程序42还显示各种可 选控制,例如允许用户通篇浏览正显示的内容页面的"前一页"44和 "后一页,,45,以及允许用户在显示器43内向上或向下滚动内容的滚 动条46。
图3B的不同构造描绘也可正运行浏览器程序47的计算装置的 屏幕显示器。与图3A中的显示器43相比,图3B中的显示器48的高 度尺寸和宽度尺寸都d、一些。根据本发明,可自适应地在各种大小的 显示器和窗口上显现基于图像的可回流文件。在图3B中,例如,与 图3A的显示器43中的回流对象相同的回流对象(例如文本内容)被 自动"回流",并被显现在更小的显示器48上。具体地讲,图3A的原 始显示器43中的第一行包括"Growingupin Vinci",其被回流,从而仅有"Growing up in,,部分出现在更小的显示器48中的第一行中,而 "Vinci"移到更小的显示器48的第二行的开头。由于显示器48比图 3A的原始显示器43小,所以浏览器程序47优选地还可包括滚动条 49以允许用户在更小的显示器48内向上和向下滚动内容以便看到在 图3A的原始显示器43中所包括的整个文本内容。
图3C描绘显示器(窗口 ) 48,,相对来说,显示器(窗口 ) 48, 与图3B的显示器48的大小相同,但是以更大的比例显示与图3B的 显示器48中的文本内容相同的文本内容。例如,用户可选择放大"+" 控制按钮50以放大先前在图3B的显示器48中显示的显示内容。然 后,在图3C中,现在,皮放大的与图3B的显示器48中的回流对象相 同的回流对象被自动回流,并被以放大比例显现在显示器48,上。具 体地讲,图3B的显示器48中的第一行包括"Growing up in",其被放 大并被回流,从而现在仅有放大的"Growing"部分出现在显示器48, 的第一行中,而类似地,放大的"up in"移到显示器48,的第二行。与 前一样,滚动条49可用于允许用户在显示器48,内向上和向下滚动内 容以看到在图3A的原始显示器43中所包括的整个文本内容。
图3D描绘可实施的本发明的另一实施例。具体地讲,图3D示 出包括第一显示器(窗口 ) 52和第二显示器(窗口 ) 54的浏览器程 序42。在本发明的各种示例性实施例中,两个显示器52和54能够独 立地回流其中包含的回流对象。例如,图3D中的第一显示器52的大 小与图3A的原始显示器43相同,因而显示与原始显示器43相同的 文本内容。第二显示器54显示与第一显示器52不同的文本内容部分, 此外,与第一显示器52中显示的比例相比,第二显示器54还以不同 的比例显示。这是响应于例如放大第二显示器S2中示出的显示文本 内容的用户请求而显现与不同的文本内容对应的回流对象的结果。
图4A描绘根据本发明的一个实施例的通过用于产生基于图像的 可回流文件的可回流文件产生应用程序31实现的示例性方法70。方 法70在块71通过接收其中具有一个或多个回流对象的内容图像开 始。接收图像的格式可以改变,可包括可存取格式的图像或者非可存取格式的图像,所述可存取格式诸如Adobe⑧便携式文档文件(PDF ), 所述非可存取格式诸如JPEG、 TIFF、 GIF或BMP格式文件。在示 出的实施例中,图像可对应于打印材料的扫描图像。或者,图像可对 应于通过各种软件应用程序产生或者通过第三方软件部件转换的电 子文档。
接收的图像可隐含地与"原始"显示器大小相关联。例如,如以上 图3A中所示,通常期望以与页面图像在原始打印件中出现时相同的 格式显示该页面图像,以便保持内容的原始打印版本的原始"外观和 感觉"。这里所使用的原始显示器大小是指能够以与内容的原始打印 版本相同的格式显现页面图像的显示器的大小。
在块72,可回流文件产生应用程序31确定内容图像中的每个回 流对象的边界区域。在示出的实施例中,每个回流对象的边界区域可 对应于各种几何形状,包括但不限于,矩形、圆形、曲线、椭圓、三 角形和更复杂的多边形形状。可回流文件产生应用程序31可基于许 多因素选择边界区域形状,所述因素例如是输出介质的类型、所选择 的输出介质的特定属性和/或某些回流对象的特定属性。例如,可回流 文件产生应用程序31可与打印介质完全不同地为计算机显示器选择 不同的边界区域。在另一例子中,可回流文件产生应用程序31可与 椭圆形状显示屏幕完全不同地为矩形形状显示屏幕选择不同的边界 区域。在另一例子中,可回流文件产生应用程序31可为可与特定间 隔和/或格式化相关联的相关回流对象选择互补边界区域,所述相关回 流对象例如是与带连字符的单词的各部分相对应的回流对象。
在块73,可回流文件产生应用程序31识别图像中的每个回流对 象的回流对象基线。然后,在块74,可回流文件产生应用程序31确 定每个边界区域相对于最初接收的图像的位置以及相对于其对应的 回流对象基线的位置。在块75,确定每个边界区域的大小。在示出的 实施例中,可回流文件产生应用程序31可利用各种数学模块来确定 边界区域大小。另外参考图5和图6A-6E,将更详细地描述边界区 域、回流对象基线和每个边界区域的位置和大小的概念。在图5中,对于接收的文本内容90,找到四个"每行,,基线91, 它们与将在下面详细描述的回流对象基线不同。通常,发现每行基线 与在输出介质(比如,显示器)上的一行中出现的大多数回流对象的 底线一致,另外发现回流对象基线与在单个回流对象中出现的大多数 字符的底线一致。仍参考图5,在第一每行基线91上,发现以不同大 小的矩形形状92 - 95为形式的边界区域分别用于包含回流对象 "Growing"、 "up"、 "in"和"Vinci"。在示出的实施例中,发现边界区 域将每个回流对象中环绕的相关文本字符绑定在一起。可使用存储在
可回流文件产生服务器10 (图2A)的存储器22中的合适的OCR或 类似于OCR的软件程序容易地找到每行基线和边界区域二者。
然而,如图6A所示,通过OCR或类似于OCR的软件确定的每 行基线通常是斜的(例如,由于倾斜的扫描图像而导致),从而不会 正确地与文本行中出现的大多数字符的底线一致。在图6A中,线100 表示文本"The quick brown fox"的真实的每行基线,而线102表示通 过OCR或类似于OCR的软件确定的错误的每行基线。OCR确定的 每行基线102相对于真实的每行基线100稍微倾斜。在示出的例子中, OCK确定的每行基线102在最左单词"The"的真实的每行基线100的 上方,而在最右单词"fox"的真实的每行基线100的下方。因此,如图 6B所示,如果这样的OCR确定的错误的每行基线用于在单行中显现 分别具有真实的每行基线100和100,的多个文本行,则显现的文本不 会沿水平线准确地对齐。因此,OCR确定的每行基线不能可靠地用 于估计真实的"回流对象"基线,真实的"回流对象"基线通常与在回流
对象中出现的大多数字符的底线一致。
如图6C所示,OCR或类似于OCR的软件还可识别"每字符,,基 线104a-104d。通常,发现每字符基线与单个字符例如大写字母的底 线一致。然而,如图6C所示,OCR确定的每字符基线104a-104d 典型地沿包括多个回流对象的行具有大量跳动。因此,虽然在任何给 定行上的字符的每字符基线可以平均为OCR确定的每行基线,但是 变化(或跳动)量太大以至于不能用于估计真实的"回流对象,,基线。根据本发明的各种示例性实施例,基于找到以下拟合函数来识别
真实的回流对象基线该拟合函数以最小平均误差平滑地估计沿包括 多个回流对象的一行中的每个每字符基线的位置。可使用任何拟合函 数,包括但不限于,线性或多项式回归。然后,通过将每个回流对象 上的平均值插入到拟合函数中,拟合函数可被用于识别沿所述行的每 个回流对象的基本真实的回流对象基线。例如,如果找到拟合函数为 _V = 0.3x + 1200 ,并且沿一行存在四个回流对象,其水平中心点分别在 义=500、 1200、 1900和2600,则可计算这四个回流对象沿垂直轴少的 回流对象基线值分别为少=1350、 1560、 1770和1980。根据拟合函数 计算出的^值找到沿一行的回流对象的回流对象基线,其中,找到的 每条回流对象基线具有相对于其真实的每行基线的对应部分的最小 误差量(距离)。
图6D示出使用根据本发明的方法的拟合函数而找到的分别关于 四个回流对象,"The"、 "quick"、 "brown,,和"fox,,的四个"回流对象" 基线106a、 106b、 106c和106d。如所示,每条回流对象基线106a-106d与真实的每行基线100紧密匹配,因而与它在真实的每行基线 IOO上的对应部分(即,它的真实"回流对象,,基线)紧密匹配。
图6E示出通过将以上确定的每条回流对象基线106a - 16d与水 平线104对齐而在显示器上的水平线104上显现的四个回流对象。如 所示,当通过将所有四个回流对象的对应的回流对象基线106a- 106d 与水平线104对齐而在水平线104上显现这四个回流对象时,这四个 回流对象看起来4艮好。与在如图6A和图6B中显示的线的两端发生的 所有误差相对照,由于由原始图像的任何倾斜而引起的误差分布在整 行回流对象上,所以根据本发明的方法,这样的良好的显现是可能的。
在极度跳动的情况下,可通过以下方式进一 步改进找到回流对象 的回流对象基线的方法,即,通过首先找到拟合函数,然后找到所有 字母(字符)与该拟合函数间的距离的标准偏差,并找到在该原始拟 合函数的一个标准偏差内最逼近所有字母的拟合函数。拟合函数技术 不考虑上标、下标、脚注指示符、数学符号、连字符和其它类似的不符合基线的字母和符号,从而使得确定的回流对象基线更接近真实的
每行基线100。
返回来参考图5,可相对于原始图像确定每个边界区域92-95 的位置,例如,根据边界区域的一个或多个角点坐标来确定。此外, 可根据从回流对象基线(与图5中的每行基线91 一致)到边界区域 (见边界区域92 )的底侧的偏移距离"B,,来定义每个边界区域相对于 其对应的回流对象基线的位置。此外,在示出的例子中,由于每个边 界区域为矩形形状,所以可根据边界区域的高度"H,,和宽度"W"来定 义每个边界区域的大小。可使用在空间维度上扩展的合适的测量单位 来确定边界区域的位置和大小(比如,高度和宽度),所述测量单位 诸如英寸、厘米、像素数量等。
返回来参考图4A,在块76,可回流文件产生应用程序31存储 每个边界区域的位置和大小,从而形成基于图像的可回流文件。具体 地讲,将每个边界区域的位置与每个边界区域的大'j、一起存储,所述 每个边界区域的位置为相对于原始显示图像(或者原始显示器大小) 的例如根据X-Y坐标定义的位置和相对于其对应的回流对象基线的 例如根据图5中所示的偏移距离"B,,定义的位置。可以以为存储图像 数据而开发的许多计算机可读格式中的任何一种格式存储所述文件, 所述格式包括但不限于,JPEG、 TIFF、 GIF和BMP格式。在可替 换的实施例中,可回流文件产生应用程序31可将可回流文件直接输 出到另一计算装置或基于网络的目的地。
本领域的技术人员应该意识到,定义每个边界区域的位置和大小 的各种方法是可能的。例如,可如上所述通过使用每个边界区域的宽 度和高度明确地定义每个边界区域的大小,或者可通过使用代表大小 的数学公式,诸如基于矢量的公式隐含地定义每个边界区域的大小。 可绝对地定义每个边界区域相对于原始图像或原始显示器大小的位 置,例如,根据X-Y坐标绝对地定义每个边界区域相对于原始图像或 原始显示器大小的位置,或者相对于相邻的边界区域的位置(比如, 紧靠前的边界区域的位置)相对地定义每个边界区域相对于原始图像或原始显示大小的位置。
图4B描绘用于显现根据本发明创建的基于图像的可回流文件的 客户端系统12的存储器33中的浏览器程序42可实现的示例性方法 80。如前所述,在示出的实施例中,可在输出介质上,诸如在任何给 定大小的显示器或窗口 ,比如客户端系统12的显示装置35上显现可 回流文件。另外,可在诸如打印介质的其它输出介质上显现可回流文 件。方法80在块81通过接收基于图像的可回流文件开始。在基于图 像的可回流文件中,图像中包含的每个回流对象形成子图像,并被限 定在边界区域中。此外,在可回流文件中定义每个边界区域的大小和 位置。此外,可定义每个回流对象的回流对象基线。
在块82,浏览器程序42确定将显现可回流文件的输出介质的大 小。可根据输出介质的形状和尺寸,诸如显示屏幕的形状和尺寸来定 义显示器大小。如果输出介质大小与用来创建基于图像的可回流文件 的原始显示器/窗口大小相同或者基本相同,则可使用在可回流文件中 定义的每个边界区域的位置和大小来显现可回流文件。另一方面,如 果输出介质大小小于、大于或者基本不同于原始显示器/窗口大小,则 浏览器程序41可4吏可回流文件中的回流对象"回流"。
具体地讲,在块83,基于输出介质的水平尺寸和每个边界区域 的大小确定在输出介质中的多条水平线的每一条上水平拟合的边界 区域的数量,其中在相邻的边界区域之间具有最小间隔。例如,在给 定显示器/窗口的水平尺寸和每个边界区域的宽度尺寸的情况下,可确 定在显示器中的每条水平线上将有多少个边界区域水平拟合。在示出 的实施例中,浏览器程序42可在具有互补边界区域的两个回流对象 (比如,与带有连字符的单词对应的回流对象)之间关联不那么水平 的距离。在块84,确定每个边界区域相对于每条水平线的水平位置。 例如,可确定边界区域的一个或多个角沿每条水平线的水平坐标(比 如,x值)。
在块85,浏览器程序41基于边界区域的大小确定在每条水平线 上水平拟合的每个边界区域的垂直位置。例如,在给定显示器/窗口的垂直尺寸和每个边界区域的高度尺寸的情况下,浏览器程序41可确 定如何在垂直方向上一致地分隔沿显示器上的多条水平线水平拟合 的边界区域。作为另一具体例子,这可通过以下方式来实现首先基 于显示器的大小确定显示器上的多条水平线的每条的垂直位置(比 如,通过将显示器的垂直尺寸除以最小间隔),并确定每个边界区域 的垂直位置,以使边界区域的回流对象基线与对应的水平线对齐。可 预先定义显示器上的多条水平线之间的最小间隔,以确保被显现内容 的最小尺寸是可辨认的。作为另一例子,可将显示器/窗口的垂直尺寸 除以与原始显示器/窗口相同的间隔,以保持原始内容的相同外观和感 觉。在另外的实施例中,浏览器程序41还可考虑输出介质的可不显 现内容的某些部分。此外,浏览器程序41还可考虑可能不适当作为 回流内容的任何内容,诸如图表、图形、图片、插图、数学方程、软 件代码列表、诗歌、页眉/页脚等。
最后,在块86,根据确定的边界区域的水平位置和垂直位置显 现边界区域,从而显现其中包含的回流对象。
在各种示例性的实施例中,可沿显示器上的每条水平线使边界区 域对齐,从而使其中包含的回流对象对齐。具体地讲,在找到每条水 平线上水平拟合的边界区域的数量之后,在相邻的边界区域之间具有 最小间隔的情况下,如果沿水平线存在剩余空间,则可适当地分布剩 余空间。例如,在向右对齐的情况下,可从水平线的末端(比如,最 右部分)去除剩余空间,并将其插在该水平线的开头、在该水平线上 出现的第一个(比如,最左)回流对象(或边界区域)之前。在居中 对齐的情况下,可从水平线的末端去除剩余空间的一半,并将其插在 水平线的开头。在全部对齐的情况下,可将剩余空间除以水平线上出 现的相邻回流对象之间的间隔的数量(即,比水平线上的回流对象的 数量少l个),并可将获得的商数间隔插在相邻回流对象之间的每个 间隔中。
仍参考图4B,在本发明的另一实施例中,提供用于根据用户(读 者)所请求的缩放级别在显示器/窗口上显现基于图像的可回流文件的方法。首先,在块82,连同用户所请求的缩放(或重调大小)级别确 定输出介质的大小。在块83,根据所请求的缩放级别(比如,放大或 缩小)重新调整边界区域的大小,并确定多条水平线的每条水平线上 水平拟合的重调大小的边界区域的数量。例如,如果请求放大,则放
大每个边界区域的大小,从而更少数量的边界区域将在每条水平线上 水平拟合。另一方面,如果请求缩小,则使每个边界区域的尺寸变小, 从而更多的边界区域将在每条水平线上水平拟合。在示出的实施例 中,浏览器应用程序41可直接与缩放级别的改变成比例地调整边界 区域的大小。或者,浏览器程序41可限制边界区域的调整和/或将不 同的比例应用于边界区域调整。
在块84,相对于水平线确定每个重调尺寸的边界区域的水平位 置。在块85,确定每个重调尺寸的边界区域的垂直位置。例如,如果 用户请求放大在显示器/窗口中显示的文本(比如,回流对象),则放 大边界区域,因此,显示器上的水平线可被与所请求的放大级别成比 例地进一步分隔,以容纳放大的边界区域。如果用户请求缩小,则与
所请求的缩小级别成比例地压缩水平线(比如,布置得更靠近)。
最后,在块86,根椐确定的重调尺寸的边界区域的水平位置和
垂直位置在输出介质上显现放大的边界区域,因而显现在放大的边界
区域中限定的回流对象的子图像。
尽管已示出和描述了本发明的说明性实施例,但是将意识到,可
在不脱离本发明的精神和范围的情况下,在其中进行各种改变。
权利要求
1、一种用于处理数字图像文件的系统,包括数据存储部分,用于存储数字图像文件;和与该数据存储部分通信的计算装置,该计算装置检索数字图像;识别所述数字图像中的一个或多个回流对象;识别每个回流对象的回流对象基线;识别回流对象的多边形形状的边界区域;确定每个边界区域的大小;确定每个边界区域相对于所述图像以及相对于其对应的回流对象基线的位置;产生基于图像的可回流文件,该基于图像的可回流文件包括回流对象基线和每个边界区域的大小和位置;将产生的基于图像的可回流文件存储在所述数据存储部分中;以及在计算机显示器上显现所述基于图像的可回流文件。
2、 根据权利要求1所述的系统,其中,所述数字图像对应于打 印的文本内容的扫描图像。
3、 根据权利要求1所述的系统,其中,所述一个或多个回流对 象中的至少一个对应于文本内容的单词。
4、 一种用于处理数字图像文件的计算机实施的方法,该方法包括获得要处理的图像;识别所述图像中的回流对象;识别回流对象的边界区域;识别每个回流对象的回流对象基线;确定包含回流对象的每一个边界区域相对于所述图像以及相对 于其对应的回流对象基线的位置;确定每个边界区域的大小;和 存储每个边界区域的大小和位置。
5、 根据权利要求4所述的计算机实施的方法,其中,所述边界 区域对应于几何形状。
6、 根据权利要求4所述的计算机实施的方法,其中,所迷几何 形状为矩形,并且其中,用每个边界区域的宽度和高度来定义该边界 区域的大小。
7、 根据权利要求4所述的计算机实施的方法,其中,用每个边 界区域的至少一个角点的坐标来定义该边界区域相对于所述图像的 位置,用距回流对象基线的偏移来定义每个边界区域相对于其对应的 回流对象基线的位置。
8、 根据权利要求4所述的计算机实施的方法,其中,识别每个 回流对象的回流对象基线还包括识别在一行中出现的每个回流对象中表示的每个字符的每字符基线;,和、'—。、,, ,'、,回流对象的回流对象基线。
9、 根据权利要求8所述的计算机实施的方法,其中,组合在该 行中出现的回流对象中包括的每字符基线包括找到拟合函数,该拟合函数以最小平均误差平滑地估计每个每字 符基线的位置;和将每个回流对象的平均值输入到该拟合函数。
10、 根据权利要求4所述的计算机实施的方法,其中,每个回流 对象形成子图像,并被限定在边界区域中,每个边界区域的大小和位 置被定义,所述方法还包括确定输出介质的大小;基于每个边界区域的大小确定在具有输出介质的水平尺寸的多 条水平线的每一条上水平拟合的边界区域的数量;基于边界区域的大小确定每个边界区域相对于每条水平线的水平位置;基于边界区域的大小确定每条水平线上水平拟合的每个边界区域的垂直位置;和根据确定的边界区域的水平位置和垂直位置显现在边界区域中 限定的回流对象。
11、 根据权利要求10所述的计算机实施的方法,其中,所述输出介质为显示器,并且其中,根据显示器的垂直尺寸和水平尺寸来定 义输出介质的尺寸。
12、 根据权利要求10所述的计算机实施的方法,其中,所述多 条水平线的每一条上水平拟合的边界区域的数量相同。
13、 根据权利要求10所述的计算机实施的方法,其中,所述多 条水平线的每一条上水平拟合的边界区域的数量不同。
14、 根据权利要求10所述的计算机实施的方法,其中,确定每 个边界区域相对于每条水平线的水平位置还包括逐条水平线地在水 平方向上调整边界区域的水平位置。
15、 根据权利要求10所述的计算机实施的方法,其中,为每个 回流对象定义回流对象基线,并且其中,基于边界区域的大小确定每 条水平线上水平拟合的每个边界区域的垂直位置的步骤还包括基于显示器的大小确定每条水平线的垂直位置;和 确定每条水平线上水平拟合的每个边界区域的垂直位置,以使在 边界区域中限定的回流对象的回流对象基线与对应的水平线对齐。
16、 根据权利要求14所述的计算机实施的方法,其中,基于显 示器的大小确定每条水平线的垂直位置包括将显示器的垂直尺寸除 以最小间隔。
17、 根据权利要求10所述的计算机实施的方法,还包括 确定显示缩放级别;根据显示缩放级别重新调整边界区域的大小,并确定在所述多条 水平线的每一条上水平拟合的重调大小的边界区域的数量; 确定每个重调大小的边界区域相对于水平线的水平位置;确定每条水平线上水平拟合的每个重调大小的边界区域的垂直位置;和根据确定的重调大小的边界区域的水平位置和垂直位置显现在 重调大小的边界区域中限定的回流对象。
18、 一种执行如权利要求4-17之一所述的方法的计算机程序。
全文摘要
提供了一种计算机实施的、用于创建基于图像的可回流文件的方法。基于图像的可回流文件被配置为通过根据显示器或窗口的给定大小允许回流对象的行“回流”而自动进行自我调整,以显现在不同大小的显示器或窗口上。该方法包括首先接收具有回流对象的内容图像,以及识别包围图像中所含的回流对象的边界区域。然后识别每个回流对象的回流对象基线,并且确定包含回流对象的每个边界区域相对于图像以及相对于对应的回流对象基线的位置。然后确定及存储每个边界区域的大小,例如宽度和高度。
文档编号G09G5/00GK101536075SQ200780011599
公开日2009年9月16日 申请日期2007年3月22日 优先权日2006年3月29日
发明者A·B·科索, F·Z·R·阿卡林, J·沙盖姆, R·L·古德温 申请人:亚马逊科技公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1