一种少数民族文排版过程中格式拉压处理的方法及装置的制作方法

文档序号:6464496阅读:179来源:国知局
专利名称:一种少数民族文排版过程中格式拉压处理的方法及装置的制作方法
技术领域
本发明属于印刷排版技术领域,特别涉及一种少数民族文排版过程中格式 拉压处理的方法及装置。
背景技术
少数民族文(也称民族文,如蒙文、维文)排版具有一定的特殊性,组成 单词的字符间可能存在连接关系,如果相互连接的两个字符间出现空隙,会被 认为是语义错误。另外,为了保证民族文排版效果的美观,民族文字符与符号 等其他字符间的间距也不应该任意拉压。
民族文排版一^:要求行格式撑满,而目前现有的排版软件,处理行格式撑 满时, 一般采取均值法平均拉伸字符间的距离,或者平均增加空格的宽度,以 达到行格式撑满的目的。
现有技术中的这种方法应用到民族文排版中,存在可能会导致语义错误的 问题。

发明内容
本发明实施例提供了 一种少数民族文排版过程中格式拉压处理的方法及 装置,用以解决现有技术中在民族文排版中出现语义错误的问题。
本发明实施例提供的一种少数民族文排版过程中格式拉压处理的方法,包

根据当前行或列中相邻字符的类型确定可拉压位置; 对可拉压位置字符间距进行拉压处理。
进一步,确定可拉压位置字符间距的可拉压最大距离M;根据可拉压位置字符间距的可拉压最大距离M确定该位置字符间距拉压 处理时的拉压距离,并进行拉压处理,所述拉压处理时的拉压距离不大于所述 最大距离M。
进一步,根据可拉压位置字符间距的可拉压最大距离M确定该位置字符 间距拉压处理时的拉压距离,并进行拉压处理具体为
确定当前行或列需拉压的距离和可拉压位置的数量,并计算平均拉压距离
S;
比较所述M和所述S的大小;
根据比较结果确定可拉压位置字符间距的拉压距离,并进行拉压处理。 进一步,根据比较结果确定可拉压位置字符间距的拉压距离,并进行拉压 处理具体为
在MSS的可拉压位置字符间距拉压距离M。
进一步,根据比较结果确定可拉压位置字符间距的拉压距离,并进行拉压 处理具体为
在M〉 S的可拉压位置字符间距拉压距离S;
对所有可拉压位置字符间距拉压处理后,若可继续拉压,则在所有M〉S 的可拉压位置处平均拉压字符间距,否则结束当前行或列的拉压处理。
进一步,根据当前行或列中相邻字符的类型确定可拉压位置及其字符间距 可拉压最大距离M具体为
根据当前行或列中相邻字符的类型,查找拉压属性矩阵中的定义,确定可 拉压位置及其字符间距可拉压最大距离M。
进一步,将可拉压位置记录在链表中确定相邻字符间可拉压位置的数量N。
同时本发明实施例还提供一种少数民族文排版过程中格式拉压处理的装 置,包括
确定模块用于根据当前行或列中相邻字符的类型确定可拉压位置;拉压模块用于对可拉压位置字符间距进行拉压处理。 进一步,确定模块还包括
最大距离确定模块用于根据当前行或列中相邻字符的类型确定可拉压位 置及其字符间距可拉压最大距离M; 拉压模块还包括
拉压处理模块用于根据可拉压位置字符间距的可拉压最大距离M确定 该位置字符间距拉压处理时的拉压距离,并进行拉压处理,所述拉压处理时的 拉压距离不大于所述最大距离M。
进一步,所述拉压处理模块包括
计算模块用于确定当前行或列需拉压的距离和可拉压位置的数量,并计 算平均拉压距离S;
比较模块用于比较所述M和所述S的大小;
拉压处理子模块用于根据比较结果确定可拉压位置字符间距的拉压距 离,并进行拉压处理。
进一步,拉压处理子模块包括
第一拉压处理子模块用于在M^S的可拉压位置字符间距拉压距离M。 进一步,拉压处理子模块还包括
第二拉压处理第一子模块用于在M> S的可拉压位置字符间距拉压距离
第二拉压处理第二子模块用于对所有可拉压位置字符间距拉压处理后, 若可继续拉压,则在所有M> S的可拉压位置处平均拉压字符间距,否则结束 当前行或列的拉压处理。
进一步,最大距离确定模块包括
最大距离确定子模块用于根据当前行或列中相邻字符的类型,查找拉压 属性矩阵中的定义,确定可拉压位置及其字符间距可拉压最大距离M。 进一步,计算模块包括计算子模块用于将可拉压位置记录在链表中确定相邻字符间可拉压位置 的数量N。
有益效果由上述本发明提供的具体实施方案可以看出,正是由于拉压处 理时根据相邻字符的类型判断了字符间是否可拉压,并在拉压处理时对可拉压 位置字符间距进行拉压处理,从而保证了民族文排版的正确性。


