CN105144147A - 检测并重构固定格式文档中的从右到左文本方向、连字和变音符号 - Google Patents

检测并重构固定格式文档中的从右到左文本方向、连字和变音符号 Download PDF

Info

Publication number
CN105144147A
CN105144147A CN201480014083.8A CN201480014083A CN105144147A CN 105144147 A CN105144147 A CN 105144147A CN 201480014083 A CN201480014083 A CN 201480014083A CN 105144147 A CN105144147 A CN 105144147A
Authority
CN
China
Prior art keywords
text
text string
format document
directivity
fixed
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
CN201480014083.8A
Other languages
English (en)
Inventor
M·舍舒姆
D·扎里克
M·安提克
M·拉斯科维克
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
Publication of CN105144147A publication Critical patent/CN105144147A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/126Character encoding
    • G06F40/129Handling non-Latin characters, e.g. kana-to-kanji conversion
    • 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/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/263Language identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Character Discrimination (AREA)
  • Machine Translation (AREA)
  • Character Input (AREA)

Abstract

提供了对固定格式文档中的从右到左的文本方向、从左到右的文本方向、连字和变音符的检测,以用于将固定格式文档重构成流格式文档。固定格式文档的每一文本串被分析以得到方向性。如果文本串包含连字,则将这些连字映射到相应的字符,以在包括其中放置有这些连字的文本串或与这些连字相邻的文本串的其他字符的上下文中实现这些连字的合适阅读次序。每一文本串都是基于确定的文本方向性来收集的,以供重构在流格式文档中。文本的列的合适文本方向性是按与文本的段落中的文本串的合适文本方向性相同的方式来确定的。如果存在与一个或多个字符或符号相关联的变音符号,则可作出关于与每一变音符号相关联的载体字符或符号的确定。

Description

