一种基于自动排版的一键成书方法

文档序号:6550293阅读:247来源:国知局
一种基于自动排版的一键成书方法
【专利摘要】本发明涉及一种基于自动排版的一键成书方法,步骤一、选择书本尺寸;步骤二、设置排版约束条件;步骤三、判断每一条数据是否均已生成排版数据;步骤四、判断该条数据是否已经排版完,步骤五、判断该条数据图片是否已经排完;步骤六、该尺寸书本相应的板式中最多的图片张数记为n,当前待排数据的图片张数记为m,n和m中的最小值记为1,分别使用前1,2,3,...,1张图、文字待定以及使用含相应张数图片的所有板式,排一页;步骤七、使用当前待排数据的待定文字以及纯文本的所有板式,排一页;步骤八、对步骤六或步骤七中产生的所有一页排法数据进行综合评估,优选出最优的一页排法;步骤九:取出优选并保存的所有页排版数据进行处理渲染预览。
【专利说明】—种基于自动排版的一键成书方法
【技术领域】
[0001]本发明涉及书籍出版排版印刷领域,尤其是涉及一种基于自动排版的一键成书方法。
【背景技术】
[0002]随着印刷技术的发展,目前印刷设备可接受少至一本书的印刷,且印刷成本大大降低,这使得出书对普通大众而言并不是遥不可及,但仍然存在一个重要的问题:排版问题。方法结合了互联网,用户在家就可以提交需要排版出书的数据,且可立刻预览排版效果,用户可以调整参数改变排版效果。如果用户认可排版,可直接生成适合印刷的Pdf文档,整个过程简单方便,省时省力省钱。
[0003]现有技术中,通常一条数据只能一个排版模板生成一种排版效果,继而不能对排版效果进行评价和选择,典型如美国专利US7555710B2, “Method, apparatus and programfor determining layout of a page using links between part ia lareas in the page,,,该现有技术通过对排版数据之间的相互关系,自动调整排版数据在版面内的排版位置,实现自动排版。
[0004]现有技术中,通常一条数据最终只生成一页数据,或评价体系只是针对一页相同数据的不同排版的评价,或系统需要内置模板与样式,用户操作过于繁琐。

【发明内容】

