掌桥专利:专业的专利平台
掌桥专利
首页

文字排版方法、电子设备及存储介质

文献发布时间:2023-06-19 11:14:36


文字排版方法、电子设备及存储介质

技术领域

本发明涉及计算机领域,具体涉及一种文字排版方法、电子设备及存储介质。

背景技术

在电子书排版过程中,需要针对版式排版的电子书原稿进行识别,并根据识别结果通过流式排版方式实现自定义效果的排版。其中,电子书原稿通常为PDF等不可编辑的格式。在针对电子书原稿进行识别的过程中,能够自动识别出原稿中的各种页面元素,具体包括文字类元素、图片类元素等多种类型。然后,根据识别结果自动转换至流式文档中实现自定义排版。

但是,在实现本发明的过程中,发明人发现现有技术中的上述方案至少存在下述缺陷:在针对电子书原稿进行识别时,对于常规文字的识别结果准确度较高。但是,对于结构复杂的文字而言,由于复杂文字内部包含多个构成要素,识别过程中可能会将各个构成要素割裂开单独进行识别,且割裂后的各个构成要素之间的排列次序往往是随机的,进而导致在后续过程中无法根据随机排序的多个构成要素准确还原原始文字,从而导致识别错误。

发明内容

鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的文字排版方法、电子设备及存储介质。

根据本发明的一个方面,提供了一种文字排版方法,该方法包括:

根据文字排布方向,获取原始页面中包含的文字集合,解析得到所述文字集合中包含的各个字符;

针对所述文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影位置,将投影位置存在重叠区域的至少两个字符确定为一个关联字符组;

根据所述关联字符组中的各个字符对应于所述原始页面的位置信息,确定所述关联字符组中的各个字符的关联排版次序;

根据所述关联字符组中的各个字符的关联排版次序,设置所述文字集合中包含的各个字符的排列次序,按照所述排列次序对所述文字集合中包含的各个字符进行排版处理。

根据本发明的另一方面,提供了一种电子设备,该电子设备包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;

所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行以下操作:

根据文字排布方向,获取原始页面中包含的文字集合,解析得到所述文字集合中包含的各个字符;

针对所述文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影位置,将投影位置存在重叠区域的至少两个字符确定为一个关联字符组;

根据所述关联字符组中的各个字符对应于所述原始页面的位置信息,确定所述关联字符组中的各个字符的关联排版次序;

根据所述关联字符组中的各个字符的关联排版次序,设置所述文字集合中包含的各个字符的排列次序,按照所述排列次序对所述文字集合中包含的各个字符进行排版处理。

根据本发明的又一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使所述处理器执行以下操作:

根据文字排布方向,获取原始页面中包含的文字集合,解析得到所述文字集合中包含的各个字符;

针对所述文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影位置,将投影位置存在重叠区域的至少两个字符确定为一个关联字符组;

根据所述关联字符组中的各个字符对应于所述原始页面的位置信息,确定所述关联字符组中的各个字符的关联排版次序;

根据所述关联字符组中的各个字符的关联排版次序,设置所述文字集合中包含的各个字符的排列次序,按照所述排列次序对所述文字集合中包含的各个字符进行排版处理。

在本发明提供的文字排版方法、电子设备及存储介质中,能够针对文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影位置,从而将投影位置存在重叠区域的至少两个字符确定为一个关联字符组。相应的,根据关联字符组中的各个字符对应于原始页面的位置信息,确定关联字符组中的各个字符的关联排版次序,进而确保各个字符的顺序正确,能够正确排版。由此可见,该方式能够沿预设投影方向得到各个字符的投影结果,从而根据投影结果确定由多个上下交错的字符构成的关联字符组,进而针对关联字符组中的各个字符进行准确排序,以确保后续排版过程的正确显示。该方式尤其适用于包含外国文字等复杂文字的文档排版处理。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本发明一个实施例提供的文字排版方法的流程图;

图2示出了本发明另一个实施例提供的文字排版方法的流程图;

图3示出了根据本发明另一个实施例的一种电子设备的结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

实施例一

图1示出了本发明一个实施例提供的文字排版方法的流程图。如图1所示,该方法包括以下步骤:

