CN110852052A - 一种图书排版方法及装置 - Google Patents
一种图书排版方法及装置 Download PDFInfo
- Publication number
- CN110852052A CN110852052A CN201910989802.2A CN201910989802A CN110852052A CN 110852052 A CN110852052 A CN 110852052A CN 201910989802 A CN201910989802 A CN 201910989802A CN 110852052 A CN110852052 A CN 110852052A
- Authority
- CN
- China
- Prior art keywords
- elements
- book
- file
- typesetting
- book data
- 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
Links
Images
Landscapes
- Document Processing Apparatus (AREA)
Abstract
本发明实施例提供了一种图书排版方法及装置,其中,所述方法包括:获取图书数据;其中,所述图书数据中携带元数据信息,且所述元数据信息为描述所述图书数据中数据的属性的结构化数据信息;获取布局文件;其中,所述布局文件为按照预设语法标准生成的,且所述布局文件中包括与所述元数据信息相对应的元素,所述预设语法标准中包括有布局文件中的元素与图书数据中的元数据信息的对应关系;基于所述元数据信息与所述元素的对应关系,将所述图书数据对应记录到所述布局文件中,生成图书排版文件。从而采用图书排版文件展示给用户阅读的图书数据是固定格式的,使得各种格式的图书可统一化排版,从而使得各种格式图书达到一致的用户体验。
Description
技术领域
本发明涉及图书技术领域,特别是涉及一种图书排版方法和一种图书排版装置。
背景技术
随着科学技术发展,移动阅读器技术也飞速发展,经过探索期、市场启动期、高速发展期,逐渐进入成熟期,采用移动阅读器阅读的用户也越来越多。
目前,移动阅读器支持图书格式以txt格式为主,pdf格式、Html格式等多种格式并存。其中,txt格式是纯文本格式,排版样式单一;pdf格式是将文字、字型、格式、颜色及独立于设备和分辨率的图形图像等封装起来,排版样式固定;Html格式是网页文件格式,根据Html格式文件中设置的排版样式来显示文件,可见,不同格式的文件对应的图书排版样式不同,由于不同的格式对应的图书排版差异较大,给阅读者带来杂乱的阅读体验。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述的多种格式的图书数据会的给阅读者带来杂乱的阅读体验的问题的一种图书排版方法和相应的一种图书排版装置。
一方面,本发明实施例公开了一种图书排版方法,包括:
获取图书数据;其中,所述图书数据中携带元数据信息,且所述元数据信息为描述所述图书数据中数据的属性的结构化数据信息;
获取布局文件;其中,所述布局文件为按照预设语法标准生成的,且所述布局文件中包括与所述元数据信息相对应的元素,所述预设语法标准中包括有布局文件中的元素与图书数据中的元数据信息的对应关系;
基于所述元数据信息与所述元素的对应关系,将所述图书数据对应记录到所述布局文件中,生成图书排版文件。
可选的,还包括:
读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,并展示所述图书数据;或者,
获取与所述布局文件相对应的样式文件,其中,所述样式文件中包括所述布局文件中元素的排版样式,并读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,再依据所述布局文件中元素的排版样式,展示所述图书数据。
可选的,所述布局文件中还包括文件声明,其中,所述文件声明用于指示生成所述布局文件所适配的语法标准。
可选的,每一所述元素均包括用于标识该元素起始的开放标签和用于标识该元素结尾的闭合标签;
所述基于所述元数据信息与所述元素的对应关系,将所述图书数据对应记录到所述布局文件中,生成图书排版文件的步骤,包括:
遍历所述图书数据中元数据信息,针对每一所述元数据信息,依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素为目标元素,并在所述目标元素中的开放标签和闭合标签之间,记录所述图书数据中与该元数据信息相对应的数据;
确定遍历后得到的布局文件为图书排版文件。
可选的,所述依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素为目标元素的步骤,包括:
依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素;
若所述元素为段落元素,则确定所述元素是否支持重复属性;
若所述元素支持重复属性,则依据所述图书数据的元数据信息,确定所述段落元素的个数;
扩展所述段落元素,生成所确定个数的段落元素,并依次确定所生成的段落元素为目标元素。
可选的,所述读取所述图书排版文件中所述元素以及与所述元素关联记录的图书数据的步骤,包括:
若读取到所述图书排版文件中的元素为章节元素,则采用排版标记语言LML规范读取,所述章节元素中开放标签和闭合标签之间数据;其中,所述LML为满足所述预设语法标准的标记语言。
一方面,本发明实施例还公开了一种图书排版装置,包括:
图书数据获取模块,用于获取图书数据;其中,所述图书数据中携带元数据信息,且所述元数据信息为描述所述图书数据中数据的属性的结构化数据信息;
布局文件获取模块,用于获取布局文件;其中,所述布局文件为按照预设语法标准生成的,且所述布局文件中包括与所述元数据信息相对应的元素,所述预设语法标准中包括有布局文件中的元素与图书数据中的元数据信息的对应关系;
图书排版文件生成模块,用于基于所述元数据信息与所述元素的对应关系,将所述图书数据对应记录到所述布局文件中,生成图书排版文件。
可选的,还包括:
第一展示模块,用于读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,并展示所述图书数据;或者,
第二展示模块,用于获取与所述布局文件相对应的样式文件,其中,所述样式文件中包括所述布局文件中元素的排版样式,并读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,再依据所述布局文件中元素的排版样式,展示所述图书数据。
可选的,所述布局文件中还包括文件声明,其中,所述文件声明用于指示生成所述布局文件所适配的语法标准。
可选的,每一所述元素均包括用于标识该元素起始的开放标签和用于标识该元素结尾的闭合标签;
所述图书排版文件生成模块,包括:
数据遍历子模块,用于遍历所述图书数据中元数据信息,针对每一所述元数据信息,依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素为目标元素,并在所述目标元素中的开放标签和闭合标签之间,记录所述图书数据中与该元数据信息相对应的数据;
图书排版文件确定子模块,用于确定遍历后得到的布局文件为图书排版文件。
可选的,所述数据遍历子模块,包括:
元素确定单元,用于依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素;
属性确定单元,用于若所述元素为段落元素,则确定所述元素是否支持重复属性;
个数确定单元,用于若所述元素支持重复属性,则依据所述图书数据的元数据信息,确定所述段落元素的个数;
元素扩展单元,用于扩展所述段落元素,生成所确定个数的段落元素,并依次确定所生成的段落元素为目标元素。
可选的,所述第一展示模块或者第二展示模块,包括:
文件读取单元,用于若读取到所述图书排版文件中的元素为章节元素,则采用排版标记语言LML规范读取,所述章节元素中开放标签和闭合标签之间数据;其中,所述LML为满足所述预设语法标准的标记语言。
一方面,本发明实施例还公开了一种电子设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行所述指令时,得以实现如本发明实施例所述的一个或多个的方法的步骤。
一方面,本发明实施例还公开了一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行所述指令时,得以实现如本发明实施例所述的一个或多个的方法的步骤。
本发明实施例包括以下优点:
在本发明实施例中,通过获取图书数据和布局文件;其中,布局文件为按照预设语法标准生成的,且布局文件中包括与元数据信息相对应的元素,预设语法标准中包括有布局文件中的元素与图书数据中的元数据信息的对应关系;基于元数据信息与所述元素的对应关系,将图书数据对应记录到布局文件中,生成图书排版文件。通过使用布局文件对图书数据进行排版,因此,使得采用图书排版文件展示给用户阅读的图书数据是固定格式的,使得各种格式的图书可统一化排版,从而使得各种格式图书达到一致的用户体验。而且,图书排版文件制作过程简单,相对于epub格式文件繁杂的制作过程而言,本发明实施例的图书排版文件更适于大批量制作。
附图说明
图1是本发明的一种图书排版方法实施例的步骤流程图;
图2A是本发明实施例展示的一种版权页的示意图;
图2B是本发明实施例展示的另一种版权页的示意图;
图3是本发明实施例展示的一种正文页的示意图;
图4是本发明的一种图书排版装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种图书排版方法实施例的步骤流程图,具体可以包括如下步骤:
步骤101,获取图书数据;其中,所述图书数据中携带元数据信息,且所述元数据信息为描述所述图书数据中数据的属性的结构化数据信息;
图书数据可以是创作者或出版商发布在网络上的图书数据,其可以是一本完整的图书数据,也可以是图书中的一个章节。在本发明实施例中,图书数据可以是多种格式的,而不局限于某种特定的格式,例如,txt格式,pdf格式和Html格式等。
图书数据可以通过从网站的后台服务器下载,也可以通过从移动终端本地缓存中获取,或者通过其他方式获取,本发明实施例对此并不限制。
图书数据携带元数据信息,携带的元数据信息与该图书数据中的各项数据具有对应关系,其中,元数据信息可以是描述图书数据中数据的属性的结构化数据信息。例如,元数据信息可以为章节、段落、页眉、页脚、标题、作者、书名、封面图、图书类别、字数、状态和版权等信息。
在本发明实施例中,获取的图书数据可以是,通过预处理标注与图书数据中各项数据对应的元数据信息之后的图书数据,其中,txt格式,pdf格式和Html格式等格式的图书数据都可以是标注元数据信息后的图书数据,例如,标注元数据信息“书名”与数据内容“斗破苍穹”具有对应关系。
在具体实现中,若获取的txt格式,pdf格式和Html格式等格式的图书数据未携带元数据信息,可以人工对txt格式,pdf格式和Html格式等格式的图书数据进行处理,标注与图书数据中各项数据对应的元数据信息,也可以通过文字识别、图像识别等智能识别技术来识别并确定txt格式,pdf格式和Html格式等格式的图书数据中,与图书数据中各项数据对应的元数据信息,进而标注与图书数据中的各项数据具有对应关系的元数据信息。
图书数据中可以包括图书的正文页、版权页、封面页、序页、前言页等页面,在每一种页面中,可以分别包括多项数据内容。作为一种示例,正文页可以包括标题、段落、页眉和页脚等部分的内容;版权页可以包括封面图、书名、作者、图书类别、字数、状态和版权等内容。需要说明的是,由于版权页通常不需要显示页眉和页脚,在版权页中,可以不包括页眉和页脚信息。
步骤102,获取布局文件;其中,所述布局文件为按照预设语法标准生成的,且所述布局文件中包括与所述元数据信息相对应的元素,所述预设语法标准中包括有布局文件中的元素与图书数据中的元数据信息的对应关系;
布局文件可以是用于对图书数据进行排版的模板文件。布局文件可以由移动阅读器设计员进行设计生成,也可以由图书阅读者进行设计生成。
在本发明实施例中,布局文件为LML格式的文件,其文件后缀为“.lml”,可以基于排版标记语言LML(Layout Markup Language)生成。
LML是一种满足预设语法标准的标记语言,其通过元素标记符来标记要显示的图书页面的各个部分数据内容,通过元素标记符可以确定图书数据的页面中需要显示哪些内容,以及确定要显示的这些内容彼此之间的关系。
其中,预设语法标准可以是预先规定的LML适用的语法标准,语法标准可以有多种,可以通过版本号来区分不同的语法标准。预设语法标准可以与XML(Extensible MarkupLanguage,可扩展标记语言)的语法类似,元素标记符成对出现,分别表示为开放标签和闭合标签,其中,开放标签表示元素的开始,闭合标签表示元素的结束。
依据预设语法标设计生成的布局文件通常具有基本的整体结构,包含章节chapter元素,用于说明布局文件采用LML来描述,是布局文件的根节点,在chapter元素中,可以包含页眉header元素、正文body元素、页脚footer元素等。其中,body元素指正文部分,在body元素中可以包括页面的各项组成元素,例如,版权页模板中body元素部分可以包括书名BookName元素、作者Author元素、出版人Publisher元素、标题Title元素、段落Paragraph元素等。
其中,元素标记符即是布局文件中各项元素的标记符,表示各项元素的名称。在预设语法标准中可以包含布局文件中的元素与图书数据中的元数据信息的对应关系,布局文件通过这些元素标记符描述图书数据的元数据信息。例如,图书数据中的章节对应chapter元素、正文对应body元素、标题对应title元素、段落对应paragraph元素、页眉对应header元素、页脚对应footer元素、封面图对应cover元素、书名对应bookname元素、作者对应author元素、图书类别对应catalog元素、字数对应wordcount元素、状态对应status元素和版权对应info元素等。
LML可以支持必要的属性,以扩展LML的表达能力,如repeat="true"表示元素对应一组数据,扩展后得到一个元素的数组;出于组织元数据信息的需要,还可以定义段落节点section元素,在其中包含元数据的节点元素,以及必要的文字信息;还可以根据元数据信息划分图片数据的类别,如封面图Cover、普通图片Image、背景图BackgroundImage等;还可以使用Audio来描述音频文件,使用Video来描述视频文件。
为了说明使用的LML的版本,布局文件可以以文件类型声明开头,即布局文件中还包括文件声明,其中,文件声明用于指示生成布局文件所适配的语法标准。其中,文件声明以<!DOCTYPE>开头,DOCTYPE标签是一种标准通用标记语言的文档类型声明。例如,布局文件的文件声明如下:
<!DOCTYPE LML//1.0//IQIYI>。
其中,LML规定了布局文件使用LML进行编写,1.0规定了LML适用的预设语法标准的版本号为1.0,IQIYI可以指示LML的开发商。
作为一种示例,正文页的布局文件可以配置如下所示:
<chapter>
<header></header>
<body>
<title></title>
<paragraph repeat="true"></paragraph>
</body>
<footer></footer>
</chapter>
在上述正文页的布局文件中,采用chapter元素,header元素,body元素,title元素和paragraph元素,规定了正文页中需要显示页眉、标题和段落的内容,并确定了要显示的这些内容彼此之间的关系。
作为另一种示例,版权页的布局文件可以配置如下所示:
<chapter>
<body>
<covercontainer>
<cover></cover>
</covercontainer>
<bookname></bookname>
<author></author>
<section>
<catalog></catalog><wordcount></wordcount><status></status>
</section>
<cpname></cpname>
<info></info>
</body>
</chapter>
在上述版权页的布局文件中,采用chapter元素,body元素,covercontainer元素,cover元素、bookname元素、author元素、section元素、catalog元素、wordcount元素、status元素、cpname元素和info元素,规定了版权页中显示封面图块、封面图、书名、作者、段落节点、图书类别、字数、状态、出版人和版权信息的内容,并确定了要显示的这些内容彼此之间的关系。
在发明实施例中,为了更好的对图书数据进行排版,LML可以支持与图书数据的元数据信息相对应的各种元素,例如,图书数据中通常会包含与封面图、作者、书名、图书类别、字数、状态和版权等元数据信息对应的数据内容,在本发明实施例中,LML支持与封面图、作者、书名、图书类别、字数、状态和版权等元数据信息相对应元素,分别为:封面图Cover元素、作者Author元素、书名BookName元素、图书类别catalog元素、字数wordcount元素、状态status元素和版权info元素。由于在HTML中并不完全支持上述与图书数据的元数据信息相对应的元素,例如,HTML中不支持catalog、wordcount等元素,相较于HTML格式的文件,采用LML编辑的布局文件可以更好的对图书数据进行排版。
步骤103,基于所述元数据信息与所述元素的对应关系,将所述图书数据对应记录到所述布局文件中,生成图书排版文件。
在本发明实施例中,基于元数据信息与元素的对应关系,以及元数据信息与图书数据中各项数据的对应关系,可以确定布局文件中各个元素对应的图书数据,从而将图书数据中的各项数据对应记录到布局文件中,生成图书排版文件。
由于在布局文件中元素之间确定了各个元素之间的布局关系,因此,将图书数据中的各部分内容与元素对应记录之后生成的图书排版文件,可以指示图书数据中各部分内容的布局关系,通过图书排版文件可以确定图书数据中各项内容的如何布局。
在具体实现中,由于图书数据包括多个部分页面的内容,例如,包括图书的正文页、版权页、封面页、序页、前言页等页面,可以分别针对不同的页面内容生成不同的图书排版文件。
作为一种示例,将正文页的图书数据对应记录到步骤102中正文页的布局文件中生成的图书排版文件可以如下所示:
<chapter>
<header></header>
<body>
<title>第1章第一滴血…</title>
<paragraph>今年天气反常,还没到六月呢,就热得天怒人怨。在太阳地上站一会儿,就被烤得脸皮都疼。</paragraph>
<paragraph>大中午,路边没什么阴凉地儿,李飞两道剑眉拧得死紧,大步跨进东山市公安局禁毒大队的办公楼,攥着手机的手背青筋暴起,正在给始终“号码无法接通”的搭档拨打第四次电话。</paragraph>
<paragraph>他从热浪糊脸的街道钻进冷气十足的办公楼,满脑门的汗,自己倒是感觉不到热,只觉得那头汗是急出来的。</paragraph>
</body>
<footer></footer>
</chapter>
其中,标题“第1章第一滴血…”与title元素对应记录,段落中的内容与paragraph元素对应记录,每一个段落对应一个paragraph元素。
作为另一种示例,将版权页的图书数据对应记录到步骤102中版权页的布局文件中生成的图书排版文件可以如下所示:
<chapter>
<body>
<covercontainer>
<cover>../Images/cover.jpg</cover>
</covercontainer>
<bookname>破冰行动</bookname>
<author>千羽之城</author>
<section>
<catalog>军旅</catalog><wordcount>49万字</wordcount><status>已完结</status>
</section>
<cpname>XX文学原创作品</cpname>
<info>版权所有侵权必究</info>
</body>
</chapter>
其中,封面图与cover元素对应记录,书名《破冰行动》与bookname元素对应记录,作者“千羽之城”与author元素对应记录,类别“军旅”与catalog元素对应记录,字数“49万字”与wordcount元素对应记录,状态“已完结”与status元素对应记录,版权“XX文学原创作品”与cpname元素对应记录,版权声明“版权所有侵权必究”与info元素对应记录。
本发明的一种优选实施例中,在生成图书排版文件步骤后,还包括图书排版文件的展示方法,具体可以包括如下步骤:
读取生成的图书排版文件中的元素以及与该元素对应记录的图书数据,并展示所述图书数据。
在本发明实施例中,由于图书排版文件中的各个元素确定了元素之间的布局关系,可以直接通过读取生成的图书排版文件中的元素以及与该元素对应记录的图书数据,从而确定图书数据中的各项数据内容如何排版,并按照默认的排版样式展示图书数据。其中,默认的排版样式可以是预设语法标准中规定的各项元素的原始排版样式。
例如,上述版权页的图书排版文件中,cover元素、bookname元素、author元素、section元素、cpname元素和info元素中的图书数据先后展示,此外,在section元素中包含catalog元素、wordcount元素和status元素,则catalog元素、wordcount元素和status元素对应的图书数据先后展示在同一段落节点中。
本发明的另一种优选实施例中,图书排版文件的展示方法,具体可以包括如下步骤:
获取与所述布局文件相对应的样式文件,并读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,再依据所述布局文件中元素的排版样式,展示所述图书数据,其中,所述样式文件中包括所述布局文件中元素的排版样式。
在本发明实施例中,还可以为布局文件设置相应的样式文件,用于说明布局文件中各个元素的排版样式。由于图书排版文件是将图书数据对应记录到所述布局文件中生成的,图书排版文件各元素的排版样式并没有改变,因此,布局文件对应的样式文件同样适用于图书排版文件,布局文件的样式文件可以用于图书排版文件设置图书数据的排版样式。
其中,排版样式可以指为图书数据的字体、字号、颜色、背景颜色、边框、边距等格式设置特性的组合,按照设置排版样式显示的图书数据,能够给用户带来良好的阅读体验,例如,设置背景颜色为淡绿色,可以达到保护眼睛的效果。
样式文件可以是采用CSS(Cascading Style Sheets,层叠样式表)设计。CSS是一种定义样式结构的计算机语言,可以包括字体、字号、颜色、位置设置、行内元素等CSS标准的必要样式信息。
LML格式的布局文件或图书排版文件可以支持采用CSS样式文件来说明图书数据中的内容如何显示,显示的位置,以及各部分内容的分布等。例如,说明文字、图片、音频、视频等如何显示,显示的位置和各部分的分布等。
在本发明实施例中,在配置完布局文件之后,可以采用CSS配置布局文件中的各个元素的排版样式,例如,对上述步骤102中的布局文件配置的CSS样式如下所示:
其中,分别设置header元素的样式,以描述页眉如何显示;设置footer元素的样式,以描述页脚如何显示;设置title元素的样式,以描述标题如何显示;设置paragraph元素的样式,以描述段落如何显示。在页眉、页脚样式中可以定义数据的字体、字号、样色、边框、装饰等各种排版信息。具体的,页眉、页脚对应的数据在排版绘制时,实时填充生成,因为,页眉一般为当前页标题项,页脚一般为当前页的页码,都需要根据排版时的分页情况实时获取。
在本发明实施例中,为了排版需要,LML格式的布局文件或图书排版文件还可以支持扩展的自定义样式信息,如,可以支持固定字号、固定高度等自定义样式信息。
需要说明的是,布局文件或图书排版文件相对于一个图书数据是固定的,但是其对应的样式文件可以是多变的。可以针对一个布局文件或图书排版文件定义多个样式文件,用户可以通过选择不同样式文件以改变模板文件,从而提供不同的阅读体验。
作为另一种示例,分别设置catalog元素、wordcount元素和status元素对应样式代码可以如下所示:
其中,font-size表示字体大小,line-height表示行高,text-align表示文字对齐方式,iqiyi表示自定义的样式,display:inline表示列表默认一排显示。从上述样式文件可见,分别设置catalog元素、wordcount元素和status元素对应的图书数据显示字体大小为0.7像素,行高为1像素,居中显示,自定义的样式为固定字号,与列表中的其他内容一排显示(如,catalog、wordcount和status对应的内容显示一排显示)。
如图2A和图2B示出了本发明实施例展示的两种版权页的示意图,在图2A和图2B中,分别采用两种不同的样式文件对版权页的内容进行排版,由于样式文件不同,版权页的内容显示的形式也不同。如图3示出了本发明实施例展示的一种正文页的示意图。
由于图书数据都采用布局文件作为模板,依据与布局文件相对应的样式文件进行排版,因此,展示给用户阅读的图书数据是固定样式的,使得各种格式的图书可统一化排版,从而使得各种格式图书达到一致的用户体验。如对txt格式、pdf格式、epub格式、html格式和word格式等格式的图书可统一化排版。
在本发明的一种优选实施例中,每一元素均包括用于标识该元素起始的开放标签和用于标识该元素结尾的闭合标签;
在预设语法标准中,元素通常以标签的形式出现。标签由尖括号包围元素标记符,通常成对出现,标签对中的第一个标签是开放标签,第二个标签是闭合标签。例如,status元素的标签表示为<status></status>,其中,<status>是开放标签,</status>是闭合标签。
所述步骤103可以包括如下子步骤:
遍历所述图书数据中元数据信息,针对每一所述元数据信息,依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素为目标元素,并在所述目标元素中的开放标签和闭合标签之间,记录所述图书数据中与该元数据信息相对应的数据;确定遍历后得到的布局文件为图书排版文件。
在具体实现中,可以针对图书数据中的每一元数据信息,依据预设语法标准中的对应关系,确定该元数据信息对应的元素为目标元素。在确定目标元素之后,可以进一步确定目标元素的开放标签和闭合标签,并在目标元素中的开放标签和闭合标签之间,记录图书数据中与该元数据信息相对应的数据。
例如,确定status元素的开放标签<status>和闭合标签</status>之后,将status元素对应元数据信息“状态”的值“连载”,添加到<status></status>之间,记录为<status>连载</status>。
依次遍历图书数据中的元数据信息,并将数据填充到布局与元数据信息对应的目标元素之间,直到遍历完所有的元数据信息,确定遍历后得到的布局文件为图书排版文件。
在本发明的一种优选实施例中,所述依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素为目标元素的步骤,可以包括如下子步骤:
依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素;若所述元素为段落元素,则确定所述元素是否支持重复属性;若所述元素支持重复属性,则依据所述图书数据的元数据信息,确定所述段落元素的个数;扩展所述段落元素,生成所确定个数的段落元素,并依次确定所生成的段落元素为目标元素。
为了扩展LML的表达能力,可以支持必要的属性扩展,如,在图书的正文部分,通常涉及多个段落,因此,段落paragraph元素可以支持重复repeat属性,可以记为<paragraphrepeat="true"></paragraph>,表示将paragraph元素对应一组数据,每个段落由同样的语法表示,顺序放置。
例如,<paragraph>今年天气反常,还没到六月呢,就热得天怒人怨。在太阳地上站一会儿,就被烤得脸皮都疼。</paragraph>
<paragraph>大中午,路边没什么阴凉地儿,李飞两道剑眉拧得死紧,大步跨进东山市公安局禁毒大队的办公楼,攥着手机的手背青筋暴起,正在给始终“号码无法接通”的搭档拨打第四次电话。</paragraph>
...
在本发明实施例中,当图书数据的元数据信息对应的是段落paragraph元素时,可以判断该paragraph元素是否支持重复属性,并在确定paragraph元素支持重复属性之后,依据图书数据的元数据信息,确定段落元素的个数,从而扩展段落元素,生成所确定个数的段落元素,并依次确定所生成的段落元素为目标元素。
在本发明的一种优选实施例中,所述读取所述图书排版文件中所述元素以及与所述元素关联记录的图书数据的步骤,可以包括如下子步骤:
若读取到所述图书排版文件中的元素为章节元素,则采用排版标记语言LML规范读取,所述章节元素中开放标签和闭合标签之间数据;其中,所述LML为满足所述预设语法标准的标记语言。
在本发明实施例中,若读取到图书排版文件中的元素为章节元素,由于章节chapter元素用于说明布局文件采用LML来描述,在读取到图书排版文件中的元素为章节chapter元素时,采用LML规范来读取章节元素中开放标签和闭合标签之间数据,其中,所述LML为满足所述预设语法标准的标记语言。
在本发明实施例的另一种优选实施例中,所述样式文件,还可以通过如下方式生成:
响应作用于预设用户界面的设置操作,确定所述布局文件中的元素的排版样式;采用所述布局文件中的元素的排版样式,生成样式文件。
预设用户界面可以是预先提供的用户界面,用户可以在预设用户界面上对布局文件中元素的样式进行设置。其中,设置操作可以包括选择操作,点击操作和拖动操作等。
在本发明实施例中,移动阅读器可以响应作用于预设用户界面的设置操作,生成样式文件。从而用户可以按照自己的喜好设置个性化的样式文件,提高用户的使用体验。
在本发明实施例的一种优选实施例中,还可以包括如下步骤:
响应作用于预设用户界面的分享操作,分享所述样式文件。
其中,分享操作可以包括点击操作,长按操作等。
具体的,在预设用户界面中,可以包括“分享”按钮,用户可以通过作用于“分享”按钮上的分享操作,实现对样式文件的分享。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图4,示出了本发明的一种图书排版装置实施例的结构框图,具体可以包括如下模块:
图书数据获取模块401,用于获取图书数据;其中,所述图书数据中携带元数据信息,且所述元数据信息为描述所述图书数据中数据的属性的结构化数据信息;
布局文件获取模块402,用于获取布局文件;其中,所述布局文件为按照预设语法标准生成的,且所述布局文件中包括与所述元数据信息相对应的元素,所述预设语法标准中包括有布局文件中的元素与图书数据中的元数据信息的对应关系;
图书排版文件生成模块403,用于基于所述元数据信息与所述元素的对应关系,将所述图书数据对应记录到所述布局文件中,生成图书排版文件。
在本发明的一种优选实施例中,所述装置还可以包括如下模块:
第一展示模块,用于读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,并展示所述图书数据;或者,
第二展示模块,用于获取与所述布局文件相对应的样式文件,其中,所述样式文件中包括所述布局文件中元素的排版样式,并读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,再依据所述布局文件中元素的排版样式,展示所述图书数据。
在本发明的一种优选实施例中,所述布局文件中还包括文件声明,其中,所述文件声明用于指示生成所述布局文件所适配的语法标准。
在本发明的一种优选实施例中,每一所述元素均包括用于标识该元素起始的开放标签和用于标识该元素结尾的闭合标签;
所述图书排版文件生成模块403可以包括如下子模块:
数据遍历子模块,用于遍历所述图书数据中元数据信息,针对每一所述元数据信息,依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素为目标元素,并在所述目标元素中的开放标签和闭合标签之间,记录所述图书数据中与该元数据信息相对应的数据;
图书排版文件确定子模块,用于确定遍历后得到的布局文件为图书排版文件。
在本发明的一种优选实施例中,所述数据遍历子模块可以包括如下单元:
元素确定单元,用于依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素;
属性确定单元,用于若所述元素为段落元素,则确定所述元素是否支持重复属性;
个数确定单元,用于若所述元素支持重复属性,则依据所述图书数据的元数据信息,确定所述段落元素的个数;
元素扩展单元,用于扩展所述段落元素,生成所确定个数的段落元素,并依次确定所生成的段落元素为目标元素。
在本发明的一种优选实施例中,所述第一展示模块或者第二展示模块可以包括如下单元:
文件读取单元,用于若读取到所述图书排版文件中的元素为章节元素,则采用排版标记语言LML规范读取,所述章节元素中开放标签和闭合标签之间数据;其中,所述LML为满足所述预设语法标准的标记语言。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种电子设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行上述指令时,得以实现本发明实施例所述的方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行上述指令时,得以实现本发明实施例所述的方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种图书排版方法和一种图书排版装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种图书排版方法,其特征在于,包括:
获取图书数据;其中,所述图书数据中携带元数据信息,且所述元数据信息为描述所述图书数据中数据的属性的结构化数据信息;
获取布局文件;其中,所述布局文件为按照预设语法标准生成的,且所述布局文件中包括与所述元数据信息相对应的元素,所述预设语法标准中包括有布局文件中的元素与图书数据中的元数据信息的对应关系;
基于所述元数据信息与所述元素的对应关系,将所述图书数据对应记录到所述布局文件中,生成图书排版文件。
2.根据权利要求1所述的方法,其特征在于,还包括:
读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,并展示所述图书数据;或者,
获取与所述布局文件相对应的样式文件,其中,所述样式文件中包括所述布局文件中元素的排版样式,并读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,再依据所述布局文件中元素的排版样式,展示所述图书数据。
3.根据权利要求1所述的方法,其特征在于,所述布局文件中还包括文件声明,其中,所述文件声明用于指示生成所述布局文件所适配的语法标准。
4.根据权利要求1所述的方法,其特征在于,每一所述元素均包括用于标识该元素起始的开放标签和用于标识该元素结尾的闭合标签;
所述基于所述元数据信息与所述元素的对应关系,将所述图书数据对应记录到所述布局文件中,生成图书排版文件的步骤,包括:
遍历所述图书数据中元数据信息,针对每一所述元数据信息,依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素为目标元素,并在所述目标元素中的开放标签和闭合标签之间,记录所述图书数据中与该元数据信息相对应的数据;
确定遍历后得到的布局文件为图书排版文件。
5.根据权利要求4所述的方法,其特征在于,所述依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素为目标元素的步骤,包括:
依据所述预设语法标准中的对应关系,确定该元数据信息对应的元素;
若所述元素为段落元素,则确定所述元素是否支持重复属性;
若所述元素支持重复属性,则依据所述图书数据的元数据信息,确定所述段落元素的个数;
扩展所述段落元素,生成所确定个数的段落元素,并依次确定所生成的段落元素为目标元素。
6.根据权利要求4所述的方法,其特征在于,所述读取所述图书排版文件中所述元素以及与所述元素关联记录的图书数据的步骤,包括:
若读取到所述图书排版文件中的元素为章节元素,则采用排版标记语言LML规范读取,所述章节元素中开放标签和闭合标签之间数据;其中,所述LML为满足所述预设语法标准的标记语言。
7.一种图书排版装置,其特征在于,包括:
图书数据获取模块,用于获取图书数据;其中,所述图书数据中携带元数据信息,且所述元数据信息为描述所述图书数据中数据的属性的结构化数据信息;
布局文件获取模块,用于获取布局文件;其中,所述布局文件为按照预设语法标准生成的,且所述布局文件中包括与所述元数据信息相对应的元素,所述预设语法标准中包括有布局文件中的元素与图书数据中的元数据信息的对应关系;
图书排版文件生成模块,用于基于所述元数据信息与所述元素的对应关系,将所述图书数据对应记录到所述布局文件中,生成图书排版文件。
8.根据权利要求7所述的装置,其特征在于,还包括:
第一展示模块,用于读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,并展示所述图书数据;或者,
第二展示模块,用于获取与所述布局文件相对应的样式文件,其中,所述样式文件中包括所述布局文件中元素的排版样式,并读取所述图书排版文件中所述元素以及与所述元素对应记录的图书数据,再依据所述布局文件中元素的排版样式,展示所述图书数据。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行所述指令时,得以实现如权利要求1-6所述的一个或多个的方法的步骤。
10.一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行所述指令时,得以实现如权利要求1-6所述的一个或多个的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910989802.2A CN110852052A (zh) | 2019-10-17 | 2019-10-17 | 一种图书排版方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910989802.2A CN110852052A (zh) | 2019-10-17 | 2019-10-17 | 一种图书排版方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110852052A true CN110852052A (zh) | 2020-02-28 |
Family
ID=69597666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910989802.2A Pending CN110852052A (zh) | 2019-10-17 | 2019-10-17 | 一种图书排版方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110852052A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872340A (zh) * | 2009-04-23 | 2010-10-27 | 北京大学 | 一种基于版面格式模板的排版方法及装置 |
CN104123269A (zh) * | 2014-07-16 | 2014-10-29 | 华中科技大学 | 一种基于模板的出版物半自动生成方法及系统 |
CN108984498A (zh) * | 2017-06-05 | 2018-12-11 | 北大方正集团有限公司 | 文档的排版处理方法及装置 |
-
2019
- 2019-10-17 CN CN201910989802.2A patent/CN110852052A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872340A (zh) * | 2009-04-23 | 2010-10-27 | 北京大学 | 一种基于版面格式模板的排版方法及装置 |
CN104123269A (zh) * | 2014-07-16 | 2014-10-29 | 华中科技大学 | 一种基于模板的出版物半自动生成方法及系统 |
CN108984498A (zh) * | 2017-06-05 | 2018-12-11 | 北大方正集团有限公司 | 文档的排版处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4344693B2 (ja) | ブラウザの文書編集のためのシステムおよびその方法 | |
KR101085283B1 (ko) | 정보 처리 시스템 및 방법, 및 기록 매체 | |
CN105446946B (zh) | 版式文档的重排方法、系统及电子阅读终端 | |
US20030120686A1 (en) | Extensible stylesheet designs using meta-tag and/or associated meta-tag information | |
CN104239284A (zh) | 一种图文自动排版的方法和装置 | |
US20110035660A1 (en) | System and method for the automated creation of a virtual publication | |
CN105760358B (zh) | 电子书版面重排和电子书展示的方法及其装置 | |
KR20060046002A (ko) | 시작 템플릿과 목표 템플릿 사이의 콘텐츠 맵핑을 위한방법 및 시스템 | |
KR20060049262A (ko) | 전자 문서에 문서 파트들을 생성, 삽입, 및 재사용하는방법, 시스템, 및 컴퓨터 판독가능 매체 | |
KR101147256B1 (ko) | 표준화된 전자책 생성장치 및 방법 | |
CN112433995B (zh) | 文件格式转换方法、系统、计算机设备及存储介质 | |
CN110852052A (zh) | 一种图书排版方法及装置 | |
TWI292104B (zh) | ||
JP2006065467A5 (zh) | ||
CN107066437B (zh) | 数字作品标注的方法及装置 | |
CN112100977A (zh) | 窗口局部刷新方法、电子设备及存储介质 | |
CN114625996A (zh) | 网页内容的分页方法、装置、电子设备及可读存储介质 | |
JP5707937B2 (ja) | 電子文書変換装置及び電子文書変換方法 | |
CN111027280A (zh) | 数字出版物的生成及渲染的方法和系统、可读存储介质 | |
JP2005115541A (ja) | 構造化文書表示処理装置、構造化文書表示処理方法、構造化文書表示処理プログラム | |
CN111143719A (zh) | 论文在线出版方法、装置、设备及计算机可读存储介质 | |
JP5589396B2 (ja) | レイアウト支援装置、レイアウト支援方法、プログラム | |
JP4783401B2 (ja) | 情報処理装置および方法、プログラム、並びに記録媒体 | |
JP2005056042A (ja) | 情報処理装置および方法、プログラム、並びに記録媒体 | |
JP2005056043A (ja) | 情報処理装置および方法、プログラム、並びに記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |