CN101937569B - 一种文字排版方法及系统 - Google Patents
一种文字排版方法及系统 Download PDFInfo
- Publication number
- CN101937569B CN101937569B CN2009100867843A CN200910086784A CN101937569B CN 101937569 B CN101937569 B CN 101937569B CN 2009100867843 A CN2009100867843 A CN 2009100867843A CN 200910086784 A CN200910086784 A CN 200910086784A CN 101937569 B CN101937569 B CN 101937569B
- Authority
- CN
- China
- Prior art keywords
- layout region
- character
- laydown
- legible
- literal
- 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.)
- Expired - Fee Related
Links
Images
Abstract
本发明公开了一种文字排版方法及系统,属于排版技术领域。现有的排版方法当版面内存在非文字排版区域时,排版文字的效率较低。本发明所述方法首先按照文字的尺寸,将排版区域分割成M行N列的网格;然后确定排版区域内非文字排版区域;最后在可排入文字的排版区域按照文字流入方向对文字进行排版。本发明所述系统包括用于按照文字的尺寸将排版区域分割成M行N列的网格的排版区域分割模块,用于确定排版区域内非文字排版区域的非文字排版区域确定模块,以及用于在可排入文字的排版区域按照文字流入方向对文字进行排版的文字排版模块。采用本发明所述方法及系统可以提高版面内存在非文字排版区域时文字排版的效率。
Description
技术领域
本发明属于排版技术领域,具体涉及一种文字排版方法及系统,特别适用于版面内存在非文字排版区域时的文字排版。
背景技术
在文字排版过程中,常常会遇到版面内存在图形、图片、文字块等不能排入文字的区域,即非文字排版区域。在这种情况下,排版文字时需要避开上述非文字排版区域。现有技术中,通常的文字排版方法是在需要进行文字排版时才计算可以排版的区域以及各个文字在排版区域中的位置,排版的速度较慢。
中国专利申请(公开号:CN 101046798A、公开日期:2007年10月3日)公开了一种排版领域的图文绕排方法,该方法首先找出绕排部分(即非排版区域)的顶点,包括凸点和凹点,根据顶点将编辑区域划分成不同的区域块、在区域块内进行文字排版。由于该方法找出绕排部分顶点的步骤计算复杂,而且在重新排版的情况下,需要重新计算绕排部分的顶点,排版效率也不高。
发明内容
针对现有技术中存在的缺陷,本发明的目的是提供一种在版面内存在非文字排版区域的情况下高效的文字排版方法及系统。
为了实现上述目的,本发明采用的技术方案如下:
一种文字排版方法,包括以下步骤:
(1)按照文字的尺寸,将排版区域分割成M行N列的网格,排版区域内的文字尺寸相同,文字尺寸包括字高和字宽;
(2)确定排版区域内非文字排版区域;
(3)在可排入文字的排版区域按照文字流入方向对文字进行排版,一个网格排版一个文字。
如上所述的文字排版方法,步骤(1)中,所述排版区域是指版面内的整个排版区域,或者版面内的部分排版区域。
如上所述的文字排版方法,步骤(2)中,所述非文字排版区域是指任意形状的闭合区域。闭合区域边界内所包含的网格以及边界所经过的网格为非文字排版区域。按照行方向或者列方向确定排版区域内非文字排版区域。
如上所述的文字排版方法,步骤(3)中,当遇到非文字排版区域时,换行排版,或者跳过非文字排版区域继续排版。
一种文字排版系统,包括用于按照文字的尺寸将排版区域分割成M行N列的网格的排版区域分割模块(11);用于确定排版区域内非文字排版区域的非文字排版区域确定模块(12);以及用于在可排入文字的排版区域按照文字流入方向对文字进行排版的文字排版模块(13),排版区域内的文字尺寸相同,文字尺寸包括字高和字宽,一个网格排版一个文字。
本发明所述方法及系统,先确定非文字排版区域,再在可以排入文字的排版区域进行排版,能够快速地将文字排入排版区域,并能够使文字排版效果更加直观,而且判断非文字排版区域的方法简单,排版的效率较高。
附图说明
图1是具体实施方式中的排版系统结构图;
图2是具体实施方式中的排版方法流程图;
图3是实施例1中排版区域被分割成8行10列的网格示意图;
图4是实施例1中三角形的非文字排版区域示意图;
图5是实施例1中排版效果示意图;
图6是实施例2中排版效果示意图。
具体实施方式
下面结合具体实施方式和附图,对本发明进行详细描述。
如图1所示的文字排版系统,包括排版区域分割模块11、非文字排版区域确定模块12和文字排版模块13。
排版区域分割模块11用于按照待排版文字的尺寸将排版区域分割成M行N列的网格。其中,排版区域可以是版面内整个排版区域,也可以是版面内部分排版区域;M和N为正整数。排版区域内的文字尺寸相同,文字尺寸包括字高和字宽。
非文字排版区域确定模块12用于确定排版区域内不能够排入文字的区域。其中,非文字排版区域为版面内被障碍物覆盖的区域,该区域可以是任意形状的闭合区域,障碍物可以是图片、图形或文字块等。非文字排版区域包括上述闭合区域内所包含的网格以及边界所经过的网格。
文字排版模块13用于按照文字的流入方向将文字排入排版区域内能够排入文字的排版区域。其中,文字的流入方向可以为从左到右、从上到下,也可以为从右到左、从上倒下,以及其他的组合。
如图2所示的文字排版方法,包括以下步骤:
(1)排版区域分割模块11按照文字的尺寸,将排版区域分割成M行N列的网格。
(2)非文字排版区域确定模块12按照行方向或者列方向确定排版区域内的非文字排版区域。
按照行方向确定非文字排版区域,即是按照水平方向从左到右或从右到左依次扫描每列网格,确定每列网格中与非文字排版区域边界相交或者在非文字排版区域内的网格;按照列方向确定非文字排版区域,即是按照竖直方向从上到下或者从下到上依次扫描每行网格,确定每行网格中与非文字排版区域边界相交或者在非文字排版区域内的网格。
(3)按照文字流入方向,将文字排入能够排入文字的排版区域。
在可排入文字的排版区域内,一个网格排入一个文字。所述的文字应作广义的理解,它即可以指一个汉字,又可以指一个英文字母,还可以指标点符号或其他符号。例如,当待排版文字为汉字时,一个网格可以排入一个汉字;当待排版文字为英文时,一个网格可以排入一个英文字母;标点符号或 者其他符号相当于一个文字,即一个标点符号或其他符号可以占用一个网格;其他文字可采用与汉字和英文类似的排版方式。在排版过程中,当遇到非文字排版区域,即不能排入文字的网格时,换行排版或者跳过非文字排版区域继续排版。
实施例1
如图3所示,假设待排文字为5号字,首先由排版区域分割模块11按照5号字的字高和字宽将排版区域31分割成8行10列的网格,每个网格排入一个5号字。
如图4所示,非文字排版区域为三角形ABC所围成的区域,该区域内所包含的网格以及三角形ABC的边AB、AC、BC所经过的网格均为非文字排版区域。假设网格采用(a,b)形式表示,其中a表示行数、b表示列数,则按照列方向确定非文字排版区域如下:
三角形ABC所围成的区域包含的网格为(4,5)、(4,6),(5,5)、(5,6),(6,4)、(6,5)、(6,6)、(6,7);
AB边所经过的网格为(7,3),(6,3),(5,3)、(5,4),(4,4),(3,4)、(3,5),(2,5),(1,5);
BC边所经过的网格为(1,6),(2,6),(3,6)、(3,7),(4,7),(5,7)、(5,8),(6,8),(7,8);
CA边所经过的网格为(7,8)、(7,7)、(7,6)、(7,5)、(7,4)、(7,3)。
上述网格均为非文字排版区域,即图4中的灰色区域。
本实施例中,拟将待排版文字“这是一种对排版区域进行计算后再排版的方法”排入到图4所示的排版区域,文字的流入方向为从左到右、从上到下,一个网格内排入一个文字,当遇到非文字排版区域时换行排版。排版后的效果如图5所示。
实施例2
与实施例1不同的是:按照行方向确定非文字排版区域,文字的流入方向从右到左、从上到下,当遇到非文字排版区域时跳过后继续排版。
按照行方向确定非文字排版区域如下:
三角形ABC所围成的区域包含的网格为(6,4),(4,5)、(5,5)、(6、5),(4,6)、(5,6)、(6,6);
AB边所经过的网格为(5,3)、(6,3)、(7,3)、(3,4)、(4,4)、(5,4)、(1,5)、(2,5)、(3,5);
BC边所经过的网格为(1,6)、(2,6)、(3,6),(3,7)、(4,7)、(5,7),(5,8)、(6,8)、(7,8);
CA边所经过的网格为(7,8),(7,7),(7,6),(7,5),(7,4),(7,3)。
本实施例中,排版后的效果如图6所示。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (9)
1.一种文字排版方法,包括以下步骤:
(1)按照文字的尺寸,将排版区域分割成M行N列的网格,排版区域内的文字尺寸相同,文字尺寸包括字高和字宽;
(2)确定排版区域内非文字排版区域;
(3)在可排入文字的排版区域按照文字流入方向对文字进行排版,一个网格排版一个文字。
2.如权利要求1所述的一种文字排版方法,其特征在于:步骤(1)中所述排版区域是指版面内的整个排版区域,或者版面内的部分排版区域。
3.如权利要求1所述的一种文字排版方法,其特征在于:步骤(2)中所述非文字排版区域是指任意形状的闭合区域。
4.如权利要求3所述的一种文字排版方法,其特征在于:闭合区域边界内所包含的网格以及边界所经过的网格为非文字排版区域。
5.如权利要求1至4之一所述的一种文字排版方法,其特征在于:步骤(2)中,按照行方向确定排版区域内非文字排版区域。
6.如权利要求1至4之一所述的一种文字排版方法,其特征在于:步骤(2)中,按照列方向确定排版区域内非文字排版区域。
7.如权利要求1至4之一所述的一种文字排版方法,其特征在于:步骤(3)中,当遇到非文字排版区域时,换行排版。
8.如权利要求1至4之一所述的一种文字排版方法,其特征在于:步骤(3)中,当遇到非文字排版区域时,跳过非文字排版区域继续排版。
9.一种文字排版系统,包括用于按照文字的尺寸将排版区域分割成M行N列的网格的排版区域分割模块(11),用于确定排版区域内非文字排版区域的非文字排版区域确定模块(12),以及用于在可排入文字的排版区域按照文字流入方向对文字进行排版的文字排版模块(13),排版区域内的文字尺寸相同,文字尺寸包括字高和字宽,一个网格排版一个文字。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100867843A CN101937569B (zh) | 2009-06-30 | 2009-06-30 | 一种文字排版方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100867843A CN101937569B (zh) | 2009-06-30 | 2009-06-30 | 一种文字排版方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101937569A CN101937569A (zh) | 2011-01-05 |
CN101937569B true CN101937569B (zh) | 2012-07-18 |
Family
ID=43390883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100867843A Expired - Fee Related CN101937569B (zh) | 2009-06-30 | 2009-06-30 | 一种文字排版方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101937569B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106649245B (zh) * | 2015-10-30 | 2021-08-17 | 方正国际软件(北京)有限公司 | 一种页面布局方法及装置 |
CN106095744B (zh) * | 2016-05-27 | 2019-01-08 | 努比亚技术有限公司 | 不规则控件图标处理装置及方法 |
CN110362804A (zh) * | 2018-03-26 | 2019-10-22 | 阿里巴巴集团控股有限公司 | 文本簇的匹配方法、装置及电子设备 |
-
2009
- 2009-06-30 CN CN2009100867843A patent/CN101937569B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101937569A (zh) | 2011-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102147790B (zh) | 文本排版方法及排版引擎 | |
CN101937569B (zh) | 一种文字排版方法及系统 | |
DE60136478D1 (de) | Chstaben. | |
EP2203935A4 (en) | FILLING CELLS FOR DESIGN OPTIMIZATION IN A PLACEMENT AND ROUTING SYSTEM | |
CN102508826B (zh) | 一种文档中的表格显示方法及装置 | |
JP2007273762A (ja) | 半導体集積回路のユニットセルおよびユニットセルを使用した配線方法および配線プログラム | |
CN104951741A (zh) | 一种文字识别方法及装置 | |
CN103678267A (zh) | 一种图文混合内容的排版和渲染方法及系统 | |
CN101452445B (zh) | 一种段落内文字对齐的排版方法及装置 | |
EP3686760A1 (en) | Convolution operation method and apparatus, computer device, and computer-readable storage medium | |
CN102541411A (zh) | 一种输入法界面的调整方法及系统 | |
CN101286146B (zh) | 一种排版方法和系统 | |
CN104318538A (zh) | 一种二维序列帧图片拼接成大图片的方法及其所用的装置 | |
CN1558340A (zh) | 一种排版方法 | |
CN101183358A (zh) | 一种排版方法及装置 | |
CN101021841B (zh) | 一种维文排版中自动添加连音符控制行格式撑满的方法 | |
CN100424683C (zh) | 一种单调区域的文字排版方法 | |
US10410356B2 (en) | Method for processing the LEF diagram of a layout | |
CN1920811B (zh) | 一种文字排版的方法 | |
CN109871517B (zh) | 文字块排序方法、装置、存储介质及电子设备 | |
CN102479215A (zh) | 文件自动导出的方法及电子阅读装置 | |
CN114492292A (zh) | 配置芯片的方法及装置、设备、存储介质 | |
CN104572608A (zh) | 竖排蒙文文字的方法和装置 | |
CN104717548A (zh) | 一种机顶盒点阵字幕字体处理方法及处理系统 | |
CN102033855A (zh) | 多种字体相同码值的文字排版方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120718 Termination date: 20140630 |
|
EXPY | Termination of patent right or utility model |