步骤S110:根据文字排布方向,获取原始页面中包含的文字集合,解析得到文字集合中包含的各个字符。

其中,文字排布方向是指:多个存在次序关系的文字依次排列的方向。例如,对于从左至右排列的书籍而言,文字排布方向即为水平方向;对于从上至下排列的书籍而言,文字排布方向即为竖直方向。具体实施时,可以根据文字排布方向,获取依次排列的一行或一列文字作为一个文字集合。相应的,针对文字集合内的各个文字进行解析,根据解析结果确定文字集合中包含的各个字符。其中,文字集合中包含的字符泛指文字、构成文字的各个要素、以及数学符号等,本发明不限定字符的具体内涵。

步骤S120:针对文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影位置,将投影位置存在重叠区域的至少两个字符确定为一个关联字符组。

其中,当文字集合为文字行时,预设投影方向与文字排布方向垂直。具体的,在原始页面中,沿各个字符的竖直方向进行投影,从而将文字集合中的各个字符垂直投影在与文字排布方向匹配的水平线上。相应的,分别获取各个字符对应于该条水平线的投影位置,若至少两个字符的投影位置存在重叠区域,则将该至少两个字符确定为一个关联字符组。由此可见,关联字符组内部的各个字符之间呈上下结构排布。例如,当关联字符组包含两个字符时,两个字符之间上下排列;当关联字符组包含三个字符时,三个字符之间呈上中下排列。总之,只要多个字符之间存在空间上的交叠关系,则可以将该存在交叠关系的多个字符确定为一个关联字符组。

步骤S130:根据关联字符组中的各个字符对应于原始页面的位置信息,确定关联字符组中的各个字符的关联排版次序。

其中,各个字符在原始页面中的位置信息具体为空间位置信息,可通过各个字符在原始页面中的位置坐标表示。对于一些复杂的外国文字而言,其包含的多个字符之间的排版次序是由字符本身的含义确定的,因而各个字符之间的排版位置是相对固定的。相应的,关联排版次序是指关联字符组内部的各个字符在排版时的相对次序。在本实施例中,基于关联字符组中的各个字符对应于原始页面的位置信息,能够确定各个字符的关联排版次序。当然,在具体实施时,还可以进一步结合其他辅助信息来确定各个字符的关联排版次序。其中,辅助信息包括:字符的类型,如字符所属的语言种类等。

步骤S140:根据关联字符组中的各个字符的关联排版次序,设置文字集合中包含的各个字符的排列次序,按照排列次序对文字集合中包含的各个字符进行排版处理。

其中,文字集合中包含的各个字符的排列次序用于确定各个字符的展示顺序以及展示方式。具体的,文字集合中包含的各个字符的排列次序通常根据各个文字在原始页面中的排布次序确定。在按照排列次序对文字集合中包含的各个字符进行排版处理时,能够确保排版过程的准确性,放置因相互关联的字符间的排版次序错乱而导致的错误问题。

由此可见,该方式能够沿预设投影方向得到各个字符的投影结果,从而根据投影结果确定由多个上下交错的字符构成的关联字符组,进而针对关联字符组中的各个字符进行准确排序,以确保后续排版过程的正确显示。该方式尤其适用于包含外国文字等复杂文字的文档排版处理。

实施例二

图2示出了本发明另一个实施例提供的文字排版方法的流程图。如图2所示,该方法包括以下步骤:

步骤S210:根据文字排布方向,获取原始页面中包含的文字集合,解析得到文字集合中包含的各个字符。

其中,文字排布方向是指:多个存在次序关系的文字依次排列的方向。例如,对于从左至右排列的书籍而言,文字排布方向即为水平方向;对于从上至下排列的书籍而言,文字排布方向即为竖直方向。相应的,文字集合既可以是文字行,也可以是文字列。

在一种可选的实现方式中,通过以下方式获取原始页面中包含的文字集合:首先,确定与文字排布方向匹配的第一投影方向,将原始页面中的各个文字按照第一投影方向进行投影;然后,将投影区域相互重合的多个文字确定为一个文字集合。其中,当原始页面中包含多个水平文字行时,第一投影方向为水平方向。相应的,沿水平方向进行投影,将原始页面中的各个文字分别投影至垂直于水平文字行的竖直线上,相应的,位于同一个文字行内部的多个文字的投影区域必然相互重合,因此,将投影区域相互重合的多个文字确定为一个文字集合,从而能够准确地提取出原始页面中包含的各个文字行,从而分别针对每个文字行中的多个文字进行处理。