[0005]本发明设计了一种基于自动排版的一键成书方法,其解决的技术问题是现有技术中,通常一条数据最终只生成一页数据,或评价体系只是针对一页相同数据的不同排版的评价,或系统需要内置模板与样式,用户操作过于繁琐。
[0006]为了解决上述存在的技术问题,本发明采用了以下方案:
[0007]—种基于自动排版的一键成书方法,包括以下步骤:步骤一、选择书本尺寸;步骤二、设置排版约束条件;步骤三、判断每一条数据是否均已生成排版数据;如果是,则转到步骤九,否则取一条数据,转到步骤四,进行自动排版;步骤四、判断该条数据是否已经排版完,如果是,则转到步骤三,否则,转到步骤五;步骤五、判断该条数据图片是否已经排完;如果是,则转到步骤七;否则,转到步骤六;步骤六、该尺寸书本相应的板式中最多的图片张数记为n,当前待排数据的图片张数记为m,η和m中的最小值记为1,分别使用前1,2,3,...,I张图(假设用户有5张待排版的数据,待定文字。则当生成第一页对,如果使用三张图的板式生成一页排版数据,则使用第1、2、3张图片,前面的待定文字生成一页排版数据。如果该页排版数据被优选并保存,则生成第二页排版数据时,如果使用两张图的板式生成一页排版数据,则使用第4、5张图片,去掉第一页的文字剩余的前面的待定文字生成一页排版数据)、待定文字以及含相应张数图片的所有板式,排一页,转到步骤八;步骤七、使用当前待排数据的待定文字以及纯文本的所有板式,排一页,转到步骤八;步骤八、对步骤六或步骤七中产生的所有一页排法数据进行综合评估,优选出最优的一页排法,并记录该排法相应的未排数据,使用随机数控制该页区块与区块之间的相对位置,平移结束后保存,转到步骤四;步骤九:取出优选并保存的所有页排版数据进行处理渲染预览,以及生成电子书。
[0008]步骤5、6和7的处理方式表达的含义主要是:当有图片时,一定会使用至少一张图片进行排版,当经过步骤八优选出来的一页排版数据一定时包含至少使用一张图片的板式,如果优选出来的是只有一张图片的一页排版数据时,根据规则,此时,该图片一定是当前待排版数据中的第一张图片。
[0009]进一步,在所述步骤一中,所述书本尺寸为当前市面上书籍尺寸,如正度16开、大度16开等,用户需要选择书本尺寸。
[0010]进一步,在所述步骤二中,所述排版约束条件包括图片区块最小显示宽度与高度、文本区块最小宽度、横向区块间距、纵向区块间距、版心高度所能容纳的最大文本行数、版心宽度所能容纳的英文字母长度、图片显示宽度与图片区块宽度最小比值,综合评价多项排版约束条件指标权重,用户可设置相应的值进行自动排版。综合评价的各项指标均是越大越好,范围均在[0,1]。
[0011]进一步,在所述步骤三中,所述一条数据为一条需要排版的数据,相当于一本书的一个章节数据,包括任意张任意尺寸的图片和任意段的文字;所述排版数据为对一条数据进行自动排版生成的待定页数数据,相当于对一个章节进行自动排版后,生成的该章节的多页。
[0012]进一步,在步骤四中,所述数据为对一条章节数据,或一条已经排掉前任意段落文字和前任意张图片生成任意页排版数据后剩余未排版的章节数据,包括任意张任意尺寸的图片和任意段的文字。
[0013]进一步,在步骤五中,所述图片为一条章节待排版数据中的图片,当有图片时,则至少使用前一张图片进行排版。
[0014]进一步,步骤六中,所述板式为根据用户需求内置,其定义了图片区块、文字区块以及两者之间的相对位置关系;所述排一页为实现板式的自动排版逻辑与方法,自动排版遵循以下规则:1)所有数据的规则:所有图片文字区块的位置均以版心的左上角为起始位置计算并保存,实际取已排版好的数据预览或生成电子书时,需要根据数据在左页面还是在右页面进行相应的平移;2)图片处理原则a:改变图片显示大小时,一定是等比例的,保证图片不变形;3)图片处理原则b:图片只可以被等比率压缩,但不可以被等比率拉升,以避免由于图片拉升而带来的显示模糊;4)图片处理原则c:如果一定要压缩图片,图片有最小高度与最小宽度限制;5)图片处理原则d:给图片分配的显示区域,如果图片高度不够,则会控制图片下方的内容向上靠起;如果是图片宽度不够,则会控制图片在分配的显示区域居中显示;6)文字处理原则a:当为图片优先排版模式时,如果文字没有排完,且在图片排好后,文字区块还能放入文字,则文字按顺序切割分配到板式的文本区域;7)文字处理原则b:如果一个段落文字被切割分配到不同的页区块时,第一个区块最后一行文字必须排满整行;8)文字处理原则c:文本显示控制必须符合相关排版要求;9)文字处理原则d:如果给文字分配的区域宽度不是版心宽度,宽度有最小宽度限制;10)文字处理原则e:如果尾页只有比较少的文字,将尝试将尾页行数的文字挤到有图片的页中去;排法是对任意条数据进行自动排版,在处理新的一条数据时,另起一页,继续进行排版,故考虑处理尾页留白比较多的问题。
[0015]进一步,步骤七中,所述纯文本板式为不含图片,只含文本的板式,包括文字横排与竖排两种板式。
[0016]进一步,步骤八中,所述综合评估可对一页不同数据的排版进行评价,为对各项指标的加权平均,各项指标如下:1)页面饱和度:所有图片文字显示面积和与版心面积比值;2)图片区块对其度:图片显示宽度与给图片分配的区块宽度比值中最小的;3)文字区块对其度:如果给文本分配的区域左右有图片区域时,取值为1_(文字高度超出或不足旁边图片高度/版心高度),否则取值为I ;4)文字使用偏移度:文字行数与图片张数比值*使用的板式的图片张数=最佳使用文本行数;最佳使用文本行数-实际使用的文本行数=实际使用文本的偏移量,则文字使用偏移度=最佳使用文本行数/ (最佳使用文本行数+实际使用文本的偏移量)。页面饱和度、图片区块对其度、文字区块对其度以及文字使用偏移度均是越大越好,范围均在[0,1]。如果用户更看重哪个指标,则将该指标的权重相对于其他指标设置大些即可。
[0017]进一步,在步骤九中,所述生成电子书为获取所有排版好的每一页数据,根据左页版心或右页版心的位置对排版数据进行平移,并添加封面和页码等数据,最终将所有数据渲染以及生产电子书,如果需要印刷可选择胶订与骑马订标准预留出血位并生成Pdf文档。
[0018]—种基于自动排版的一键成书系统,其包括以下模块:
[0019]板式匹配模块,其用于匹配用户选择的书本尺寸所适用的所有板式,系统将使用这些板式进行自动排版;
[0020]约束控制模块,其用于根据用户需求设置自动排版所遵循的约束条件,系统将使用这些约束条件控制自动排版过程;
[0021]自动排版模块,其根据板式匹配模块输出的所有板式,使用约束控制模块输出的约束条件,对待排数据进行自动排版;
[0022]综合评价模块,其对自动排版模块输出的多页排版数据进行各项指标打分,并使用用户选择的权重进行加权平均,优选出一页排版作为一个章节的一页数据,并记录此种排法的未排数据,作为下一次循环自动排版的依据;
[0023]区块平移模块,其对综合评价模块生产的一页数据,使用随机数控制该页区块与区块之间的相对位置,已达到板式多样性显示的目的,并且在平移结束后保存该页排版数据;
[0024]预览模块:取出区块平移模块保存的所有页数据,根据左页版心或右页版心的位置对排版数据进行平移,并添加封面、页码等数据,最终将所有数据渲染预览;
[0025]印刷模块:在预览模块渲染的基础上,使用胶订或骑马订标准自动绘制出血位并生成pdf文档。
[0026]进一步,所述自动排版模块在对新的一条数据进行排版时,会另起一页,所述自动排版模块生成的每一页排版数据的位置均以版心的左上角为起始位置保存,数据被取出渲染预览时会根据数据在左页还是右页进行相应的平移操作,保证了用户可以随意更改已排版的任意一条数据,系统为其再次自动生成时,不会影响到其他已自动生成的排版数据。
[0027]进一步,自动排版模块中对于包含图片的板式,包含两种模式:图片优先排版模式和文字优先排版模式;文字优先排版模式通过对板式中图片区域的压缩而达到容纳更多文字的目的,文字优先排版模式为了解决对一条数据排版时的尾页不饱和情况,文字优先排版模式只在板式已经使用了所有待排图片时使用;每次循环自动排版模块最终可能生成了多页数据。
[0028]文字优先排版模式主要考虑到当用户发的每一条数据内容比较少,在对新的一条数据进行排版时,会另起一页,此时可能会出现尾页留白比较多的情况,故自动排版模块中的文字优先排版模式将处理该问题。
[0029]进一步,所述自动排版模块在使用一种板式对待排数据进行排版时,当为图片优先排版模式时,先尽可能排下图片,在版心内,如果有剩余区域放入文本,将切割待排数据中的文字放入文字区块;如果为文字优先排版模式,先排下所有剩余文字后,在版心内,图片最大程度地放入剩余区域中后,没有违反约束条件,则使用该板式的自动排法有结果;否贝U,无结果,放弃使用该板式的自动排版。
[0030]文字优先排版模式可能会出现自动排版时,无结果的情况。故当待排版数据只有一张图片时,如果在使用文字优先排版模式排版时,无结果,则继续使用图片优先排版模式进行排版。
[0031]进一步,所述综合评价模块中的页面饱和度,其评价了自动排版效果的一页排版内容饱满程度;图片区块对其度、文字区块对其度,其评价了自动排版效果的图片区块文字区块的上下左右对齐情况,文字使用偏移度其评价了自动排版效果的图片与文字的等比例分配到各个页面的情况,如果图片和文字被集中在了某几页中,则被认为图片与文字分配到各个页面不均衡。这些指标的分值由系统自动生成,但每个分值中的权重由用户在约束控制模块中定义,排版效果取决于用户设置的权重偏好。
[0032]该基于自动排版的一键成书方法具有以下有益效果:
[0033](I)本发明方法能够将包含任意图片与任意文字的一个章节数据,进行自动排版,当每个章节均排完时,自动排版结束。
[0034](2)本发明方法确保了每个章节排版的独立性,即当某个章节变更后再进行自动排版时,不会影响到其他已自动排版的章节。
[0035](3)本发明方法同时还提供了预览以及可见即可得的适合印刷的pdf文档,包括胶订与骑马订标准。
【专利附图】