检测并重构固定格式文档中的从右到左文本方向、连字和变音符号
背景
流格式文档和固定格式文档被广泛使用且具有不同的目的。流格式文档使用诸如章节、段落、列和表之类的复杂逻辑格式化对象来组织文档。结果,流格式文档提供了灵活性且容易修改,使得它们适用于涉及被频繁更新或受到相当多编辑的文档的任务。相反,固定格式文档使用诸如文本串、路径和图像之类的基本物理布局元素来组织文档以保留原始外观。固定格式文档提供了一致且精确的格式布局,使得它们适用于涉及不被频繁或大量改变的或其中需要统一性的文档的任务。这样的任务的示例包括文档归档、高质量再现,以及用于商业发布和印刷的源文件。固定格式文档通常从流格式源文档中创建。固定格式文档还包括物理(即,纸质)文档的数字化再现(例如,扫描和照片)。
在其中需要编辑固定格式文档但流格式源文档不可用的情况下,固定格式文档可被转换成流格式文档。转换涉及解析该固定格式文档并将来自固定格式文档的基本物理布局元素变换成在流格式文档中使用的更复杂的逻辑元素。
在一些情况下,固定格式文档中的文本可根据从左到右的阅读次序(例如,英语文本)或从右到左的阅读次序(例如,一些中东语言,诸如阿拉伯语)来呈现,或者文档可具有各阅读次序的组合。此外,一些固定格式文档可包含连字。根据Unicode(统一代码)标准,连字可具有两种形式,包括基本形式和呈现性形式。一般来说,对于每一连字,呈现性形式由一个Unicode代码分量组成,且基本形式由多个Unicode代码组成。当固定格式文档包含连字的呈现性形式时,通常用相应的基本形式来代替该呈现性形式,因为在将固定格式文档转换成流格式文档时,呈现性形式通常不会被正确地处理(即不会被正确地串行化)。此外,这样的文档中的许多文本项可具有变音符号(诸如某些字符或符号上的重音标记),并且一些字符可形成连字。
在将这样的固定格式文档转换成流格式文档时,文本的阅读次序必须根据合适的阅读次序来重构,或者得到的流格式文档将是不可读的。此外,如果在流格式文档中没有合适地重构阅读次序,则在流格式文档的后续修改期间,不合适地重构的文本(即,不合适的阅读次序重构)可能不会合适地回流(reflow),从而导致不符合适用于原始文档的预期阅读次序的流格式文档。
本发明正是对于这些和其他考虑事项而作出的。
概述
提供本发明内容以便以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
本发明的各实施例通过提供固定格式文档到流格式文档的重构来解决以上和其他问题,其中固定格式文档包含从右到左文本方向、从左到右文本方向、连字和变音符号。根据各实施例,将包含一个或多个文本方向的固定格式文档分解成诸个体文本串。每一文本串的分量被分析以得到方向性(例如,从右到左或从左到右)。接着检测文档中包含的任何变音符号。接着执行行检测,之后确定构成每一行的检测到文本串的逻辑次序。检测到的行被组织成相应的段落。方向性指定被应用于文档的每一段落,并且构成每一段落的行(以及所包括的文本串)的逻辑方向次序被确定。如果文本串包含连字,则将这些连字映射到相应的字符,以在构成其中放置有这些连字的文本串或与这些连字相邻的文本串的其他字符的上下文中合适地重构这些连字。如果文档具有一个或多个列部分,则针对这些列的合适文本方向性或阅读次序是以与确定文本段落中的文本串的合适文本方向相同的方式来确定的。
一个或多个实施例的细节在附图和以下描述中被阐明。通过阅读下面的详细描述并参考相关联的附图,其他特征和优点将变得显而易见。要理解的是下面的详细描述仅仅是解释性的,而不是对所要求保护的发明的限制。
附图简述
合并在本公开中并构成其一部分的附图例示出本发明的各种实施例。在附图中:
图1是包括文档转换器的系统的一个实施例的框图;
图2是示出文档处理器的一个实施例的操作流程的框图;
图3A是包含多个文本方向性或阅读次序的文档的图示;
图3B是包含包括连字的文本串和包括变音符号的文本串的文档的图示;
图4A和4B解说了用于将固定格式文档重构成流格式文档的方法的流程图,其中固定格式文档可包括从右到左文本方向、从左到右文本方向、连字和变音符号;
图5是解说可用来实施本发明的各实施例的计算设备的示例物理组件的框图;
图6A和6B是可用来实施本发明的各实施例的移动计算设备的简化框图;以及
图7是其中可实施本发明的各实施例的分布式计算系统的简化框图。
详细描述
如以上简要描述的,本发明的各实施例通过提供固定格式文档到流格式文档的重构来解决以上和其他问题,其中固定格式文档可包含从右到左文本方向、从左到右文本方向、连字和变音符号。以下详细描述参考各个附图。只要可能,就在附图和以下描述中使用相同的附图标记来指代相同或相似的元件。尽管可能描述了本发明的各实施例,但修改、改编、以及其他实现是可能的。例如,可对附图中所例示的元素进行替代、添加、或修改,并且可通过对所公开的方法替代、重新排序或添加阶段来修改本文中所描述的方法。因此,下文的详细描述不限制本发明,相反,本发明的合适范围由所附权利要求来限定。
现在参考附图将描述各种实施例,附图中相同的标号代表相同的元素。图1解说了合并了固定格式检测和流格式重构引擎120以及文本方向检测和重构引擎122的系统100的一个实施例。根据各实施例,固定格式检测和流格式重构引擎120可包括用于定位固定格式文档中的行、段落和其他对象以用于将来自固定格式文档的内容重构成流格式文档的软件模块。要获得更多关于检测固定格式文档中的行、段落和其他对象以用于将来自固定格式文档的内容重构成流格式文档的信息,参见2012年7月10日提交的标题为“FixedFormatDocumentConversionEngine(固定格式文档转换引擎)”的美国专利申请序列号13/521,378、2012年7月10日提交的标题为“ParagraphPropertyDetectionandStyleReconstructionEngine(段落属性检测和样式重构引擎)”的美国专利申请序列号13/521,407以及2013年1月2日提交的标题为“Multi-LevelListDetectionEngine(多层列表检测引擎)”的美国专利申请序列号13/808,052,其通过引用并入本申请,就好像在此完全予以了阐述。文本方向检测和重构引擎122可包括用于检测从右到左文本方向、从左到右文本方向、连字和变音符号以用于将固定格式文档重构成流格式文档的软件模块。
在所解说的实施例中,固定格式检测和流格式重构引擎120以及文本方向检测和重构引擎122可用作在计算设备104上执行的文档转换器102的一部分。文档转换器102使用解析器110、文档处理器112和串行化器114将固定格式文档106转换成流格式文档108。解析器110从固定格式文档106中读取和提取数据。从固定格式文档提取的数据被写入到可由文档处理器112和串行化器114访问的数据存储116。文档处理器112使用一个或多个检测和/或重构引擎(例如,固定格式文档检测和流格式重构引擎120以及文本方向检测和重构引擎122)来分析该数据并将其变换为可流动(flowable)元素。最后,串行化器114将可流动元素写成可流动文档格式(例如,文字处理格式)。
图2更加详细地解说了文档处理器112的操作流的一个实施例。文档处理器112包括可选的光学字符识别(OCR)引擎202、布局分析引擎204以及语义分析引擎206。数据存储116中包含的数据包括物理布局对象208和逻辑布局对象210。在一些实施例中,物理布局对象208和逻辑布局对象210被分层地安排在编组的树类阵列(即,数据对象)中。在各实施例中,页面是物理布局对象208的顶层编组,而章节是逻辑布局对象210的顶层编组。从固定格式文档106中提取的数据一般被存储为由固定格式文档106中的包含页面来组织的物理布局对象208。基本物理布局对象208包括文本串(textrun)、图像和路径。文本串是页面内容流中指定当显示固定格式文档时字符的绘制位置的文本元素。图像是存储在固定格式文档106中的光栅图像(即,图片)。路径描述了诸如线、曲线(例如,三次贝塞尔曲线)和文本轮廓等用于构建矢量图的元素。逻辑布局对象210包括诸如章节、段落、列、表和列表等可流动元素。
处理开始的位置取决于被解析的固定格式文档106的类型。从流格式源文档直接创建的本机固定格式文档106A包含基本物理布局元素中的一些或全部。嵌入式数据对象由解析器提取并且可供文档转换器立即使用;但在某些情况下,微小的重新格式化或其它微小处理被应用来组织或标准化数据。相反,通过对物理文档进行数字成像(例如,扫描或拍照)而创建的基于图像的固定格式文档106B中的所有信息被存储作为不带有附加数据(即,没有文本串或路径)的一系列页面图像。在这种情况下,任选的光学字符识别引擎202分析每一页图像并创建对应的物理布局对象。一旦物理布局对象208可用,布局分析引擎204就分析固定格式文档的布局。在布局分析完成之后,语义分析引擎206用从对物理布局对象和/或逻辑布局对象的分析中获得的语义信息来丰富逻辑布局对象。
现参考图3A,固定格式文档106被解说为被显示在平板式计算设备305的显示表面上。如应当领会的,平板式计算设备305只是任何合适计算设备的一个示例,并且其上可显示固定格式文档并且其上可显示转换后的流格式文档的相关联的显示器可根据本发明的各实施例来显示。
固定格式文档106包含标题310和三个文本段落315、335、340。第一文本段落包含以从左到右的阅读次序书写的英语段落。段落315由多个文本行组成,并且每一文本行由多个文本串组成。如应当领会的,文本串可包括单个字符、字符符号、个体单词、个体单词与相邻的空格的组合、单词之后是空格之后是另一单词的组合、单词经由字符和/或符号(例如,连字号、圆点等)连接到另一单词的组合,或者文本串可包括整个行或行集合。
第一段落315包括多个单词、单词之间的空格320、数字325、和包括变音符号332(例如字符“e”上的重音标记)的至少一个单词330。第二段落335包括以从左到由次序书写的多行文本,并包括含连字的至少一个单词337“wheel(轮子)”,该连字包括字母“heel”。
仍参考图3A,段落340被示为以从右到左的阅读次序书写,并包含至少一个单字符文本串350,且包含一双字符数字文本串355。如应当领会的,多种语言通常以从左到右的阅读次序呈现,如在段落315、335中示出的,例如根据英语书写的文本。替换地,多种其他语言(例如许多中东语言,诸如阿拉伯语和希伯来语)被书写到以从右到左的阅读次序呈现的文本中。段落340中示出的单词仅出于说明的目的是以从右到左的方向书写的英语单词,而不旨在表示属于特定语言的文本。实际上,段落340中的单词(文本串)旨在示出根据本文中描述的各实施例的对从右到左的文本方向性的处理。
现参考图3B,解说了在平板式计算设备上显示的文档中的单词337,该单词337包括字符“w”形式的第一字符365以及包括文本字符“heel”的连字370。单个字符365和连字370的组合结合以形成以草写体文本样式书写的英语单词“wheel”。如应当领会的,许多语言包括连字,诸如图3B中解说的示例连字。具体地,许多语言(例如许多中东语言、东方语言等)包括各种丰富的连字,这些连字包括在文档中呈现的各个文本串中所包括的一个或多个文本字符和/或符号。如以下所描述的,为了确保合适地重构包含一个或多个阅读次序并包含连字的固定格式文档,如图3B所解说的,可基于这样的连字的位置的上下文将这样的连字映射到相应的字符和/或文本串,以供确保合适地执行与相应文本的阅读次序相关联地将这些连字重构为流格式文档的一部分。
仍参考图3B,解说了与字符“e”上重音标记形式的变音符号332相关联的单词330(“José”),其可被包括作为根据从右到左的阅读次序或从左到右的阅读次序呈现的文档中的文本串。边界框375被示为在单词330的文本字符周围,并且边界框380被示为在定位在单词330中的字符“e”上方的重音标记或变音符号332周围。如以下所描述的,当文本串(例如单词330)被包括在必须被重构成流格式文档的固定格式文档中时,诸如重音标记332之类的变音符号必须被考虑,并且必须相对于与这些变音符号相关联的相关联字符或符号被合适地定位,以使得当该文本串被重构在流格式文档中时,这些变音符号将相对于相关联的字符和/或符号并相对于为该文本串确定的文本方向和阅读次序被合适地定位。
在以上参考图1到图3描述了用于本发明的各实施例的示例性操作环境以及示例多方向文本串的情况下,图4A和4B解说了用于将固定格式文档重构成流格式文档的方法的流程图,其中固定格式文档可包括从右到左的文本方向、从左到右的文本方向、连字和变音符号。随后参考图4A,方法400始于开始操作405,并前进到操作410,在操作410,接收要被重构成流格式文档的固定格式文档。
在操作415,接收到的固定格式文档被传递给解析器110,并且该固定格式被分成各个体文本串,随后这些个体文本串被根据与构成这些个体文本串的各个体符号相关联的方向性拆分开。即,每一文本串被分成各部分,以使得每一部分对于与每一部分相关联的方向性而言是唯一的。例如,如果给定文本串具有从右到左方向性和从左到右方向性两者,则该文本串将被分成从右到左部分和从左到右部分。
根据本发明的一实施例,可由文档转换器102使用解析器110、文档处理器112将固定格式文档分解成各文本串,如以上参考图1所描述的。如应当领会的,解析器110、文档处理器112可使用多种方法来将接收到的文本分解成各文本串。根据一个实施例,每一文本串可被分解成各个体单词或各个体字符,并且各个体单词和/或字符可与用于确定所提取的单词和/或字符是否匹配已知单词的单词和/或字符库进行比较。此外,空格和标点符号标记可用于帮助文档处理器112与解析器110相关联地将各行拆分成各个体文本串,包括各个体单词、单词组合等。
如上所述,文本串可以是文本字符串的多个不同分量之一,例如为单个字符、单个单词、单个单词之后或之前是空格、单词之后是空格再之后是另一单词、整个句子或多个句子。即,文本串可以是单词、数字、空格、标点符号标记等的多种不同的组合,其组合在一起以生成有意义的文本字符串,该文本字符串可用作给定语言的书写元素并且可被分析以确定给定文本串的文本方向性或阅读次序,如本文中所描述的。回过头参考图3A,在固定格式文档106中提供的文本包括三个段落315、335、340。每一段落都包括多个行,并且每一段落的每一行包括多个文本串,这些文本串包括单词、空格和数字等。
除了标识接收到的固定格式文档中的一个或多个文本串外,在文档解析过程期间还可检测连字形式的文本串。如以上参考图3A和3B所解说和描述的,连字可处于字符或符号的混合的形式以形成可被各种语言用作有用文本分量的文本分量。例如,参考图3B,单词“wheel”包括通过小量空格与包括字符“h、e、e、l”的连字分隔开的单个单词“w”,字符“h、e、e、l”在物理上混合在一起作为单个文本分量(“heel”)。如以下所描述的,由于这样的连字可出现在根据特定文本方向(例如,从右到左的方向性)呈现的各文本串中,在确定接收到的固定格式文档中包括的文本串的文本方向性时,必须考虑这样的连字,以使得将该文档重构为流格式文档将被正确地执行。
在可确定构成接收到的固定格式文档的各文本串的字符和文本串方向性之前,可对从接收到的固定格式文档中解析出的文本串执行预处理,以用于根据与各文本串相关联的不同方向性来拆分解析出的文本串。即,由于各文本串可具有不同方向性的字符,因此在确定从文档解析出的具有强文本方向性的文本串的数目之前,确定各文本串中可存在的不同类方向性可能是必要的。
接着,可开始与每一经解析文本有关的确定,以用于确定四类方向性之一是否可与每一文本串、构成文本串的字符或诸如连字的其他分量相关联。根据一实施例,可为每一文本串或每一文本串的分量确定四类方向性。第一类方向性是与例如中东语言(如阿拉伯语)的某些语言相关联的从右到左的方向性。可应用于给定文件串或其分量的第二类文本方向性是与例如英语的某些语言相关联的从左到右的方向性。第三类方向性是与诸如文字间的空格、标点符号标记或其他并非给定文本方向性所特有的文本分量之类的文本分量相关联的中间方向性。第四类文本方向性是通常与给定文本串中包含的或与给定文本串相关联的数字相关联的弱方向性。
在操作420,存在于接收到的固定格式文档中的任何变音符号都可被处理来将合适的文本方向性应用于每一变音符号,以使得该变音符号将根据合适的文本方向性被重构在流格式文档中。当在操作420处理文档以得到变音符号时,接收到的固定格式文档的每一页面被解析以获得在该页面中找到的变音符号。例如,回过头参考图3B,从接收到的固定格式文档中解析出单词“José”,并定位变音符号332(例如,重音标记)。在解析过程期间,文本方向检测引擎122尝试定位每一经定位变音符号的载体。例如,参考图3B,变音符号(重音标记)332的载体是单词330的结尾处的字母“e”。由此,在解析期间,文本方向检测引擎122尝试找出每一变音符号以及与每一变音符号相关联的每一载体。
仍参考图3B,文本方向检测引擎122分析与每一显示文本分量相关联的边界框,例如限定变音符号332的边界框380以及限定单词330的边界框375。在操作425,作出关于在标识出的变音符号的边界框和相关联的载体的边界框之间是否存在水平重叠的确定。如果在变音符号的边界框和载体的边界框之间存在这样的水平重叠,则该方法行进到操作435,并且在操作435,由水平重叠的边界框限定的变音符号和载体字符或载体符号被正好存储在载体字符或载体符号之后(例如在其右侧)。
如果载体字符或载体符号包含多个字符(即,它形成连字),则必须确定载体符号中的哪个字符携带该连字。在这样的情况下,文本方向检测引擎122可通过用载体符号的边界框除以字符总数来估计字符边界框。随后,可执行对变音符号边界框与估计或计算出的字符边界框的水平重叠的搜索,并且变音符号可被存储在紧跟在载体字符或载体符号后面的符号字符串内。在从右到左的文本方向性的情况下,变音符号可正好被存储在字体后面(即在载体的左边)。
回过头参考操作425,如果标识出的变音符号的边界框380不与相关联的载体、字符或符号的边界框375水平重叠,则方法400行进到操作430,并且将变音符号保留在用于从固定格式文档中定位变音符号的初始解析过程期间找到该变音符号的地方。
在操作440,固定格式文档可被分成各个体行,以用于帮助和分析构成各个体行的文本串。引擎120可使用公知的文本行属性将接收到的文本分成各个体行。例如,像之后是一个或多个空格的句号之类的标点符号标记可指示一行的结束,在其之后是另一行的开始。给定文本串的这样的属性可被固定格式检测和流格式重构引擎120用于将给定段落分成一个或多个行。
根据一实施例,在操作445,文本方向引擎122可将从接收到的文档解析出的每一文本串放置在与共享相同文本方向性的其他文本串的桶(bucket)中。即,“桶”表示基于公共文本方向性而彼此相关的文本串的逻辑群组。在由文档处理器执行的用于解析并提取一个或多个文本串的解析过程期间,可作出关于每一解析出的文本串的文本方向性的确定。例如,可将在解析过程期间被标识成单词的文本串与单词库进行比较,以确定这些文字属于从左到右的阅读次序还是从右到左的阅读次序。随着每一文本串或单词被标识为属于特定次序,这样定义的单词可被存储在与具有相同文本方向性的其他单词的逻辑关系中。
这样的根据特定文本方向性来定义的文本串或单词将被认为具有强文本方向,因为那些文本串或单词可根据两个特定文本方向之一来定义。例如,回过头参考图3A,从构成前两个段落315和335的文本串中解析出的单词可通过对照属于从左到右阅读次序的已知单词库来匹配解析出的每一单词而被标识为有从左到右阅读次序。类似地,包括构成第三段落340的单词的文本串可通过对照根据以从右到左的文本次序来呈现的语言来利用的词典或其他单词储存库对这些单词进行比较而被标识为属于从右到左文本次序。
除了将根据特定文本方向性来定义的每一文本串放置在与其他类似指定的文本串的逻辑定义关联(“桶”)中以外,根据中间或弱文本方向性定义的文本串可同样被存储在有相同文本方向性的其他文本串的桶中。根据一个实施例,弱文本串和中间文本串可被存储在相同的桶或逻辑关联中以供后续分析。
根据一实施例,具有与从左到右文本串在同一文本串中的中间方向性文本串和/或弱方向性文本串并不是问题。即,在将该文本串重构成流格式文档时具有中间和/或弱文本方向性文本串连同从左到右不存在问题,因为那些有弱和/或中间文本方向性的文本串不会与从左到右文本串一起在后来重构的流格式文档中创建回流问题。由此,根据一实施例,文本方向性引擎122可仅拆分具有从右到左文本方向性的文本串加上有某一其他方向性的字符或文本串。例如,分组在一起的各文本串的有用组合包括与中间文本串分组在一起的从右到左文本串、与弱文本串分组在一起的从右到左文本串、从右到左文本串加上从左到右文本串、或者其各种组合。
例如,考虑文本串“CIBARA1234”,根据本文中描述的各实施例,该示例文本串将被拆分成两个文本串“CIBARA”和“1234”。由于开始文本字符串中的字母字符处于从右到左的方向性,而数字字符串具有弱文本方向性,因此执行该拆分。由此,如所描述的,在不拆分该文本字符串的情况下,该文本字符串可被错误地转换成诸如“4321ARABIC”之类的字符串,而此时正确的转换将读成“1234ARABIC”。
在操作450,接收到的固定格式文档被以上参考图1描述的固定格式方向和流格式重构引擎120分成各段落。应当领会,接收到的固定格式文档可根据各种不同的方法来被分成一个或多个段落。例如,接收到的固定格式文档106中在各行间距之间连续运行的所有行可被认为是一段落。即,行群组之后是行间距再之后是第二行群组再之后是另一行间距并以此类推可被利用来得到用于确定这些群组中的每一者都是一段落的信息。可用于确定给定行集合为一段落的其他标记包括段落指示或可被应用于行群组以指示这些行可一起属于一段落的一个或多个注释。
在操作455,文本方向性引擎122确定在接收到的固定格式文档106的每一段落315、335、340中存在的从左到右和从右到左字符和/或文本串的数目。如果给定段落(例如段落315)具有更多计数的从右到左字符和/或文本串,则引擎122将该段落指定为从右到左文本方向性段落。替换地,如果被分析的段落包含更多计数的从左到右字符和/或文本串,则文本方向检测引擎122将把该段落指定为从左到右文本方向性段落。如将领会的,根据特定文本方向性来指定各个体文本串和段落的过程在根据应用于接收到的文档中的各个体文本串、行和段落的合适文本方向性来最终重构接收到的固定格式文档106时进一步帮助引擎122中的文本方向检测。
基于为每一段落中的字符和/或文本串确定的方向性计数,将接收到的固定格式文档106中的每一被解析和被分析的段落指定为从左到右文本方向段落或从右到左文本方向段落。在操作455,在如上所述的指定了段落方向性后,文本方向检测引擎122接着确定每一指定段落内部的文本串的逻辑次序。为了确定文本串的逻辑次序,文本串的每一桶被分析,并且具有中间或弱文本方向的每一文本串被指定为具有强方向性。如上所述,中间和/或弱方向文本串可一起被存储在同一存储桶中。如应当领会的,强方向性(即,从右到左或从左到右)的应用是必须的,以使得每一中间和/或弱文本串可与有特定强文本方向的其他文本串相关联。
对于将强方向性应用到每一中间和/或弱文本串,如果给定中间或弱文本串在两个从右到左的文本串之间,则将从右到左的强文本方向性设置在所分析的的中间或若文本串上。替换地,如果给定中间或弱文本串在两个从左到右文本串之间,则将从左到右的强文本方向性设置在所分析的的中间或弱文本串上。如果给定的被分析中间或弱文本串不在两个强文本方向性文本串之间,则将为从其解析出该被分析中间或弱文本串的段落指定的文本方向性设置在该被分析文本串上。即,如果被分析中间或弱文本串不定位在两个强文本方向性文本串之间,则将为从其解析出该中间或弱文本串的段落指定的文本方向性设置在那个文本串上。
在已经为每一段落和每一文本串(包括中间和/或弱文本方向文本串)指定了强文本方向性后,按用于根据合适的文本方向性来最终将这些文本串重构成流格式文档中的行和段落的逻辑次序来收集每一文本串。首先,如果与文本串的集合相关联的段落文本方向性为从右到左,则文本方向检测引擎122可遍历该段落中的所有行,并且可按从右到左的收集次序来收集每一行中具有从右到左方向的所有文本串。替换地,如果段落文本方向性为从左到右,则文本方向检测引擎122可遍历该段落的所有行,并且可按从左到右的收集次序来收集每一行中具有从左到右方向的所有文本串。即,通过根据合适的文本方向性次序来收集每一文本串,随后根据合适的文本方向来逻辑地布置每一文本串,以使得在将这些文本串重构成流格式文档时,这些文本串将在被修改或以其他方式被编辑成流格式文档的一部分时正确地回流。
在一些情况下,接收到的固定格式文档106可包括章节,这些章节包括一个或多个文本和/或数字列。例如,在信、备忘录或其他文档中,文本可被布置在一系列段落和行中,但在文档中的各位置处可包括章节,这些章节包括作为数据或其他感兴趣的信息被呈现给读者的文本或数字列。在操作460,文本方向检测引擎122处理接收到的固定格式文档的包含组织成列的文本串的任何章节。根据各实施例,如果接收到的固定格式文档具有包括文本串的列的一个或多个文档章节,则在操作465,文本方向检测引擎122确定整个章节的文本方向性,因为这样的章节的阅读次序取决于向该章节应用的文本方向。
根据一个实施例,如果该章节具有从左到右的文本方向性,则将以相同的次序(即,从左到右)来呈现或显示各文本串列。另一方面,如果章节具有从右到左方向性,则将以那个相同的次序(即,从右到左)来显示这些列。包括文本串列的文档章节的文本方向性是按与针对以上描述的段落、行和文本串相同的方式来确定的。即,如果给定章节中存在更多从右到左的字符,则该章节将被指定为有从右到作的文本方向。替换地,如果章节中存在更多从左到右的字符,则从左到右的文本方向性将被指定给该章节。
如以上参考图3B所描述的,在段落和/或包含文本串列的章节中包含的一些文本串处于连字的形式,连字可以是被组合在一起以根据特定语言来形成有用的文本分量的字符和/或符号的集合。对于段落和列的章节两者,可通过以下方式将文本方向性应用到被确定为是连字的文本串:将那些连字映射到文档的文本串中的相应字符,以用于确定这些连字的上下文并用于确定要应用到这些连字的文本方向性。例如,考虑图3B中示出的连字370,该连字可被映射到包含在构成单词“wheel”的文本串中的字符,并且构成该单词的一部分的连字的上下文可被利用来确定该连字与单词“wheel”相关联,并且由此文本方向性可与同该连字相关联的单词相关联地并与在该连字周围的其他文本串相关联地被如上所述应用到该连字,以用于将文本方向性指定给构成接收到的固定格式文档的各段落的各个体文本串。
在操作470,段落、行、文本串、连字和变音符号可被重构成接收到的固定格式文档的流格式文档,并且在重构期间向每一个这样的文本分量应用的文本方向性可被跟随,以使得流格式文档将被重构成允许根据该指定的文本方向性来对每一文本分量进行编辑和/或修改,以使得该文本分量在编辑和/或其他修改期间将合适地回流。方法400在操作495处结束。
尽管已在结合在计算机上的操作系统上运行的应用程序执行的程序模块的一般上下文中描述本发明,但本领域的技术人员将认识到,本发明也可结合其他程序模块实现。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。
本文描述的实施例和功能可通过多种计算系统来操作,包括但不限于台式计算机系统、有线和无线计算系统、移动计算系统(如移动电话、上网本、图形输入板或平板型计算机、笔记本计算机、和膝上型计算机)、手持设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、以及大型计算机。
此外,本文所述的实施例和功能性可在分布式系统(如基于云的计算系统)上操作,其中应用功能性、存储器、数据存储和检索、以及各种处理功能可在诸如因特网或内联网之类的分布式计算网络上彼此远程地操作。各种类型的用户界面和信息可经板载计算设备显示器或经与一个或多个计算设备相关联的远程显示单元被显示。例如,各种类型的用户界面和信息可在墙壁表面上被显示和交互,各种类型的用户界面和信息被投射在墙壁表面上。与可用于实施本发明的各实施例的许多计算系统的交互包括:键击输入、触摸屏输入、语音或其他音频输入、姿势输入(其中相关联的计算设备配备有用于捕捉和解释用于控制计算设备的功能性的用户姿势的检测(如相机)功能性)等。
图5-7以及相关联的描述提供了其中可实施本发明的各实施例的各种操作环境的讨论。然而,关于图5-7所示出和讨论的设备和系统是用于示例和说明的目的,而非对可被用于实施本文所述的本发明的各实施例的大量计算设备配置的限制。
图5是示出可用来实施本发明的各实施例的计算设备500的物理组件(即硬件)的框图。下面描述的计算设备组件可适用于上述的计算设备。在基本配置中,计算设备500可包括至少一个处理单元502和系统存储器504。取决于计算设备的配置和类型,系统存储器504可包括,但不限于,易失性存储(例如,随机存取存储器)、非易失性存储(例如,只读存储器)、闪存、或这些存储器的任何组合。系统存储器504可包括操作系统505和适于运行诸如固定格式文档检测和流格式重构引擎120和文本方向检测和重构引擎122、文档处理器112、解析器110、文档转换器102以及串行化器114之类的软件应用520的一个或多个程序模块506。操作系统805例如可适合于控制计算设备500的操作。此外,本发明的实施例可结合图形库、其他操作系统、或任何其他应用程序来实践,并且不限于任何特定应用或系统。该基本配置在图5中由虚线508内的那些组件示出。计算设备500可具有附加特征或功能性。例如,计算设备500还可包括附加数据存储设备(可移动和/或不可移动),诸如,例如磁盘、光盘或磁带。这些附加存储在图5中由可移动存储509和不可移动存储510示出。
如上所述,可在系统存储器504中存储多个程序模块和数据文件。尽管在处理单元502上执行,但程序模块506(例如,固定格式检测和流格式重构引擎120和文本方向检测和重构引擎122、解析器110、文档处理器112和串行化器114)可执行包括但不限于图4中解说的方法400的一个或多个阶段的过程。根据本发明的实施例可使用的其他程序模块可包括电子邮件和联系人应用、字处理应用、电子表格应用、数据库应用、幻灯片演示应用、绘图或计算机辅助应用等。
此外,本发明的实施例可在包括分立电子元件的电子电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路、或在包含电子元件或微处理器的单个芯片上实践。例如,可以通过片上系统(SOC)来实施本发明的各实施例,其中,可以将图5中示出的每个或许多组件集成到单个集成电路上。这样的SOC设备可包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元以及各种应用功能性,所有这些都作为单个集成电路被集成到(或“烧录到”)芯片基板上。当通过SOC操作时,在此所述的关于固定格式检测和流格式重构引擎120、文本方向检测和重构引擎122、解析器110、文档处理器112以及串行化器114的功能可以通过在单个集成电路(芯片)上与计算设备500的其它组件集成在一起的专用逻辑来操作。本发明的实施例还可使用能够执行诸如例如,AND(与)、OR(或)和NOT(非)的逻辑运算的其他技术来实践,包括但不限于,机械、光学、流体和量子技术。另外,本发明的实施例可在通用计算机或任何其他电路或系统中实践。
计算设备500还可具有一个或多个输入设备512,如键盘、鼠标、笔、语音输入设备、触摸输入设备等等。还可包括(诸)输出设备514,如显示器、扬声器、打印机等等。上述设备是示例,并且可使用其他设备。计算设备500可包括允许与其他计算设备518进行通信的一个或多个通信连接516。合适的通信连接516的示例包括但不限于RF发射机、接收机和/或收发机电路;通用串行总线(USB)、并行或串行端口、以及适于与适用的计算机可读介质一起使用的其他连接。
例如,本发明的实施例可被实现为计算机过程(方法)、计算系统、或诸如计算机程序产品或计算机可读介质之类的制品。计算机程序产品可以是计算机系统可读并对用于执行计算机过程的指令的计算机程序编码的计算机存储介质。
如此处所使用的术语计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块、或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器504、可移动存储设备509和不可移动存储设备510全部都是计算机存储介质(即,存储器存储)的示例。计算机存储介质可以包括,但不限于,RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光存储、磁带盒、磁带、磁盘存储或其它磁性存储设备或可用于存储信息且可以由计算设备500访问的任何其它介质。任何这样的计算机存储介质都可以是计算设备500的一部分。
通信介质可由诸如载波或其他传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块、或其他数据来体现,并且包括任何信息传递介质。术语“已调制数据信号”可以描述以对该信号中的信息进行编码的方式设定或者改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接等有线介质,以及诸如声学、射频(RF)、红外线和其他无线介质等无线介质。
图6A和6B示出可用来实施本发明的各实施例的移动计算设备600,例如移动电话、智能手机、平板个人计算机、膝上型计算机等。参考图6A,示出了用于实现各实施例的移动计算设备600的一个实施例。在一基本配置中,移动计算设备600是具有输入元件和输出元件两者的手持式计算机。移动计算设备600通常包括显示器605以及允许用户将信息输入到移动计算设备600中的一个或多个输入按钮610。移动计算设备600的显示器605也可充当输入设备(如触摸屏显示器)。如果包括,则可任选的侧输入元件615允许进一步的用户输入。侧输入元件615可以是旋转开关、按钮、或任何其他类型的手动输入元件。在替代实施例中,移动计算设备600可结合更多或更少的输入元件。例如,在一些实施例中,显示器605可以不是触摸屏。在又一替代实施例中,移动计算设备600是诸如蜂窝电话之类的便携式电话系统。移动计算设备600还可包括可选的小键盘635。可选的小键盘635可以是物理小键盘或者在触摸屏显示器上生成的“软”小键盘。在各个实施例中,输出元件包括用于显示图形用户界面(GUI)的显示器605、可视指示器620(如发光二极管)、和/或音频换能器625(如扬声器)。在一些实施例中,移动计算设备600结合振动换能器来向用户提供触觉反馈。在又一实施例中,移动计算设备600结合诸如音频输入(如传声器插孔)、音频输出(如耳机插孔)、以及视频输出(如HDMI端口)之类的输入和/或输出端口,用于将信号发送到外部设备或从外部设备接收信号。
图6B是示出移动计算设备的一个实施例的架构的框图。即,移动计算设备600可结合系统(即架构)602以实现某些实施例。在一个实施例中,系统602被实现为能够运行一个或多个应用(如浏览器、电子邮件、日历、联系人管理器、消息收发客户端、游戏以及媒体客户端/播放器)的“智能电话”。在一些实施例中,系统602被集成为计算设备,诸如集成的个人数字助理(PDA)和无线电话。
一个或多个应用程序667可被加载到存储器662中并在操作系统664上或与操作系统664相关联地运行。应用程序的示例包括电话拨号程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、因特网浏览器程序、消息通信程序等等。系统602还包括存储器662内的非易失性存储区域668。非易失性存储区668可被用于存储在系统602断电的情况下不会丢失的持久信息。应用程序667可使用信息并将信息存储在非易失性存储区668中,如电子邮件应用使用的电子邮件或其他消息等。同步应用(未示出)也驻留在系统602上并且被编程以与主机计算机上驻留的相应同步应用交互,以便使非易失性存储器668中存储的信息与主机计算机处存储的相应信息同步。如应当领会的,其他应用可被加载到存储器662中并在移动计算设备600上运行,这些其他应用包括本文中描述的固定格式检测和流格式重构引擎120、文本方向检测和重构引擎122、解析器110、文档处理器112和串行化器114。
系统602具有可被实现为一个或多个电池的电源670。电源670还可包括外部功率源,如补充电池或对电池充电的AC适配器或加电对接托架。
系统602还可包括执行发射和接收无线电频率通信的功能的无线电672。无线电672通过通信运营商或服务供应商方便了系统602与“外部世界”之间的无线连接。来往无线电672的传输是在操作系统664的控制下进行的。换言之,无线电672接收的通信可通过操作系统664传播到应用程序667,反之亦然。
无线电672允许系统602例如通过网络与其他计算设备通信。无线电672是通信介质的一个示例。通信介质通常由诸如载波或其他传输机制之类的已调制数据信号中的计算机可读指令、数据结构、程序模块、或其他数据来体现,并且包括任何信息传送介质。术语“已调制数据信号”是指使得以在信号中编码信息的方式来设置或改变其一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。如此处所使用的术语计算机可读介质包括存储介质和通信介质两者。
系统602的该实施例使用可用于提供可视通知的可视指示器620和/或通过音频换能器625来产生音频通知的音频接口674来提供通知。在所示实施例中,可视指示符620是发光二极管(LED),而音频换能器625是扬声器。这些设备可直接耦合到电源670,使得当被激活时,即使为了节省电池功率而可能关闭处理器660和其他组件,它们也在一段由通知机制指示的持续时间保持通电。LED可被编程为无限地保持通电,直到用户采取动作指示该设备的通电状态。音频接口674用于向用户提供听觉信号并从用户接收听觉信号。例如,除了被耦合到音频换能器625之外,音频接口674还可被耦合到话筒来接收可听输入,例如便于电话通话。根据各本发明的各实施例,话筒也可充当音频传感器来便于对通知的控制,如下文将描述的。系统602可进一步包括允许板载相机的操作来记录静止图像、视频流等的视频接口676。
移动计算设备600实现系统602可具有附加特征或功能。例如,移动计算设备600还可包括附加数据存储设备(可移动和/或不可移动),例如磁盘、光盘或磁带。这种附加存储在图6B中用非易失性存储区域668示出。计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块、或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。
由移动计算设备600生成或捕捉且经由系统602存储的数据/信息可如上所述被本地存储在移动计算设备600上,或该数据可被存储在可由设备通过无线电672或通过移动计算设备600和与移动计算设备600相关联的分开的计算设备之间的有线连接访问的任何数量的存储介质上,该分开的计算设备为例如因特网之类的分布式计算网络中的服务器计算机。如应领会的,这样的数据/信息可经由移动计算设备600、经由无线电672或经由分布式计算网络来被访问。类似地,这些数据/信息可根据已知的数据/信息传送和存储手段来容易地在计算设备之间传送以存储和使用,这些手段包括电子邮件和协作数据/信息共享系统。
图7解说了如上所述的用于向一个或多个客户端设备提供对固定格式文档106中的从右到左的文本方向、从左到右的文本方向、连字和变音符号的检测的系统700的架构的一个实施例。与固定格式检测和流格式重构引擎120、文本方向检测和重构引擎122、解析器110、文档处理器112和串行化器114相关联的开发、交互和编辑的内容可被存储在不同的通信信道或其他存储类型中。例如,各种文档可使用目录服务722、web门户724、邮箱服务726、即时消息存储728或社交网站730来存储。固定格式检测和流格式重构引擎120、文本方向检测和重构引擎122、解析器110、文档处理器112和串行化器114可使用这些类型的系统等中的任一者以允许数据利用,如本文中所描述的。服务器720可向客户端提供固定格式检测和流格式重构引擎120、文本方向检测和重构引擎122、解析器110、文档处理器112和串行化器114。作为一个示例,服务器720可以是在web上提供固定格式检测和流格式重构引擎120、文本方向检测和重构引擎122、解析器110、文档处理器112和串行化器114的web服务器。服务器720可通过网络715在web上向客户端提供固定格式检测和流格式重构引擎120、文本方向检测和重构引擎122和串行化器114。作为示例,客户端计算设备718可被实现为计算设备500并体现为个人计算机718a、平板计算设备718b和/或移动计算设备718c(如智能电话)中。客户端设备718的这些实施例中的任一个可从存储716获得内容。
以上参考例如根据本发明的各实施方式的方法、系统和计算机程序产品的框图和/或操作图示描述了本发明的各实施方式。框中所注明的各功能/动作可以按不同于任何流程图所示的次序出现。例如,取决于所涉及的功能/动作,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以按相反的次序来执行。
本申请中提供的一个或多个实施例的描述和说明不旨在以任何方式限制或约束如权利要求所要求保护的发明范围。本申请中提供的实施例、示例和细节被认为是足以传达所有权,且使得他人能够制作并使用所要求保护的发明的最佳模式。所要求保护的发明不应被理解为限制于本申请中所提供的任何实施例、示例或细节。不管是以组合的方式还是分开的方式示出和描述,各种特征(结构上的和方法逻辑上的)旨在被选择性地包括或忽略,以产生具有特定的特征集的实施例。在被提供本申请的描述和说明的情况下,本领域的技术人员能够想象到落在所要求保护的发明的更宽泛方面以及本申请中所具体化的一般发明概念的精神内的替代实施例并不背离该更宽泛的范围。