相应的,针对文字集合内的各个文字进行解析,根据解析结果确定文字集合中包含的各个字符。在本实施例中,原始页面为版式页面,例如,可以为PDF页面。其中,版式页面中的各个文字的位置相对固定且不可编辑。通过对原始页面进行解析,能够得到原始页面中包含的各个字符以及各个字符在原始页面中的空间位置信息,具体可以为位置坐标信息。

在本实施例中,文字集合中的字符泛指文字、构成文字的各个要素、以及数学符号等多种类型的内容。具体解析时,对于常规文字而言,直接解析得到该文字本身,从而将该文字本身作为一个字符。对于复杂文字而言,其结构复杂,通常由多个要素构成,相应的,在解析时,无法直接解析得到该文字本身,而是解析得到构成该文字的至少两个字符。由此可见,文字集合中的字符既可以是独立的文字,也可以是用于构成文字的要素,如复杂汉字的偏旁、部首等,或外国文字的辅音、元音等。

步骤S220:针对文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影位置。

其中,文字集合中的各个字符是根据解析结果确定的,这些字符既可能是独立的文字,也可能是用于构成文字的一个要素。为了确定字符之间的相对位置关系,需要在原始页面中对各个字符进行投影。其中,预设投影方向通常是指字符的竖直方向。例如,当文字集合为水平排布的文字行时,预设投影方向为垂直于上文提到的第一投影方向的第二投影方向(即竖直方向)。

在一种具体的实现方式中,针对文字集合中包含的各个字符,获取各个字符在原始页面中的位置信息;根据各个字符在原始页面中的位置信息,在原始页面中按照预设投影方向进行投影,得到与各个字符相对应的投影位置。具体的,由于文字集合为文字行,且预设投影方向为竖直方向,则各个字符对应的投影位置都位于该文字行下方的投影水平线上。并且,若存在上下交叠的字符,则该上下交叠的字符的投影位置将存在重叠区域,因此,通过投影位置能够确定各个字符之间的空间位置关系。

步骤S230:将投影位置存在重叠区域的至少两个字符确定为一个关联字符组。

具体的,若至少两个字符的投影位置存在重叠区域,则将该至少两个字符确定为一个关联字符组。其中,判断任意两个字符的投影位置是否存在重叠区域时,可通过多种方式判断:

在第一种方式中,分别获取各个字符的投影位置所对应的坐标区间范围,即:投影位置位于投影水平线上的坐标区间,将坐标区间范围相互重合的至少两个字符确定为一个关联字符组。

在第二种方式中,预先设置重合阈值,若至少两个字符的投影位置所对应的坐标区间之间的间隔不大于该重合阈值,则认为该至少两个字符的投影位置存在重合区域。

由此可见,第一种方式中的重合判断较为严格,必须两个字符之间呈现上下罗列的结构方可作为关联字符组。第二种方式中的重合判断较为宽松,只要两个字符距离较近就可以作为关联字符组。实际情况中,可以根据文档内容灵活选择上述两种实现方式中的至少一种。

在本实施例中,优选通过第二种实现方式实现,通过合理设置重合阈值,能够将相互之间间隔较近的多个字符确定为一个关联字符组,从而防止漏判。

步骤S240:根据关联字符组中的各个字符对应于原始页面的位置信息,确定关联字符组中的各个字符的关联排版次序。

其中,各个字符在原始页面中的位置信息具体为空间位置信息,可通过各个字符在原始页面中的位置坐标表示。对于一些复杂的外国文字而言,其包含的多个字符之间的排版次序是由字符本身的含义确定的,因而各个字符之间的排版位置是相对固定的。相应的,关联排版次序是指关联字符组内部的各个字符在排版时的相对次序。在本实施例中,基于关联字符组中的各个字符对应于原始页面的位置信息,能够确定各个字符的关联排版次序。