【附图说明】
[0036]图1为本发明实施例中基于自动排版的一键成书方法的整体流程图;
[0037]图2为本发明实施例中一条数据的自动排版生成若干页排版数据并保存方法的流程图;
[0038]图3为本发明实施例中基于自动排版的一键成书系统的结构框图;
[0039]图4.1-图4.15为本发明实施例中板式示意图,图4.1为纯文本板式,图4.2为一张图的板式,图4.3-图4.6为两张图的板式,图4.7-图4.12为二张图的板式,图4.13-图
4.15为四张图的板式;
[0040]图5为本发明实施例中一条排版数据示意图中的3张图片;
[0041]图6为本发明实施例中一条排版数据示意图中的6段文字;[0042]图7为本发明实施例中对一条排版数据排第一页时,使用图4.5的板式的效果图;
[0043]图8为本发明实施例中图7经过区块平移模块,上下对调图片和文字区块后的效果图;
[0044]图9为本发明实施例中对一条排版数据排完第一页(图8)后,排第二页时,使用图4.2的板式的效果图;
[0045]图10为本发明实施例中对一条排版数据排第一页时,使用图4.2的板式的效果图。
【具体实施方式】
[0046]下面结合图1至图10,对本发明做进一步说明:
[0047]本实施例中,如图1所不,一种基于自动排版的一键成书方法的整体流程以及一条数据的自动排版生成若干页排版数据并保存方法的流程图如图2所示,包括以下步骤:
[0048]步骤一:选择书本尺寸Sll:每个书本尺寸对应多个排版板式,系统根据用户选择匹配相应的排版板式。
[0049]本实施例中,书本尺寸为当前市面上书籍尺寸,如正度16开、大度16开等,用户需要选择书本尺寸。
[0050]本实施例中,排版板式为具有相对位置关系的页面布局,包括图片区块、文字区块及其之间的相对位置关系。
[0051]步骤二:设置排版约束条件S12:设置自动排版需要遵循的规则。
[0052]本实施例中,排版约束条件为图片区块最小显示宽度与高度,文本区块最小宽度,横向区块间距,纵向区块间距,版心高度所能容纳的最大文本行数,版心宽度所能容纳的英文字母长度,图片显示宽度与图片区块宽度最小比值,综合评价指标权重,用户可设置相应的值进行自动排版。
[0053]步骤三:判断每一条数据是否均已生成排版数据S13,如果是,则转到步骤九,否则取一条数据,转到步骤四,进行自动排版。
[0054]本实施例中,一条数据为一条需要排版的数据,相对于一本书的一个章节数据,包括任意张任意尺寸的图片,以及任意段的文字。所述排版数据为对一条数据进行自动排版生成的待定页数数据,相当于对一个章节进行自动排版后,生成的该章节的多页。
[0055]步骤四:判断该条数据是否已经排完S21,如果是,则转到步骤三,否则,转到步骤五。
[0056]本实施例中,数据为对一条章节数据,或一条已经排掉前任意段落文字和前任意张图片生成任意页排版数据后剩余未排版的章节数据,包括任意张任意尺寸的图片,以及任意段的文字。
[0057]步骤五:判断该条数据图片是否已经排完S22,如果是,则转到步骤七,否则,转到步骤六。
[0058]本实施例中,图片为一条章节待排版数据中的图片,当有图片时,则至少使用前一张图片进行排版。
[0059]步骤六:该尺寸书本相应的板式中最多的图片张数记为n,当前待排数据的图片张数记为m,n和m中的最小值记为1,分别使用前1,2,3,...,I张图、待定文字以及含相应张数图片的所有板式,排一页S23,转到步骤八。
[0060]本实施例中,对新的一条数据进行排版时,会另起一页。
[0061]本实施例中,生成的每一页排版数据的位置均以版心的左上角为起始位置保存,数据被取出渲染预览时会根据数据在左页还是右页进行相应的平移操作。
[0062]本实施例中,对于包含图片的板式进行自动排版时,包含两种模式:图片优先排版模式,文字优先排版模式。该板式已经使用了所有待排图片时使用文字优先排版模式,否则使用图片优先排版模式进行自动排版。
[0063]本实施例中,由于步骤二设置的自动排版约束条件,使用某个板式进行自动排版时,可能会出现自动排版没有结果的情况,故在该步骤必须要控制,必须至少存在一个板式使得,使用该板式进行自动排版时是有结果的。
[0064]所述排一页为实现板式的自动排版逻辑与方法,自动排版遵循的规则不限如下:
[0065]I)所有数据:所有图片文字区块的位置均以版心的左上角为起始位置计算并保存,实际取已排版好的数据预览或生成电子书时,需要根据数据在左页面还是在右页面进行相应的平移。
[0066]2)图片处理:改变图片显示大小时,一定是等比例的,保证图片不变形。
[0067]3)图片处理:图片只可以被等比率压缩,但不可以被等比率拉升,以避免由于图片拉升而带来的显示模糊。
[0068]4)图片处理:如果一定要压缩图片,图片有最小高度与最小宽度限制。
[0069]5)图片处理:给图片分配的显示区域,如果图片高度不够,则会控制图片下方的内容向上靠起;如果是图片宽度不够,则会控制图片在分配的显示区域居中显示。
[0070]6)文字处理:当为图片优先排版模式时,如果文字没有排完,且在图片排好后,文字区块还能放入文字,则文字按顺序切割分配到板式的文本区域。
[0071]7)文字处理:如果一个段落文字被切割分配到不同的页区块时,第一个区块最后一行文字必须排满整行。
[0072]8)文字处理:文本显不控制必须符合相关排版要求,如:逗号,句号不排在一行的起始位置,左书名号"《"不能在一行的结束位置等。
[0073]9)文字处理:如果给文字分配的区域宽度不是版心宽度,宽度有最小宽度限制。
[0074]10)文字处理:如果尾页只有比较少的文字,将尝试将尾页行数的文字挤到有图片的页中去。排法是对任意条数据进行自动排版,在处理新的一条数据时,另起一页,继续进行排版,故考虑处理尾页留白比较多的问题。
[0075]11)其他。
[0076]步骤七:使用当前待排数据的待定文字,以及纯文本的所有板式,排一页S24,转到步骤八。
[0077]本实施例中,纯文本板式为不含图片,只含文本的板式,包括文字横排与竖排两种板式。
[0078]步骤八:对步骤六或步骤七中产生的所有一页排法数据进行综合评估,优选出最优的一页排法,并记录该排法相应的未排数据S25,使用随机数控制该页区块与区块之间的相对位置,平移结束后保存S26,转到步骤四。[0079]本实施例中,综合评估可对一页不同数据的排版进行评价,为对各项指标的加权平均。各项指标不限如下:
[0080]I)页面饱和度:所有图片文字显示面积和与版心面积比值。
[0081]2)图片区块对其度:图片显示宽度与给图片分配的区块宽度比值中最小的。
[0082]3)文字区块对其度:如果给文本分配的区域左右有图片区域时,取值为1_(文字高度超出或不足旁边图片高度/版心高度),否则取值为I
[0083]4)文字使用偏移度:文字行数与图片张数比值*使用的板式的图片张数记为“最佳使用文本行数”。“最佳使用文本行数实际使用的文本行数记为“实际使用文本的偏移量”,则文字使用偏移度为“最佳使用文本行数”/( “最佳使用文本行数”+ “实际使用文本的偏移量”)。
[0084]5)其他。
[0085]本实施例中,使用随机数控制该页区块与区块之间的相对位置为根据随机数判定区块之间是否需要对调平移,以达到排版板式多样性显示的目的。
[0086]步骤九:取出优选并保存的所有页排版数据进行处理渲染预览S15,以及生成电子书S16。
[0087]本实施例中,进行处理为根据左页或右页版心的位置对排版数据进行平移,并添加封面、页码等数据。
[0088]本实施例中,生成电子书为根据用户需要生成胶订或骑马订标准预留出血位的pdf文档。
[0089]如图3所示,本发明提供了一种基于自动排版的一键成书系统,其包括以下模块:
[0090]板式匹配模块31:用于匹配用户选择的书本尺寸所适用的所有板式,系统将使用这些板式进行自动排版。
[0091]约束控制模块32:用于根据用户需求设置自动排版所遵循的约束条件,系统将使用这些约束条件控制自动排版过程。
[0092]自动排版模块33:根据板式匹配模块输出的所有板式,使用约束控制模块输出的约束条件,对待排数据进行自动排版。对于包含图片的板式,其包含两种模式:图片优先排版模式,文字优先排版模式。文字优先排版模式通过对板式中图片区域的压缩而达到容纳更多文字的目的,该模式主要为了解决对一条数据排版时的尾页不饱和情况,此模式只在板式已经使用了所有待排图片时使用。每次循环自动排版模块最终可能生成了多页数据。
[0093]综合评价模块34:对自动排版模块输出的多页排版数据进行各项指标打分,并使用用户选择的权重进行加权平均,优选出一页排版作为一个章节的一页数据,并记录此种排法的未排数据,作为下一次循环自动排版的依据。
[0094]区块平移模块35:对综合评价模块生产的一页数据,使用随机数控制该页区块与区块之间的相对位置,已达到板式多样性显示的目的。平移结束后保存该页排版数据,如果此时每一条数据均已生成排版数据,则进入预览模块,否则转到自动排版模块。
[0095]预览模块36:取出区块平移模块保存的所有页数据,根据左页或右页版心的位置对排版数据进行平移,并添加封面、页码等数据,最终将所有数据渲染预览。
[0096]印刷模块37:在预览模块渲染的基础上,使用胶订或骑马订标准自动绘制出血位并生成pdf文档。[0097]应用实例:
[0098]采用本发明所述的一种基于自动排版的一键成书方法的具体应用实例如下:方法在处理多条数据时,每一条数据的处理方式均相同,故下面只阐述对一条数据的处理步骤。
[0099]如需使用如图5、图6的一条数据,完成如图8、图9所示的排版预览印刷的效果,采用本发明所述的一种基于自动排版的一键成书方法,如图1、图2所示,包括以下步骤:
[0100]步骤一:选择书本尺寸Sll:每个书本尺寸对应多个排版板式,系统根据用户选择匹配相应的排版板式。
[0101]本实施例中,假设用户选中了正16k,书本的宽高像素单位暂设置为(524,737),版心的宽高为(426,640),以书本的左上角为原点,版心在左页面中相对于原点的起始位置为(66,58),单位px。系统匹配到的板式假设为如图4.1,4.2,4.5,4.7,4.13所示的板式。
[0102]步骤二:设置排版约束条件S12:设置自动排版需要遵循的规则,用户可设置相应约束条件控制自动排版效果。
[0103]本实施例中,排版约束条件设置如下:图片区块最小显示宽度150px、高度150px,文本区块最小宽度106px,横向区块间距20px,纵向区块间距5px,版心高度所能容纳的最大文本行数30行,版心宽度所能容纳的英文字母长度70个,图片显示宽度与图片区块宽度最小比值0.5,综合评价指标权重,页面饱和度权重0.7,图片区块对其度权重0.1,文字区块对其度权重0.1,文字使用偏移度权重0.1。
[0104]步骤三:判断每一条数据是否均已生成排版数据S13,如果是,则转到步骤九,否则取一条数据,转到步骤四,进行自动排版。
[0105]本实施例中,当前有一条需要排版的数据,该条数据如图5、图6所示,包含3张图片,以及6段文字。如图5中3张图片的宽高信息依次如下:(3456,5184),(5184,3456),(3456,5184),单位px。取出该条数据,转到步骤四,进行自动排版。
[0106]步骤四:判断该条数据是否已经排完S21,如果是,则转到步骤三,否则,转到步骤五。
[0107]本实施例中,当前数据如图5、图6所示,没有排完,转到步骤五。
[0108]步骤五:判断该条数据图片是否已经排完S22,如果是,则转到步骤七,否则,转到步骤六。
[0109]本实施例中,当前数据图片如图5,还有三张没有排完,转到步骤六。
[0110]步骤六:该尺寸书本相应的板式中最多的图片张数记为n,当前待排数据的图片张数记为m,η和m中的最小值记为I,分别使用前1,2,3,...,I张图、待定文字,以及含相应张数图片的所有板式,排一页S23,转到步骤八。
[0111]本实施例中,该尺寸书本相应的板式使用步骤一中的假设,其中最多的图片张数为4,即η = 4 ;当前待排数据的图片张数记为3,即m = 3 ;η和m中的最小值记为3,即I =3 ;分别使用前1,2,3张图、待定文字,以及含相应张数图片的所有板式,排一页,即使用如图4.2,4.5,4.7所示的板式,以及如图5、图6所示的前若干张图片,若干段文字排一页。
[0112]本实施例中,使用如图4.2所示的板式,对如图5、图6待排数据进行排版时,由于是新的一条数据,故会另起一页。生成一页排版数据的位置均以版心的左上角为起始位置保存。由于如图4.2所示的板式只用了 I张图片,没有用完所有图片,故在进行自动排版时,使用图片优先排版模式。取如图5所示的第一张图,以及若干文字排一页,生成的效果图如10所示。在排版过程中,在排完该张图片后,已经没有位置排放文字。此时生成的一页排版数据只包括一张图片,该图片相对于版心左上角的位置(X,y)为(7.66667,O),显示宽高(w,h)为(410.667,616),单位px,图片下方预留图片说明文字区块,高度24px,图片横向显示区域被设置在版心中间。
[0113]本实施例中,使用如图4.5所示的板式,对如图5、图6待排数据进行排版时,由于是新的一条数据,故会另起一页。生成一页排版数据的位置均以版心的左上角为起始位置保存。由于如图4.5所示的板式只用了 2张图片,没有用完所有图片,故在进行自动排版时,使用图片优先排版模式。取如图5所示的第一张、第二张图,以及若干文字排一页,生成的效果图如7所示。在排版过程中,在排完两张张图片后,计算还能放下20行文字,于是从如图6所示的文字切割前面满20行文字,填充未排满的区域。此时生成的一页排版数据包括2张图片,一个文本区域,如7所示第一张图相对于版心左上角的位置(x,y)为(0,0),显示宽高(w,h)为(124.923,187.385),单位px ;第二张图相对于版心左上角的位置(x,y)为(144.923,0),显示宽高(w,h)为(281.077,187.385),单位px,第一张图片和第二张图片之间有20px的间隔,两张图片下方均预留图片说明文字区块,高度24px,此时两张图片高度一致,且图片显示宽度和加上一个横向区块间隔刚好为版心的宽度。下方文字区块相对于版心左上角的位置(x,y)为(144.923,211.385),显示宽高(w,h)为(426,425),单位px。
[0114]本实施例中,使用如图4.7所示的板式,对如图5、图6待排数据进行排版时,由于是新的一条数据,故会另起一页。生成一页排版数据的位置均以版心的左上角为起始位置保存。由于如图4.7所示的板式用了 3张图片,用完所有图片,故在进行自动排版时,使用文字优先排版模式。取如图5所示的所有张图,以及若干文字排一页。在排版过程中,计算如图6所示的文字,在版心宽度下,需要24行,当排下所有文本时,再预留两个图片说明高度,此时,在版心内的高度还剩余83px,但此时,如果要按照如果4.7所示的板式排下这三张图片,则根据约束条件:图片显示宽度与图片区块宽度最小比值0.5,此时需给这3张图分配的最小高度和为294.25px,其大于实际剩余高度83px,故使用该板式排版时无结果。
[0115]步骤八:对步骤六或步骤七中产生的所有一页排法数据进行综合评估,优选出最优的一页排法,并记录该排法相应的未排数据S25,使用随机数控制该页区块与区块之间的相对位置,平移结束后保存S26,转到步骤四。
[0116]本实施例中,对步骤六产生的2页排版数据进行综合评分,对使用如图
4.2所示的板式生成效果图如10所示的排法,综合评价各项指标值:页面饱和度:
0.96535 ;图片区块对其度:1 ;文字区块对其度:1 ;文字使用偏移度:0.5,综合评分为
0.96535*0.7+1*0.1+1*0.1+0.5*0.1 = 0.92214984。对使用如图 4.5 所示的板式生成效果图如7所示的排法,综合评价各项指标值:页面饱和度:0.9788446 ;图片区块对其度:1 ?’文字区块对其度:1 ;文字使用偏移度:0.9741954,综合评分为0.9788446*0.7+1*0.1+1*0.1+
0.9741954*0.1 = 0.9826107,其大于0.92214984。故经过综合评价优选出来的排法为使用如图4.5所示的板式生成效果图如7所示的排法。
[0117]本实施例中,经过区块平移模块,如果随机数指示需要对调图片和文字区块的位置,则平移对调后生成效果图如8所示。
[0118]本实施例中,此时需要记录优选出的第一页排法相应的未排数据,转到步骤四,此时的未排数据即为如图5所示的第三张图,以及如图6所示的文字去掉如图8所示的已排掉的文字部分,如此循环直到所有数据均排完,即得到了该条数据的所有排版数据。按照类似处理方式,共生产2页排版数据,第二页排版效果如图9所示。
[0119]步骤九:取出优选并保存的所有页排版数据进行处理渲染预览S15,以及生成电子书S16。
[0120]本实施例中,根据左页或右页版心的位置对排版数据进行平移,并添加封面、页码等数据。当为左页面时,则需要将页面上的每一个区块的位置(x,y),根据版心在左页面中相对于原点的起始位置为(66,58)进行平移调整,如果为右页面则需要根据版心在左页面中相对于原点的起始位置为(66,58),版心的宽度426,以及书本的宽度524,计算版心在右页面中对称的原点的起始位置(32,58),页面上的每一个区块的位置(X,y)需要根据此值平移进行调整,计算单位均为px。对排版好的数据借助于浏览器内核进行渲染预览。如果是胶订标准,则对渲染的结果,向上下左右四周以周边临界点颜色值个向外绘制3毫米,如果是起订标准,则对渲染的结果,左页面时,向上下左三面以周边临界点颜色值个向外绘制3毫米,右页面时,向上下右三面以周边临界点颜色值个向外绘制3毫米,最后借助虚拟打印机的能力生成相应的Pdf文档。
[0121]上面结合附图对本发明进行了示例性的描述,显然本发明的实现并不受上述方式的限制,只要采用了本发明的方法构思和技术方案进行的各种改进,或未经改进将本发明的构思和技术方案直接应用于其它场合的,均在本发明的保护范围内。
【权利要求】
1.一种基于自动排版的一键成书方法,包括以下步骤:步骤一、选择书本尺寸;步骤二、设置排版约束条件;步骤三、判断每一条数据是否均已生成排版数据;如果是,则转到步骤九,否则取一条数据,转到步骤四,进行自动排版;步骤四、判断该条数据是否已经排版完,如果是,则转到步骤三,否则,转到步骤五;步骤五、判断该条数据图片是否已经排完;如果是,则转到步骤七;否则,转到步骤六;步骤六、该尺寸书本相应的板式中最多的图片张数记为n,当前待排数据的图片张数记为m,η和m中的最小值记为1,分别使用前1,2,3,...,I张图、待定文字以及含相应张数图片的所有板式,排一页,转到步骤八;步骤七、使用当前待排数据的待定文字以及纯文本的所有板式,排一页,转到步骤八;步骤八、对步骤六或步骤七中产生的所有一页排法数据进行综合评估,优选出最优的一页排法,并记录该排法相应的未排数据,使用随机数控制该页区块与区块之间的相对位置,平移结束后保存,转到步骤四;步骤九:取出优选并保存的所有页排版数据进行处理渲染预览,以及生成电子书。
2.根据权利要求1所述基于自动排版的一键成书方法,其特征在于:在所述步骤一中,所述书本尺寸为当前市面上书籍尺寸。
3.根据权利要求1所述基于自动排版的一键成书方法,其特征在于:在所述步骤二中,所述排版约束条件包括图片区块最小显示宽度与高度、文本区块最小宽度、横向区块间距、纵向区块间距、版心高度所能容纳的最大文本行数、版心宽度所能容纳的英文字母长度、图片显示宽度与图片区块宽度最小比值,综合评价多项排版约束条件指标权重,用户可设置相应的值进行自动排版。
4.根据权利要求1所述基于自动排版的一键成书方法,其特征在于:在所述步骤三中,所述一条数据为一条需要排版的数据,相当于一本书的一个章节数据,包括任意张任意尺寸的图片和任意段的文字;所述排版数据为对一条数据进行自动排版生成的待定页数数据,相当于对一个章节进行自动排版后,生成的该章节的多页。
5.根据权利要求1所述基于自动排版的一键成书方法,其特征在于:在步骤四中,所述数据为对一条章节数据,或一条已经排掉前任意段落文字和前任意张图片生成任意页排版数据后剩余未排版的章节数据,包括任意张任意尺寸的图片和任意段的文字。
6.根据权利要求1所述基于自动排版的一键成书方法,其特征在于:在步骤五中,所述图片为一条章节待排版数据中的图片,当有图片时,则至少使用前一张图片进行排版。
7.根据权利要求1所述基于自动排版的一键成书方法,其特征在于:步骤六中,所述板式为根据用户需求内置,其定义了图片区块、文字区块以及两者之间的相对位置关系;所述排一页为实现板式的自动排版逻辑与方法,自动排版遵循以下规则:1)所有数据的规则:所有图片文字区块的位置均以版心的左上角为起始位置计算并保存,实际取已排版好的数据预览或生成电子书时,需要根据数据在左页面还是在右页面进行相应的平移;2)图片处理原则a:改变图片显示大小时,一定是等比例的,保证图片不变形;3)图片处理原则b:图片只可以被等比率压缩,但不可以被等比率拉升,以避免由于图片拉升而带来的显示模糊;4)图片处理原则c:如果一定要压缩图片,图片有最小高度与最小宽度限制;5)图片处理原则d:给图片分配的显示区域,如果图片高度不够,则会控制图片下方的内容向上靠起;如果是图片宽度不够,则会控制图片在分配的显示区域居中显示;6)文字处理原则a:当为图片优先排版模式时,如果文字没有排完,且在图片排好后,文字区块还能放入文字,则文字按顺序切割分配到板式的文本区域;7)文字处理原则b:如果一个段落文字被切割分配到不同的页区块时,第一个区块最后一行文字必须排满整行;8)文字处理原则c:文本显示控制必须符合相关排版要求;9)文字处理原则d:如果给文字分配的区域宽度不是版心宽度,宽度有最小宽度限制;10)文字处理原则e:如果尾页只有比较少的文字,将尝试将尾页行数的文字挤到有图片的页中去;排法是对任意条数据进行自动排版,在处理新的一条数据时,另起一页,继续进行排版,故考虑处理尾页留白比较多的问题。
8.根据权利要求1所述基于自动排版的一键成书方法,其特征在于:步骤七中,所述纯文本板式为不含图片,只含文本的板式,包括文字横排与竖排两种板式。
9.根据权利要求1所述基于自动排版的一键成书方法,其特征在于:步骤八中,所述综合评估可对一页不同数据的排版进行评价,为对各项指标的加权平均,各项指标如下:1)页面饱和度:所有图片文字显示面积和与版心面积比值;2)图片区块对其度:图片显示宽度与给图片分配的区块宽度比值中最小的;3)文字区块对其度:如果给文本分配的区域左右有图片区域时,取值为1-(文字高度超出或不足旁边图片高度/版心高度),否则取值为I ;4)文字使用偏移度:文字行数与图片张数比值*使用的板式的图片张数=最佳使用文本行数;I最佳使用文本行数-实际使用的文本行数I =实际使用文本的偏移量,则文字使用偏移度=最佳使用文本行数/(最佳使用文本行数+实际使用文本的偏移量)。
10.根据权利要求1所述基于自动排版的一键成书方法,其特征在于:在步骤九中,所述生成电子书为获取所有排版好的每一页数据,根据左页版心或右页版心的位置对排版数据进行平移,并添加封面和页码等数据,最终将所有数据渲染以及生产电子书,如果需要印刷可选择胶订与骑马 订标准预留出血位并生成Pdf文档。
【文档编号】G06F17/25GK104021113SQ201410279986
【公开日】2014年9月3日 申请日期:2014年6月23日 优先权日:2014年6月23日
【发明者】茆昌盛, 张琪, 刘桂霞, 孙立, 叶营 申请人:时代新媒体出版社有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1