Claims (10)

1.一种检测固定格式文档的文本方向以用于重构流格式文档的方法;所述方法包括:
将所述固定格式文档分成一个或多个文本串;
确定所述一个或多个文本串中的每一者的文本串方向性;
根据为所述一个或多个文本串中的每一者确定的文本串方向性来收集所述一个或多个文本串中的每一者;以及
将所述固定格式文档重构成流格式文档,其中重构在所述流格式文档中的所述一个或多个文本串中的每一者都是根据为所述一个或多个文本串中的每一者指定的指定文本串方向性来重构的。
2.如权利要求1所述的方法,其特征在于,根据为所述一个或多个文本串中的每一者确定的文本串方向性来收集所述一个或多个文本串中的每一者包括基于从右到左的方向性或基于从左到右的方向性来收集所述一个或多个文本串中的每一者。
3.如权利要求1所述的方法,其特征在于,在将所述一个或多个行分成一个或多个文本串后,将所述固定格式文档分成一个或多个段落。
4.如权利要求3所述的方法,其特征在于,进一步包括确定所述一个或多个段落中的每一者的文本方向性。
5.如权利要求1所述的方法,其特征在于,所述一个或多个文本串包括一个或多个连字。
6.如权利要求1所述的方法,其特征在于,进一步包括:
确定所述固定格式文档中的一个或多个章节的文本方向性,所述章节包含一个或多个文本串列;以及
其中根据为所述一个或多个文本串中的每一者确定的文本串方向性来收集所述一个或多个文本串中的每一者包括根据为所述一个或多个文本串列中包含的一个或多个文本串中的每一者确定的文本串方向性来收集所述一个或多个章节中包含的一个或多个文本串中的每一者。
7.如权利要求1所述的方法,其特征在于,
将所述固定格式文档分成一个或多个文本串包括解析所述固定格式文档,以得到所述固定格式文档中包含的一个或多个变音符号;以及
其中根据为所述一个或多个文本串中的每一者确定的文本串方向性来收集所述一个或多个文本串中的每一者包括收集与所收集的文本串中的任一者相关联的任何变音符号。
8.如权利要求7所述的方法,其特征在于,对于从所述固定格式文档中解析出的每一个变音符号,如果包含给定变音符号的边界框与包含载体字符或载体符号的边界框水平地重叠,则在将所述固定格式文档重构成流格式文档时,指定将所述给定变音符号与所述载体字符或载体符号重构在一起,其中向所述给定变音符号分配了所述载体字符或载体符号的文本方向性。
9.一种包含计算机可执行指令的计算机可读介质,所述计算机可执行指令在被计算机执行时执行一种检测固定格式文档的文本方向以用于重构流格式文档的方法;所述方法包括:
解析固定格式文档以得到包含一个或多个文本串的一个或多个段落;
确定所述一个或多个文本串中的每一者的文本串方向性;
解析所述固定格式文档以得到所述固定格式文档中的一个或多个章节,所述章节包含一个或多个文本串列;
根据基于从右到左的方向性或基于从左到右的方向性为所述一个或多个文本串中的每一者确定的文本串方向性来收集所述一个或多个段落中以及所述一个或多个文本串列中包含的一个或多个文本串中的每一者;以及
将所述固定格式文档重构成流格式文档,其中重构在所述流格式文档中的所述一个或多个文本串中的每一者都是根据为所述一个或多个文本串中的每一者指定的指定文本串方向性来重构的。
10.一种检测固定格式文档的文本方向以用于重构流格式文档的系统;所述系统包括:
一个或多个处理器;以及
耦合到所述一个或多个处理器的存储器,所述一个或多个处理器能用于:
将构成固定格式文档的一个或多个行分成一个或多个文本串,所述一个或多个文本串包括字符、符号、空格、单词、连字、与字符或符号或其组合相关联的变音符号中的一个或多个;
为所述一个或多个文本串中的每一者确定从右向左的文本串方向性或从左到右的文本串方向性;
根据为所述一个或多个文本串中的每一者确定的从右到左的文本串方向性或从左到右的文本串方向性来收集所述一个或多个文本串中的每一者;以及
将所述固定格式文档重构成流格式文档,其中重构在所述流格式文档中的所述一个或多个文本串中的每一者都是根据为所述一个或多个文本串中的每一者指定的指定文本串方向性来重构的。
CN201480014083.8A 2013-03-11 2014-02-28 检测并重构固定格式文档中的从右到左文本方向、连字和变音符号 Pending CN105144147A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/794,472 2013-03-11
US13/794,472 US20140258852A1 (en) 2013-03-11 2013-03-11 Detection and Reconstruction of Right-to-Left Text Direction, Ligatures and Diacritics in a Fixed Format Document
PCT/US2014/019655 WO2014163984A2 (en) 2013-03-11 2014-02-28 Detection and reconstruction of right-to-left text direction, ligatures and diacritics in a fixed format document