可选的,为了提升准确性,在本步骤中,进一步确定关联字符组中的各个字符的字符类型,结合字符类型,设置文字集合中包含的各个字符的排列次序。其中,字符类型包括:语言类型、和/或符号类型。其中,当字符类型为语言类型时,查询预先设置的与各种语言相对应的字符排布规则,按照字符排布规则设置文字集合中包含的各个字符的排列次序。其中,文字集合中包含的各个字符包括:文字、以及构成文字的要素;并且,当语言类型为东南亚类型(如泰语)时,构成文字的要素包括:音调要素、辅音要素、以及元音要素;且与东南亚语言相对应的字符排布规则用于设置各类要素之间的空间排布方式。

其中,发明人在实现本发明的过程中发现,对于泰语等东南亚语言而言,文字结构非常复杂,需由多个要素构成一个文字,相应的,由于泰语文字等外文文字本身并不属于常规字符,因此,在解析过程中,一个泰语文字将被解析为多个与要素相对应的字符。用于构成同一个泰语文字的多个字符之间的间隔小于上述的重合阈值,因而被判定为投影位置存在重叠区域的关联字符组。由此可见,关联字符组内部的各个字符之间呈现上下结构且字符间距小于重合阈值。为了便于在后续的排版显示过程中,将用于构成同一个泰语文字的多个字符重新组装为泰语文字,需要准确确定各个字符之间的关联排版次序。例如,在支持泰语的页面展示应用中,能够基于正确的关联排版次序重构出由各个字符组成的泰语文字。但是,一旦关联排版次序错乱,则会导致重构失败,从而使泰语文字无法正确显示。相应的,在本实施例中,预先分析泰语中的文字包含的各个字符之间的排布规律,基于该排布规则设置上述的字符排布规则,以便基于字符排布规则确定各个字符的关联排版次序。例如,该字符排布规则设置了以下内容:位于最上方的字符为第一类字符,且关联排版次序为1;位于中间的字符为第二类字符,且关联排版次序为3;位于最下方的字符为第三类字符,且关联排版次序为2。相应的,基于该字符排布规则,能够准确确定关联字符组内部的各个字符之间的排版次序,以便于在后续过程中通过页面展示应用进行正确展示。

步骤S250:根据关联字符组中的各个字符的关联排版次序,设置文字集合中包含的各个字符的排列次序,按照排列次序对文字集合中包含的各个字符进行排版处理。

其中,文字集合中包含的各个字符的排列次序用于确定各个字符的展示顺序以及展示方式。具体的,文字集合中包含的各个字符的排列次序通常根据各个文字在原始页面中的排布次序确定。

在本实施例中,通过以下方式设置文字集合中包含的各个字符的排列次序:

首先,在步骤S210中解析得到文字集合中包含的各个字符之后,进一步根据文字集合中包含的各个字符对应于原始页面的位置信息,确定文字集合中包含的各个字符的初始排列次序。相应的,在本步骤中,根据关联字符组中的各个字符的关联排版次序,调整文字集合中包含的各个字符的初始排列次序,根据调整结果设置文字集合中包含的各个字符的排列次序。

其中,各个字符的初始排列次序主要基于各个字符对应于原始页面的位置确定,由于各个字符在原始页面中的位置坐标可以确定,因此,基于该位置坐标能够确定各个字符之间的相对位置关系,进而基于该相对位置关系设置文字集合中包含的各个字符的初始排列次序。例如,假设文字行中包含以下内容“远处飘来X”,其中,前四个字均为标准的中文,因此,经解析后分别得到四个中文字符,每个中文字符对应于一个汉字;最后一个“X”字为泰语,具体包括a、b、c三个要素,相应的,经解析后得到a、b、c三个字符,每个字符对应于一个泰语要素。在设置初始排列次序时,前四个中文字符按照从左到右的顺序依次排列,而后三个字符a、b、c的排列次序在解析过程中是随机确定的。也就是说,解析过程中得到的a、b、c三个字符的排列次序是随机的,因而可能是错误的。因此,需要通过本实施例中的方式重新确定由a、b、c三个字符构成的关联字符组的关联排版次序,并根据重新确定的关联排版次序对初始排列次序进行调整。由此可见,正是由于关联字符组中的各个字符的排列次序可能存在错误,因此,才需要对其重新排序,以确保关联字符组中的各个字符的排版次序正确,能够通过页面展示应用组装为正确的文字。