图1为单行待排版民族文示意图; 图2为本发明提供的第一实施例方法流程图; 图3为本发明提供的第二实施例方法流程图; 图4为本发明提供的第三实施例方法流程图; 图5为本发明提供的第四实施例装置结构图。
具体实施例方式
结合本发明实施例和附图对进行详细说明,如图1所示,假设处理第一行, 第一行中包括8个字符分别是字符101、字符102、字符103、字符104、字符 105、字符106、字符107和字符108,各字符间的位置为位置201至207。 本发明中所指字符的类型为数字、标点或文字等,其中字符101、字符102、 字符105、字符106的类型为^t字,字符104的类型为标点,字符103、字符 107、字符108的类型为文字。
本发明提供的第 一 实施例是一种民族文排版过程中格式拉压处理的方法, 方法流程如图2所示,包括
步骤301:相邻字符101和字符102之间为位置201,根据字符101和字 符102的类型确定位置201字符间距(为了便于描述后面均采用类似"位置201 可拉压"的描述)可拉压,且可拉压的最大距离M为1/8空(即1/8空格的宽 度),同样根据相邻字符类型得到202至206可拉压,且可拉压的最大距离没有限制,根据相邻的字符107和字符108的类型,得到字符107和字符108之 间位置207不可拉压。
步骤302:才艮据位置201可拉压的最大距离为1/8空,确定对位置201字 符间距(为了便于描述后面均采用类似"对位置201进行拉压处理"的描述) 进行拉压处理时的拉压距离,该拉压距离应不大于1/8空,如位置201拉压1/8 空或1/9空;
根据位置202可拉压的最大距离没有限制,确定对位置202进行拉压处理 时的拉压距离,因为位置202可拉压的最大距离没有限制,可以根据版面的实 际情况进行拉压处理,如拉压1/2空或1/3空,位置203至206类同。
根据位置207处不可拉压,在位置207处不进行拉压处理。
因为根据相邻的字符的类型,在不可拉压位置207处不进行拉压处理,其 它可拉压位置进行拉压处理,从而保证了民族文排版的正确性。进一步在位置 201拉压1/8空不大于该位置可拉压的最大距离1/8空,位置202至206拉压 1/2空也不大于该位置的可拉压的最大距离,从而保证了民族文排版的美观性。
进一步为了保证民族文排版效果美观,本发明提供的第二实施例是一种民 族文排版过程中格式拉压处理的方法,方法流程如图3所示,包括
步骤401:确定要达到行格式撑满需要拉伸的距离为1空,对于列排版处 理相同。
步骤402:根据相邻字符的类型得到共有6个可拉压的位置201至206, 则每个位置需要拉伸的平均距离为1/6空,位置201可拉压的最大距离为1/8 空,位置202至206可拉压的最大距离没有限制。
步骤403:当处理到位置201时,将位置201存在于可拉压链表T中。 步骤404:根据步骤401、402可知,因为每个位置需要拉伸的平均距离(1/6 空)> 位置201可拉压的最大距离(1/8空),在位置201处最大只能拉伸1/8空, 由于位置201已经拉伸了它的最大距离,将位置201从链表T中删除,位置 201拉伸l/8空后,剩余需要的拉伸的距离为(1-1/8)空。
9步骤405:依次向后处理每一个可拉压位置202至206,并在位置202至 206处拉伸距离1/6。当处理完后,此时剩余需要的拉伸的距离为(l/6-l/8)空。
步骤406:由于还有剩余需要的拉伸的距离,再一次循环处理本行的可拉 压位置,此时本行还有5个可拉压位置,分别为位置202至206。本次循环需 要拉伸的平均距离为(1/6-1/8)/5空。由于位置202至206的拉压属性没有限制, 因此每个位置处都可拉伸距离(1/6+(1/6-1/8)/5 )空,从而最终达到了行格式撑 满的效果。
在本实施例中若要达到行格式撑满需要拉伸的距离为1/2空,其它条件不 变,则每个位置需要拉伸的平均距离为1/12空,小于位置201可拉压的最大距 离1/8空,也小于位置202-206可拉压的最大距离,位置202-206每个位置都 拉伸1/12空。
本发明提供的第三实施例是一种民族文排版过程中格式拉压处理的方法, 方法流程如图4所示,包括
步骤501:计算当前行需要拉压的距离L,如果距离L大于0,则转入步 骤502,否则转入步骤511。
步骤502:计算当前行中允许拉压的位置的数量N,并将每个可拉压的位 置与该位置可拉压的最大距离M记录在链表T当中,转入步骤503。
步骤503:如果N大于或等于l,则转入步骤504,否则转入步骤511。
在本步骤中,第一次计算当前行中允许拉压的位置的数量N的方法是对 于当前行中的每两个相邻的字符,根据它们的字符类型,查找拉压属性矩阵中 的定义,如果该位置允许拉压,则将该位置与该位置允许拉压的最大距离记录 进链表T中,链表T中记录的可拉压位置数量N加1,根据链表T,确定当前 行中允许拉压的位置的数量。
步骤504:确定当前行需要拉压的距离和当前行中允许拉压的位置的数量, 并计算每个可拉压位置需要拉压的平均距离s,转入步骤505。
步骤505:本次拉压处理链表T第i个可拉压位置,i为正整数,i初值为1,转入步骤506。
步骤506:如果该位置可拉压的最大距离M大于需要拉压的平均距离S, 则转入步骤507,否则转入步骤508。
步骤507:在该位置处拉压距离S,经此次拉压后需要拉压的距离变为L-S, 转入步骤509。
步骤508:在该位置处拉压距离M,经此次拉压后需要拉压的距离变为 L-M,记录进链表T中记录的可拉压位置数量N减1,并将该位置从链表T中 除去,转入步骤509。
步骤509:如果L大于O,转入步骤510,否则转入步骤511。
步骤510:如果i超出链表T范围,则转入步骤504,否则转入步骤505 处理链表T第i+l个可拉压位置。
步骤511:处理结束。
本发明提供的第四实施例是一种民族文排版过程中格式拉压处理的装置, 其结构如图5所示,包括
确定模块61:用于根据当前行或列中相邻字符的类型确定可拉压位置; 拉压模块62:用于对可拉压位置字符间距进行拉压处理。 进一步,确定模块61还包括
最大距离确定模块601:用于根据当前行或列中相邻字符的类型确定可拉 压位置及其字符间距可拉压最大距离M; 拉压模块62还包括
拉压处理模块602:用于根据可拉压位置字符间距的可拉压最大距离M确 定该位置字符间距拉压处理时的拉压距离,并进行拉压处理,所述拉压处理时 的拉压距离不大于所述最大距离M。
进一步,拉压处理^t块602包括
计算模块6021:用于确定当前行或列需拉压的距离和可拉压位置的数量, 并计算平均拉压距离S;比较模块6022:用于比较所述M和所述S的大小;
拉压处理子模块6023:用于根据比较结果确定可拉压位置字符间距的拉压 距离,并进行拉压处理。
进一步,拉压处理子模块6023包括
第一拉压处理子模块60231:用于在M^S的可拉压位置字符间距拉压距离 M。
进一步,拉压处理子模块6023还包括
第二拉压处理第一子模块60232:用于在M> S的可拉压位置字符间距拉 压距离S;
第二拉压处理第二子模块60233:用于对所有可拉压位置拉压处理后,若 可继续拉压,则在所有M〉S的可拉压位置处平均拉压字符间距,否则结束当 前行或列的拉压处理。
进一步,最大距离确定模块601包括
最大距离确定子模块6011:用于根据当前行或列中相邻字符的类型,查找 拉压属性矩阵中的定义,确定可拉压位置及其字符间距可拉压最大距离M。 进一步,计算模块6021包括
计算子模块60211:用于将可拉压位置记录在链表中确定相邻字符间可拉 压位置的数量N。
明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1、一种少数民族文排版过程中格式拉压处理的方法,其特征在于,包括根据当前行或列中相邻字符的类型确定可拉压位置;对可拉压位置字符间距进行拉压处理。
2、 如权利要求1所述的方法,其特征在于,确定可拉压位置字符间距的 可拉压最大距离M;根据可拉压位置字符间距的可拉压最大距离M确定该位置字符间距拉压 处理时的拉压距离,并进行拉压处理,所述拉压处理时的拉压距离不大于所述 最大距离M。
3、 如权利要求2所述的方法,其特征在于,根据可拉压位置字符间距的 可拉压最大距离M确定该位置字符间距拉压处理时的拉压距离,并进行拉压 处理具体为确定当前行或列需拉压的距离和可拉压位置的数量,并计算平均拉压距离S;比较所述M和所述S的大小;根据比较结果确定可拉压位置字符间距的拉压距离,并进行拉压处理。
4、 如权利要求3所述的方法,其特征在于,根据比较结果确定可拉压位 置字符间距的拉压距离,并进行拉压处理具体为在M^S的可拉压位置字符间距拉压距离M。
5、 如权利要求4所述的方法,其特征在于,根据比较结果确定可拉压位 置字符间距的拉压距离,并进行拉压处理具体为在M> S的可拉压位置字符间距拉压距离S;对所有可拉压位置字符间距拉压处理后,若可继续拉压,则在所有M〉S 的可拉压位置处平均拉压字符间距,否则结束当前行或列的拉压处理。
6、 如 利要求2所述的方法,其特征在于,根据当前行或列中相邻字符的类型确定可拉压位置及其字符间距可拉压最大距离M具体为根据当前行或列中相邻字符的类型,查找拉压属性矩阵中的定义,确定可 拉压位置及其字符间距可拉压最大距离M。
7、 如权利要求3所述的方法,其特征在于,将可拉压位置记录在链表中 确定相邻字符间可拉压位置的数量N。
8、 一种少数民族文排版过程中格式拉压处理的装置,其特征在于,包括 确定模块用于根据当前行或列中相邻字符的类型确定可拉压位置; 拉压模块用于对可拉压位置字符间距进行拉压处理。
9、 如权利要求8所述的装置,其特征在于 确定模块还包括最大距离确定模块用于根据当前行或列中相邻字符的类型确定可拉压位 置及其字符间距可拉压最大距离M; 拉压模块还包括拉压处理模块用于根据可拉压位置字符间距的可拉压最大距离M确定 该位置字符间距拉压处理时的拉压距离,并进行拉压处理,所述拉压处理时的 拉压距离不大于所述最大距离M。
10、 如权利要求9所述的装置,其特征在于,所述拉压处理模块包括 计算模块用于确定当前行或列需拉压的距离和可拉压位置的数量,并计算平均拉压距离S;比较模块用于比较所述M和所述S的大小;拉压处理子模块用于根据比较结杲确定可拉压位置字符间距的拉压距 离,并进行拉压处理。
11、 如权利要求10所述的装置,其特征在于,拉压处理子模块包括 第一拉压处理子模块用于在]V^S的可拉压位置字符间距拉压距离M。
12、 如权利要求ll所述的装置,其特征在于,拉压处理子模块还包括 第二拉压处理第一子模块用于在M> S的可拉压位置字符间距拉压距离第二拉压处理第二子模块用于对所有可拉压位置字符间距拉压处理后, 若可继续拉压,则在所有M〉S的可拉压位置处平均拉压字符间距,否则结束 当前行或列的拉压处理。
13、 如权利要求9所述的装置,其特征在于,最大距离确定模块包括 最大距离确定子模块用于根据当前行或列中相邻字符的类型,查找拉压属性矩阵中的定义,确定可拉压位置及其字符间距可拉压最大距离M。
14、 如权利要求IO所述的装置,其特征在于,计算模块包括 计算子模块用于将可拉压位置记录在链表中确定相邻字符间可拉压位置的数量N。
全文摘要
本发明公开了一种少数民族文排版过程中格式拉压处理的方法及装置,为了避免在民族文排版中出现语义错误,本发明公开的方法包括根据当前行或列中相邻字符的类型确定可拉压位置;对可拉压位置字符间距进行拉压处理,正是由于根据相邻字符的类型判断了字符间是否可拉压,并在拉压处理时对可拉压位置进行拉压处理,从而保证了民族文排版的正确性。
文档编号G06F17/25GK101620594SQ20081011607
公开日2010年1月6日 申请日期2008年7月2日 优先权日2008年7月2日
发明者李彦娜, 翔 高 申请人:北大方正集团有限公司;北京北大方正电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1