一种排版的方法和装置制造方法及图纸

技术编号:2915456 阅读:201 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种排版的方法和装置,以解决现有技术中在设置了首字下沉之后出现版面错乱的问题。实施例中对当前排版行所属段落的上一段落以及当前排版行进行判断,如果当前排版行所属段落的上一段落为首字下沉段落并且当前排版行是其所属段落首行,则判断所述首字下沉段落的下沉字符底部位置是否低于该段的末行字符底部位置,若是,则确定当前排版行的可排区域在高度方向的起始位置是与所述下沉字符底部的距离等于段间距的位置,若否,则确定所述起始位置是与所述首字下沉段落末行字符底部的距离等于段间距的位置;在所述可排区域内的高度方向上从所述起始位置开始编排所述当前排版行的字符。

【技术实现步骤摘要】

本专利技术涉及印刷排版
,特别地涉及一种排版的方法和装置
技术介绍
各种书籍报刊杂志中经常出现首字下沉效果,以达到突出段首、吸引读者的目的。首字下沉可用于汉字或拼音文字,首字下沉的段落第一行开始的前几个字字号放大并向下延伸数行,顶部与第一行其他文字对齐;段落中的其他文字从段首大字的后边空白排起,超过段首大字的下沉深度后,再恢复原行的宽度,如图1A中的文本框1a和图1B中的文本框1b所示。目前设置首字下沉的一种方法是,对首字下沉的段落设置下沉字符的大小,对于首字下沉的段落的下一段的首行,其排版位置在高度方向上是与首字下沉段落的末行相距一个段间距。这种方法能够达到图1A和图1B的方框1a和方框1b中的文本的效果,但也会出现如图1C中的方框1c中的文本内的情况,第二项字条出现在第一项字条的首字之后。这是由于首字下沉的段落中的文字较少,以至于该段落高度小于下沉字符的高度,这样,首字下沉的段落的首字与下一段的首行在高度上发生平齐,从而导致版面错位,影响了版面的视觉效果。
技术实现思路
本专利技术的主要目的是提供排版的方法和装置,以解决现有技术中出现首字下沉的段落的首字与下一段的首行在高度方向上发生平齐,从而导致版面错乱的不足之处。为解决上述问题,本专利技术提供如下技术方案:-->一种排版方法,应用于包含两个以上段落的排版区域,所述方法包括:对当前排版行所属段落的上一段落以及当前排版行进行判断,如果当前排版行所属段落的上一段落为首字下沉段落并且当前排版行是其所属段落首行,则:判断所述首字下沉段落的下沉字符底部位置是否低于该段的末行字符底部位置,若是,则确定当前排版行的可排区域在高度方向的起始位置是与所述下沉字符底部的距离等于段间距的位置,若否,则确定所述起始位置是与所述首字下沉段落末行字符底部的距离等于段间距的位置;在所述可排区域内的高度方向上从所述起始位置开始编排所述当前排版行的字符。一种排版装置,包括:第一判断模块,用于判断当前排版行所属段落的上一段落是否为首字下沉段落以及当前排版行是否为其所属段落的首行;第二判断模块,用于若当前排版行所属段落的上一段落为首字下沉段落并且当前排版行是其所属段落的首行,则判断所述首字下沉段落的下沉字符底部位置是否低于该段的末行字符底部位置;第一确定模块,用于若第二判断模块判断所述首字下沉段落的下沉字符底部位置低于该段的末行字符底部位置,则确定当前排版行的可排区域在高度方向的起始位置是与所述下沉字符底部的距离等于段间距的位置;第二确定模块,用于若第二判断模块判断所述首字下沉段落的下沉字符底部位置不低于该段的末行字符底部位置,则确定当前排版行的可排区域在高度方向的起始位置是与所述首字下沉段落末行字符底部的距离等于段间距的位置;编排模块,用于在所述可排区域内的高度方向上从所述起始位置开始编排-->所述当前排版行的字符。根据本专利技术实施例的技术方案,在首字下沉的段落的首行完成排版之后的继续排版过程中,对排版的当前排版行的起始位置加以控制,即首先确认当前排版行是否为其所属段落的首行,若是则进一步确认当前排版行的上一段落的结束位置,因为该结束位置有如下两种情况:下沉字符的底部和首字下沉段落的末行文字底部,所以相应于这两种情况,确认了当前排版行在高度方向上的两种排版起始位置。这样,对于首字下沉的段落,如果下沉字符的底部低于该段末行文字底部,则根据本专利技术实施例的技术方案,下一段落的首行与下沉字符的底部在高度方向上间隔一个段间距,由此避免了当前排版行在高度方向上与下沉字符发生平齐,使版面文字不至于产生错位,从而具有良好的视觉效果。附图说明图1A为现有技术中实现的对拼音文字的首字下沉效果;图1B为现有技术中实现的对汉字的首字下沉效果;图1C为现有技术中首字下沉的段落及其下一段落中出现的版面错位现象示意图;图2为本专利技术实施例的方法流程图;图3为本专利技术实施例的一种装置结构示意图;图4为本专利技术实施例的第二种装置结构示意图;图5为本专利技术实施例的第三种装置结构示意图。具体实施方式对于包含两个段落以上的版面,为了避免在排版时首字下沉的段落的首字与下一段的首行在高度方向上发生平齐,从而导致版面错乱,在本专利技术实施例中对于文字方向为从左至右的方向的版面,从文档的首段开始排版,该首段采用了首字下沉的文字效果。根据图2所示的流程图进行。-->步骤21:设置首字下沉的段落中的下沉字符个数和下沉字符的字体大小。这里的下沉字符个数可以是一个,也可以不止一个。设置下沉字符的字体大小时可以设置下沉字符的高度字号和宽度字号,也可以是指定下沉字符所占首字下沉的段落的行数,根据该行数进一步确定下沉字符的高度和宽度,此时,先由首字下沉的段落内的下沉字符原始高度、首字下沉的段落的行间距和下沉字符所占首字下沉的段落的行数得出下沉字符的高度和下沉字符缩放比例,再由该缩放比例和首字下沉的段落中的下沉字符原始宽度得出下沉字符的宽度。具体可以根据如下公式计算:H1=H0×N+H×(N-1),K=H1÷H0,W1=W0×K。其中H1和W1分别是下沉字符的高度和宽度,H0和W0分别是首字下沉的段落中的下沉字符原始高度和宽度,N是下沉字符所占首字下沉的段落的行数,H是首字下沉的段落的行间距,K是下沉字符缩放比例。在本步骤中还可以进一步设置下沉字符的其他属性例如字体、是否加粗等。步骤22:对首字下沉的段落的首行排版。在本步骤中根据步骤21中的设置对首字下沉的段落的首行排版,另外为了版面的整齐,在本步骤中还可以调整下沉字符的顶部与本行其他字符的顶部高度,使二者高度相等。对于首字下沉的段落中的首行之后的行,以及首字下沉的段落的下一段落,在排版时根据如下步骤进行,在以下步骤中,将正在排版的一行称作当前排版行,在完成一行的排版之后即启动下一行继续排版。步骤23:当启动当前排版行的排版之后,判断当前排版行是否为其所属段落的首行。若是则进入步骤24,否则进入步骤26。这里的判断可以利用排版的过程中排版工具例如排版软件对即将排版的行分配的索引号,如果排版工具从0开始按自然数对段内每行分配索引,则在本步骤中判断当前排版行的索引是否为0,即可得知当前排版行是否为其所属段落的首行。在本专利技术实施例中-->已知当前排版行所属段落的上一段落为首字下沉的段落。在一般情况下,对于当前排版行的排版,还需在本步骤中判断当前排版行的上一段落是否为首字下沉段落,如果是,则若当前行是其所属段落首行,进入步骤24;如果不是,则当前行的可排区域在高度方向上距离上一行为一个行间距或一个段间距。步骤24:确认首字下沉的段落的底部的高度。为了避免出现图1C中的方框1c中的文本内的情况,即首字下沉的下一段首行与下沉字符在高度上发生平齐,所以在本步骤中对首字下沉的段落的底部的高度进行确认。可以根据如下方法进行:在排版区域的高度方向上,如果首字下沉的段落的下沉字符底部位置低于该段的末行字符底部位置,则首字下沉的段落底部是该段的下沉字符的底部,否则首字下沉的段落底部是该段末行字符的底部。步骤25:从首字下沉的段落底部开始对当前排版行排版。此处的当前排版行即为步骤23中的当前排版行,同时也是步骤21和步骤22中的首字下沉的段落的下一段落。在当前排版行中可能也包含下沉字符,对其排版方法可以根据步骤21和22的方本文档来自技高网...