其中,本实施例中经排版处理后得到的排版页面为流式页面,例如,可以为EPUB文档或WORD文档等便于编辑的页面。

步骤S260:将排版后得到的排版页面发送给页面展示应用,以供页面展示应用对排版页面进行解析后,根据解析结果展示与排版页面相对应的页面内容。

其中,页面展示应用包括:页面浏览器,且页面浏览器用于根据关联字符组中的各个字符的关联排版次序,将关联字符组中的各个字符组装为文字。具体的,页面浏览器可以支持多种语言,对于支持泰语等东南亚语言的浏览器而言,能够自动基于正确排序的多个字符拼装出对应的泰语文字。例如,上例中的a、b、c三个字符在正确排序的基础上能够重新拼装出对应泰语文字“X”。

可选的,为了便于页面浏览器快速识别关联字符组,可以在排版过程中,针对关联字符组中的各个字符设置关联标记,该关联标记用于提供给页面浏览器进行多个字符的组合操作。其中,关联标记可以为括号、星号等各种类型,本发明对此不作限定。

另外,在根据解析结果展示与排版页面相对应的页面内容之后,还可以进一步执行以下操作:响应于接收到的字体调整指令,针对由关联字符组中的各个字符组装得到的文字的字体进行调整。在排版过程中,对于异形字等特殊文字而言,为了避免排版错误,通常通过截图等方式进行处理,通过将异形字截取为一个图片的方式确保正确排版。但是,截图处理方式中的图片格式固定,无法灵活调整,当重新设置字体时,通过截图得到的异形字的字体无法同步调整,从而导致整体页面效果不佳。本实施例中的方式能够确保复杂结构的文字在排版过程中能够基于多个要素重新拼装为文字,从而便于调整文字的字体,便于实现页面字体的统一。

综上可知,本实施例能够沿预设投影方向得到各个字符的投影结果,从而根据投影结果确定由多个上下交错的字符构成的关联字符组,进而针对关联字符组中的各个字符进行准确排序,以确保后续排版过程的正确显示。该方式尤其适用于包含外国文字等复杂文字的文档排版处理。并且,通过该方式得到的排版内容能够灵活调整字体,便于灵活设置各类排版效果。

实施例三

本申请实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的文字排版方法。

可执行指令具体可以用于使得处理器执行以下操作:

根据文字排布方向,获取原始页面中包含的文字集合,解析得到所述文字集合中包含的各个字符;

针对所述文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影位置,将投影位置存在重叠区域的至少两个字符确定为一个关联字符组;

根据所述关联字符组中的各个字符对应于所述原始页面的位置信息,确定所述关联字符组中的各个字符的关联排版次序;

根据所述关联字符组中的各个字符的关联排版次序,设置所述文字集合中包含的各个字符的排列次序,按照所述排列次序对所述文字集合中包含的各个字符进行排版处理。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:

针对所述文字集合中包含的各个字符,获取各个字符在所述原始页面中的位置信息;

根据各个字符在所述原始页面中的位置信息,在所述原始页面中按照预设投影方向进行投影,得到与各个字符相对应的投影位置。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:

确定所述关联字符组中的各个字符的字符类型,结合所述字符类型,设置所述文字集合中包含的各个字符的排列次序;其中,所述字符类型包括:语言类型、和/或符号类型;

其中,当字符类型为语言类型时,所述结合所述字符类型,设置所述文字集合中包含的各个字符的排列次序包括:查询预先设置的与各种语言相对应的字符排布规则,按照所述字符排布规则设置所述文字集合中包含的各个字符的排列次序。

在一种可选的实现方式中,所述文字集合中包含的各个字符包括:文字、以及构成文字的要素;

其中,当语言类型为东南亚类型时,所述构成文字的要素包括:音调要素、辅音要素、以及元音要素;且与东南亚语言相对应的字符排布规则用于设置各类要素之间的空间排布方式。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:根据所述文字集合中包含的各个字符对应于原始页面的位置信息,确定所述文字集合中包含的各个字符的初始排列次序;根据所述关联字符组中的各个字符的关联排版次序,调整所述文字集合中包含的各个字符的初始排列次序,根据调整结果设置所述文字集合中包含的各个字符的排列次序。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:

确定与文字排布方向匹配的第一投影方向,将原始页面中的各个文字按照第一投影方向进行投影,将投影区域相互重合的多个文字确定为一个文字集合;其中,所述文字集合包括:文字行、和/或文字列;

并且,所述预设投影方向为垂直于第一投影方向的第二投影方向。

在一种可选的实现方式中,所述原始页面为版式页面,且排版处理后得到的排版页面为流式页面。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:

将排版后得到的排版页面发送给页面展示应用,以供页面展示应用对所述排版页面进行解析后,根据解析结果展示与所述排版页面相对应的页面内容。

在一种可选的实现方式中,所述页面展示应用包括:页面浏览器,且所述页面浏览器用于根据所述关联字符组中的各个字符的关联排版次序,将所述关联字符组中的各个字符组装为文字。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:

响应于接收到的字体调整指令,针对由所述关联字符组中的各个字符组装得到的文字的字体进行调整。

实施例四

图3示出了根据本发明另一个实施例的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。

如图3所示,该电子设备可以包括:处理器(processor)302、通信接口(Communications Interface)304、存储器(memory)306、以及通信总线308。

其中:处理器302、通信接口304、以及存储器306通过通信总线308完成相互间的通信。通信接口304,用于与其它设备比如客户端或其它服务器等的网元通信。处理器302,用于执行程序310,具体可以执行上述文字排版方法实施例中的相关步骤。

具体地,程序310可以包括程序代码,该程序代码包括计算机操作指令。

处理器302可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。

存储器306,用于存放程序310。存储器306可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。

程序310具体可以用于使得处理器302执行以下操作:

根据文字排布方向,获取原始页面中包含的文字集合,解析得到所述文字集合中包含的各个字符;

针对所述文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影位置,将投影位置存在重叠区域的至少两个字符确定为一个关联字符组;

根据所述关联字符组中的各个字符对应于所述原始页面的位置信息,确定所述关联字符组中的各个字符的关联排版次序;

根据所述关联字符组中的各个字符的关联排版次序,设置所述文字集合中包含的各个字符的排列次序,按照所述排列次序对所述文字集合中包含的各个字符进行排版处理。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:

针对所述文字集合中包含的各个字符,获取各个字符在所述原始页面中的位置信息;

根据各个字符在所述原始页面中的位置信息,在所述原始页面中按照预设投影方向进行投影,得到与各个字符相对应的投影位置。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:

确定所述关联字符组中的各个字符的字符类型,结合所述字符类型,设置所述文字集合中包含的各个字符的排列次序;其中,所述字符类型包括:语言类型、和/或符号类型;

其中,当字符类型为语言类型时,所述结合所述字符类型,设置所述文字集合中包含的各个字符的排列次序包括:查询预先设置的与各种语言相对应的字符排布规则,按照所述字符排布规则设置所述文字集合中包含的各个字符的排列次序。

在一种可选的实现方式中,所述文字集合中包含的各个字符包括:文字、以及构成文字的要素;

其中,当语言类型为东南亚类型时,所述构成文字的要素包括:音调要素、辅音要素、以及元音要素;且与东南亚语言相对应的字符排布规则用于设置各类要素之间的空间排布方式。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:根据所述文字集合中包含的各个字符对应于原始页面的位置信息,确定所述文字集合中包含的各个字符的初始排列次序;根据所述关联字符组中的各个字符的关联排版次序,调整所述文字集合中包含的各个字符的初始排列次序,根据调整结果设置所述文字集合中包含的各个字符的排列次序。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:

确定与文字排布方向匹配的第一投影方向,将原始页面中的各个文字按照第一投影方向进行投影,将投影区域相互重合的多个文字确定为一个文字集合;其中,所述文字集合包括:文字行、和/或文字列;

并且,所述预设投影方向为垂直于第一投影方向的第二投影方向。