Publications (1)

Publication Number Publication Date
CN105144147A true CN105144147A (zh) 2015-12-09

Family

ID=50390201

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480014083.8A Pending CN105144147A (zh) 2013-03-11 2014-02-28 检测并重构固定格式文档中的从右到左文本方向、连字和变音符号

Country Status (4)

Country Link
US (1) US20140258852A1 (zh)
EP (1) EP2972991A2 (zh)
CN (1) CN105144147A (zh)
WO (1) WO2014163984A2 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10025979B2 (en) * 2012-01-23 2018-07-17 Microsoft Technology Licensing, Llc Paragraph property detection and style reconstruction engine
MX2014008560A (es) 2012-01-23 2014-09-26 Microsoft Corp Procesador de deteccion de formula.
WO2014005609A1 (en) 2012-07-06 2014-01-09 Microsoft Corporation Paragraph alignment detection and region-based section reconstruction
US9330070B2 (en) 2013-03-11 2016-05-03 Microsoft Technology Licensing, Llc Detection and reconstruction of east asian layout features in a fixed format document
US20140380169A1 (en) * 2013-06-20 2014-12-25 Google Inc. Language input method editor to disambiguate ambiguous phrases via diacriticization
US9594736B2 (en) 2013-10-11 2017-03-14 Apple Inc. Display and selection of bidirectional text
WO2020197421A1 (en) * 2019-03-27 2020-10-01 Qatar Foundation For Education, Science And Community Development Method and system for diacritizing arabic text

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050183033A1 (en) * 2004-02-18 2005-08-18 Yaniv Feinberg Apparatus and methods for displaying dialog box text messages including languages having different reading orders
US20070136660A1 (en) * 2005-12-14 2007-06-14 Microsoft Corporation Creation of semantic objects for providing logical structure to markup language representations of documents
CN101796509A (zh) * 2007-09-03 2010-08-04 国际商业机器公司 准备显示文档用于分析的设备
US20110289395A1 (en) * 2002-03-01 2011-11-24 Xerox Corporation Method and system for document image layout deconstruction and redisplay

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3727971B2 (ja) * 1995-02-01 2005-12-21 キヤノン株式会社 文書処理装置、及び文書処理方法
US6370269B1 (en) * 1997-01-21 2002-04-09 International Business Machines Corporation Optical character recognition of handwritten or cursive text in multiple languages
US6920247B1 (en) * 2000-06-27 2005-07-19 Cardiff Software, Inc. Method for optical recognition of a multi-language set of letters with diacritics
AU2002952711A0 (en) * 2002-11-18 2002-11-28 Typefi Systems Pty Ltd A method of formatting documents
JP4390523B2 (ja) * 2002-11-22 2009-12-24 オセ−テクノロジーズ・ベー・ヴエー 最小領域による合成画像の分割
US8661332B2 (en) * 2004-04-30 2014-02-25 Microsoft Corporation Method and apparatus for document processing
DE602005002473T2 (de) * 2005-07-01 2008-01-10 Pdflib Gmbh Verfahren zum Erkennen von semantischen Einheiten in einem elektronischen Dokument
US8365072B2 (en) * 2009-01-02 2013-01-29 Apple Inc. Identification of compound graphic elements in an unstructured document
US8549399B2 (en) * 2011-01-18 2013-10-01 Apple Inc. Identifying a selection of content in a structured document
US9098471B2 (en) * 2011-12-29 2015-08-04 Chegg, Inc. Document content reconstruction
US9471550B2 (en) * 2012-10-16 2016-10-18 Linkedin Corporation Method and apparatus for document conversion with font metrics adjustment for format compatibility

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110289395A1 (en) * 2002-03-01 2011-11-24 Xerox Corporation Method and system for document image layout deconstruction and redisplay
US20050183033A1 (en) * 2004-02-18 2005-08-18 Yaniv Feinberg Apparatus and methods for displaying dialog box text messages including languages having different reading orders
US20070136660A1 (en) * 2005-12-14 2007-06-14 Microsoft Corporation Creation of semantic objects for providing logical structure to markup language representations of documents
CN101796509A (zh) * 2007-09-03 2010-08-04 国际商业机器公司 准备显示文档用于分析的设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MOHAMED HSSINI,AZZEDDINE LAZREK: "Problem of Multiple Diacritics Design for Arabic Script", 《IOSR JOURNAL OF ENGINEERING》 *
SOBIA TARIQ JAVED,SARMAD HUSSAIN: "Improving Nastalique Specific Pre-Recognition Process for Urdu OCR", 《MULTITOPIC CONFERENCE,2009.INMIC 2009》 *