【技术保护点】
一种排版方法,应用于包含两个以上段落的排版区域,其特征在于,所述方法包括: 对当前排版行所属段落的上一段落以及当前排版行进行判断,如果当前排版行所属段落的上一段落为首字下沉段落并且当前排版行是其所属段落首行,则: 判断所述首字下 沉段落的下沉字符底部位置是否低于该段的末行字符底部位置, 若是,则确定当前排版行的可排区域在高度方向的起始位置是与所述下沉字符底部的距离等于段间距的位置, 若否,则确定所述起始位置是与所述首字下沉段落末行字符底部的距离等于段间距 的位置; 在所述可排区域内的高度方向上从所述起始位置开始编排所述当前排版行的字符。

【技术特征摘要】
1、一种排版方法,应用于包含两个以上段落的排版区域,其特征在于,所述方法包括:对当前排版行所属段落的上一段落以及当前排版行进行判断,如果当前排版行所属段落的上一段落为首字下沉段落并且当前排版行是其所属段落首行,则:判断所述首字下沉段落的下沉字符底部位置是否低于该段的末行字符底部位置,若是,则确定当前排版行的可排区域在高度方向的起始位置是与所述下沉字符底部的距离等于段间距的位置,若否,则确定所述起始位置是与所述首字下沉段落末行字符底部的距离等于段间距的位置;在所述可排区域内的高度方向上从所述起始位置开始编排所述当前排版行的字符。2、根据权利要求1所述的方法,其特征在于,还包括:根据设置的下沉字符的高度字号和宽度字号编排所述上一段落的下沉字符。3、根据权利要求1所述的方法,其特征在于,还包括:根据设置的行高倍数编排所述上一段落的下沉字符,该行高倍数是下沉字符排版高度与该段落的行高相比的倍数。4、根据权利要求3所述的方法,其特征在于,所述根据设置的行高倍数编排首字下沉段落的下沉字符包括:根据所述行高倍数确定下沉字符的排版高度和排版宽度;根据所述下沉字符排版高度和排版宽度确定所述首字下沉段落的排版位置。5、根据权利要求4所述的方法,其特征在于,所述根据所述行高倍数确定下沉字符的排版高度和排版宽度包括:根据首字下沉的段落内的下沉字符原始高度、首字下沉的段落的行间距和所述行高倍数得出下沉字符排版高度和下沉字符缩放比例;根据下沉字符缩放比例和下沉字符原始宽度得出下沉字符排版宽度。6、根据权利要求5所述的方法,其特征在于,所述得出下沉字符排版高度和下沉字符缩放比例包括根据如下公式计算:下沉字符排版高度=下沉字符原始高度×所述行高倍数+所述行间距×(所述行高倍数-1),下沉字符缩放比例=下沉字符排版高度÷下沉字符原始高度;所述根据下沉字符缩放比例和下沉字符原始宽度得出下沉字符排版宽度包括根据如下公式计算:下沉字符排版宽度=下沉字符原始宽度×下...

【专利技术属性】
技术研发人员:杨燕菲
申请(专利权)人:北大方正集团有限公司北京北大方正电子有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1