在一种可选的实现方式中,所述原始页面为版式页面,且排版处理后得到的排版页面为流式页面。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:

将排版后得到的排版页面发送给页面展示应用,以供页面展示应用对所述排版页面进行解析后,根据解析结果展示与所述排版页面相对应的页面内容。

在一种可选的实现方式中,所述页面展示应用包括:页面浏览器,且所述页面浏览器用于根据所述关联字符组中的各个字符的关联排版次序,将所述关联字符组中的各个字符组装为文字。

在一种可选的实现方式中,所述可执行指令使所述处理器执行以下操作:

响应于接收到的字体调整指令,针对由所述关联字符组中的各个字符组装得到的文字的字体进行调整。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

本发明还公开了A1.一种文字排版方法,其中,所述方法包括:

根据文字排布方向,获取原始页面中包含的文字集合,解析得到所述文字集合中包含的各个字符;

针对所述文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影位置,将投影位置存在重叠区域的至少两个字符确定为一个关联字符组;

根据所述关联字符组中的各个字符对应于所述原始页面的位置信息,确定所述关联字符组中的各个字符的关联排版次序;

根据所述关联字符组中的各个字符的关联排版次序,设置所述文字集合中包含的各个字符的排列次序,按照所述排列次序对所述文字集合中包含的各个字符进行排版处理。

A2.根据A1所述的方法,其中,所述针对所述文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影包括:

针对所述文字集合中包含的各个字符,获取各个字符在所述原始页面中的位置信息;

根据各个字符在所述原始页面中的位置信息,在所述原始页面中按照预设投影方向进行投影,得到与各个字符相对应的投影位置。

A3.根据A1或2所述的方法,其中,所述根据所述关联字符组中的各个字符的关联排版次序,设置所述文字集合中包含的各个字符的排列次序包括:

确定所述关联字符组中的各个字符的字符类型,结合所述字符类型,设置所述文字集合中包含的各个字符的排列次序;其中,所述字符类型包括:语言类型、和/或符号类型;

其中,当字符类型为语言类型时,所述结合所述字符类型,设置所述文字集合中包含的各个字符的排列次序包括:查询预先设置的与各种语言相对应的字符排布规则,按照所述字符排布规则设置所述文字集合中包含的各个字符的排列次序。

A4.根据A3所述的方法,其中,所述文字集合中包含的各个字符包括:文字、以及构成文字的要素;

其中,当语言类型为东南亚类型时,所述构成文字的要素包括:音调要素、辅音要素、以及元音要素;且与东南亚语言相对应的字符排布规则用于设置各类要素之间的空间排布方式。

A5.根据A1-4任一所述的方法,其中,所述解析得到所述文字集合中包含的各个字符之后,进一步包括:根据所述文字集合中包含的各个字符对应于原始页面的位置信息,确定所述文字集合中包含的各个字符的初始排列次序;

则所述根据所述关联字符组中的各个字符的关联排版次序,设置所述文字集合中包含的各个字符的排列次序包括:根据所述关联字符组中的各个字符的关联排版次序,调整所述文字集合中包含的各个字符的初始排列次序,根据调整结果设置所述文字集合中包含的各个字符的排列次序。

A6.根据A1-5任一所述的方法,其中,所述根据文字排布方向,获取原始页面中包含的文字集合包括:

确定与文字排布方向匹配的第一投影方向,将原始页面中的各个文字按照第一投影方向进行投影,将投影区域相互重合的多个文字确定为一个文字集合;其中,所述文字集合包括:文字行、和/或文字列;

并且,所述预设投影方向为垂直于第一投影方向的第二投影方向。

A7.根据A1-6任一所述的方法,其中,所述原始页面为版式页面,且排版处理后得到的排版页面为流式页面。

A8.根据A7所述的方法,其中,所述按照所述排列次序对所述文字集合中包含的各个字符进行排版处理之后,进一步包括:

将排版后得到的排版页面发送给页面展示应用,以供页面展示应用对所述排版页面进行解析后,根据解析结果展示与所述排版页面相对应的页面内容。

A9.根据A8所述的方法,其中,所述页面展示应用包括:页面浏览器,且所述页面浏览器用于根据所述关联字符组中的各个字符的关联排版次序,将所述关联字符组中的各个字符组装为文字。