Also Published As

Publication number Publication date
WO2014163984A2 (en) 2014-10-09
US20140258852A1 (en) 2014-09-11
EP2972991A2 (en) 2016-01-20
WO2014163984A3 (en) 2015-04-16

Similar Documents

Publication Publication Date Title
CN105144147A (zh) 检测并重构固定格式文档中的从右到左文本方向、连字和变音符号
US10068380B2 (en) Methods and systems for generating virtual reality environments from electronic documents
CN106575166B (zh) 手写输入字符的处理、数据拆分和合并及编解码处理方法
CN105247509A (zh) 检测并重构固定格式文档中的东亚布局特征
US9928225B2 (en) Formula detection engine
US9703759B2 (en) Footnote zone detection in a fixed format document using number of paragraphs in footnote description
US11886815B2 (en) Self-supervised document representation learning
CN104221033A (zh) 固定格式文档转换引擎
CN104584003A (zh) 词检测和域字典推荐
US20130191366A1 (en) Pattern Matching Engine
US20160026858A1 (en) Image based search to identify objects in documents
US20210049239A1 (en) Multi-layer document structural info extraction framework
CN112749547A (zh) 文本分类器训练数据的产生
CN104471588A (zh) 对流格式文档中的布局结构元素进行色彩编码
Dey et al. Beyond visual semantics: Exploring the role of scene text in image understanding
WO2014163982A2 (en) Table of contents detection in a fixed format document
Lotfi et al. Storytelling with image data: A systematic review and comparative analysis of methods and tools
US20130031474A1 (en) Method for managing discovery documents on a mobile computing device
Al-Dabbagh et al. Intelligent bar chart plagiarism detection in documents
WO2015047921A1 (en) Determining images of article for extraction
Poornima et al. Multi-modal features and correlation incorporated Naive Bayes classifier for a semantic-enriched lecture video retrieval system
Koutamanis Building Information-Representation and Management: Principles and Foundations for the Digital Era
Satirapiwong et al. Information extraction for different layouts of invoice images
US20200026503A1 (en) Systems and methods of diagram transformation
Gal et al. Visual-linguistic methods for receipt field recognition

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20151209