A10.根据A8或9所述的方法,其中,所述根据解析结果展示与所述排版页面相对应的页面内容之后,进一步包括:

响应于接收到的字体调整指令,针对由所述关联字符组中的各个字符组装得到的文字的字体进行调整。

B11.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;

所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行以下操作:

根据文字排布方向,获取原始页面中包含的文字集合,解析得到所述文字集合中包含的各个字符;

针对所述文字集合中包含的各个字符,按照预设投影方向进行投影,得到与各个字符相对应的投影位置,将投影位置存在重叠区域的至少两个字符确定为一个关联字符组;

根据所述关联字符组中的各个字符对应于所述原始页面的位置信息,确定所述关联字符组中的各个字符的关联排版次序;

根据所述关联字符组中的各个字符的关联排版次序,设置所述文字集合中包含的各个字符的排列次序,按照所述排列次序对所述文字集合中包含的各个字符进行排版处理。

B12.根据B11所述的电子设备,其中,所述可执行指令使所述处理器执行以下操作:

针对所述文字集合中包含的各个字符,获取各个字符在所述原始页面中的位置信息;

根据各个字符在所述原始页面中的位置信息,在所述原始页面中按照预设投影方向进行投影,得到与各个字符相对应的投影位置。

B13.根据B11或12所述的电子设备,其中,所述可执行指令使所述处理器执行以下操作:

确定所述关联字符组中的各个字符的字符类型,结合所述字符类型,设置所述文字集合中包含的各个字符的排列次序;其中,所述字符类型包括:语言类型、和/或符号类型;

其中,当字符类型为语言类型时,所述结合所述字符类型,设置所述文字集合中包含的各个字符的排列次序包括:查询预先设置的与各种语言相对应的字符排布规则,按照所述字符排布规则设置所述文字集合中包含的各个字符的排列次序。

B14.根据B13所述的电子设备,其中,所述文字集合中包含的各个字符包括:文字、以及构成文字的要素;

其中,当语言类型为东南亚类型时,所述构成文字的要素包括:音调要素、辅音要素、以及元音要素;且与东南亚语言相对应的字符排布规则用于设置各类要素之间的空间排布方式。

B15.根据B11-14任一所述的电子设备,其中,所述可执行指令使所述处理器执行以下操作:根据所述文字集合中包含的各个字符对应于原始页面的位置信息,确定所述文字集合中包含的各个字符的初始排列次序;根据所述关联字符组中的各个字符的关联排版次序,调整所述文字集合中包含的各个字符的初始排列次序,根据调整结果设置所述文字集合中包含的各个字符的排列次序。

B16.根据B11-15任一所述的电子设备,其中,所述可执行指令使所述处理器执行以下操作:

确定与文字排布方向匹配的第一投影方向,将原始页面中的各个文字按照第一投影方向进行投影,将投影区域相互重合的多个文字确定为一个文字集合;其中,所述文字集合包括:文字行、和/或文字列;

并且,所述预设投影方向为垂直于第一投影方向的第二投影方向。

B17.根据B11-16任一所述的电子设备,其中,所述原始页面为版式页面,且排版处理后得到的排版页面为流式页面。

B18.根据B17所述的电子设备,其中,所述可执行指令使所述处理器执行以下操作:

将排版后得到的排版页面发送给页面展示应用,以供页面展示应用对所述排版页面进行解析后,根据解析结果展示与所述排版页面相对应的页面内容。

B19.根据B18所述的电子设备,其中,所述页面展示应用包括:页面浏览器,且所述页面浏览器用于根据所述关联字符组中的各个字符的关联排版次序,将所述关联字符组中的各个字符组装为文字。

B20.根据B18或19所述的电子设备,其中,所述可执行指令使所述处理器执行以下操作:

响应于接收到的字体调整指令,针对由所述关联字符组中的各个字符组装得到的文字的字体进行调整。

C21.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如A1-10任一所述的方法。

相关技术
  • 文字排版方法、电子设备及存储介质
  • 一种网页的文字排版方法、装置、设备和存储介质
技术分类

06120112858963