CN110109838B - 一种办公文档排版式样的测试方法及装置 - Google Patents
一种办公文档排版式样的测试方法及装置 Download PDFInfo
- Publication number
- CN110109838B CN110109838B CN201910381064.3A CN201910381064A CN110109838B CN 110109838 B CN110109838 B CN 110109838B CN 201910381064 A CN201910381064 A CN 201910381064A CN 110109838 B CN110109838 B CN 110109838B
- Authority
- CN
- China
- Prior art keywords
- document
- layout
- pixel point
- image
- current
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/189—Automatic justification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Document Processing Apparatus (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开一种办公文档排版式样的测试方法及装置,该方法包括:根据被测第一文档中的排版式样信息,修改每个版面元素对应的颜色值,生成第二文档;将所述第一文档和第二文档分别通过被测办公软件打开,并分别转换为第一PDF文档和第二PDF文档;根据所述第一PDF文档和第二PDF文档的各自版面效果,获得对应的第一图像和第二图像;在所述第二图像中,根据排版式样信息,识别版面元素,得到元素集合;将所述第一图像和所述元素集合进行排版式样测量。该方法可通过自动化地识别版面元素类型,并对被测文档的排版式样进行精确的比对,从而提高文档排版式样的测试效率,降低人工成本。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种办公文档排版式样的测试方法及装置。
背景技术
目前存在多种流式文档格式,例如OOXML、ODF和UOF等。同时不同厂商基于特定的文档格式提供了办公软件用于文档的处理和编辑。虽然,文档格式的制定为文档的流通提供了良好的互操作基础,但是不同的办公软件在排版式样设定等方面存在差异,因此,不同的办公软件即便是支持相同的文档格式,也仍然会存在跑版的问题,甚至同一办公软件的不同版本在支持同一文档格式时也会存在跑版问题。为了提高办公软件对排版式样的兼容性,以及改善文档在办公软件平台中的互操作性,办公文档的排版式样测试工作变得尤为重要。
目前,测试工作都是依靠人工测试完成的。测试人员从文档的显现效果上对不同办公软件中文档的排版式样进行比对,但是一些版面元素的类型是很难通过人眼识别的,而且人工难以发现一些细小的排版差异。因此,人工测试的方式工作量巨大,人工成本高,而且测试效率低下。
发明内容
鉴于针对现有技术中人工测试文档的排版式样容易出现测量误差和版面元素类型识别错误等问题,本发明提供一种办公文档排版式样的测试方法,通过自动化地识别版面元素类型,并对被测文档的排版式样进行精确的比对,从而提高文档排版式样的测试效率,降低人工成本。
本发明提供一种办公文档排版式样的测试方法,包括:
根据被测第一文档中的排版式样信息,修改每个版面元素对应的颜色值,生成第二文档;
将所述第一文档和第二文档分别通过被测办公软件打开,并分别转换为第一PDF文档和第二PDF文档;
根据所述第一PDF文档和第二PDF文档的各自版面效果,获得对应的第一图像和第二图像;
在所述第二图像中,根据排版式样信息,识别版面元素,得到元素集合;
将所述第一图像和所述元素集合进行排版式样测量。
在一个实施例中,在所述第二图像中,根据排版式样信息,识别版面元素,得到元素集合,包括:
S41、从上至下依次获取所述第二图像中每行第一个非白像素点的RGB值,记为当前行颜色,并将行号及其对应的RGB值进行存储;其中,行号记为i,对应的R、G、B值分别记为Ri、Gi、Bi:
S42、分析存储的每个像素点的R、G、B值与其相邻像素点的R、G、B值的关系;记分析过程中记录的版面元素起始位置集合A={a1,a2,…,aq};版面元素结束位置集合B={b1,b2,…,bq};
S43、根据存储的元素起始位置集合A和元素结束位置集合B中每个位置的像素点的R、G、B值,确定当前位置像素点所属版面元素;依次取集合A中的an和集合B中的bn,确定版面元素en,得到元素集合E={e1,e2,…,en},并将集合A和集合B中对应的起止位置an和bn存储到对应的版面元素en中。
在一个实施例中,所述步骤S42包括:
S421、记当前像素点pm的位置为第i行,判断第1行至第i-1行之间是否存在非白色像素点,若不存在,则记像素点pm所对应的行号i为当前图像中第一个版面元素e1的起始位置a1,m=m+1;若存在,则进行步骤S422;
S422、判断m与集合P中的元素个数的关系:如果m小于P中的元素个数,则进行步骤S423;如果m大于等于P中的元素个数,则记步骤S421中像素点pm的行号i为其对应版面元素的结束位置bm;步骤S42结束,进行步骤S43;
S423、记当前像素点pm的位置为第i行,判断第i+1行至图像末行之间是否存在非白色像素点,若不存在,则记像素点pm所对应的行号i为当前图像中最后一个版面元素en的结束位置bq,步骤S42结束,进行步骤S43;若存在,则进行步骤S424。
S424、如果当前像素点pm的RGB值与像素点pm-1的RGB值不等,并且与像素点pm+1的RGB值相等,则当前像素点pm所对应的行号i记为对应版面元素的起始位置am,m=m+1,进行步骤S41;如果当前像素点pm的RGB值与像素点pm+1的RGB值不等,并且与像素点pm-1的RGB值相等,则当前像素点pm所对应的行号i记为对应版面元素的结束位置bm,m=m+1,进行步骤S41。
在一个实施例中,将所述第一图像和所述元素集合进行排版式样测量,包括:
根据第二图像中得到的版面元素起止位置,对第一图像中每个区域的段落、列表、表格,和文本框四种版面元素进行排版式样测试;所述排版式测试通过计算水平和垂直两个方向的投影值完成。
第二方面,本发明还提供了一种办公文档排版式样的测试装置,包括:
生成模块,用于根据被测第一文档中的排版式样信息,修改每个版面元素对应的颜色值,生成第二文档;
转换模块,用于将所述第一文档和第二文档分别通过被测办公软件打开,并分别转换为第一PDF文档和第二PDF文档;
获得模块,用于根据所述第一PDF文档和第二PDF文档的各自版面效果,获得对应的第一图像和第二图像;在所述第二图像中,根据排版式样信息,识别版面元素,获得元素集合;
测量模块,用于将所述第一图像和所述元素集合进行排版式样测量。
本发明实施例提供的上述技术方案的有益效果至少包括:
本发明实施例提供的一种办公文档排版式样的测试方法,通过自动化地识别版面元素类型,并对被测文档的排版式样进行精确的比对,从而提高文档排版式样的测试效率,降低人工成本。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明提供的办公文档排版式样的测试方法流程图。
图2为待进行颜色标记的文档D内容的示意图。
图3为对图2文档D的document.xml中对应的段落1描述示意图。
图4为对图2文档D的document.xml中对应的段落2描述示意图。
图5为对图2文档D的document.xml中对应的一级列表描述示意图。
图6为对图2文档D的document.xml中对应的表格描述示意图。
图7为对图2文档D的document.xml中对应的文本框描述示意图。
图8为对图2文档D版面元素对应颜色的标记pdf效果图。
图9为一个实施例待测文档图像示意图。
图10为字高和行距的定义的示意图。
图11为图9的测试结果图。
图12为本发明提供的办公文档排版式样的测试装置框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提出了一种办公文档排版式样自动化测试方法。本发明的文档排版式样自动化测试工作是基于图像实现的,为了最终能够从文档的图像中辨别出每个版面元素的类型,本发明通过对被测文档中的版面元素进行颜色标记,来完成版面元素类型识别这一工作。本发明主要包括版面元素区域划分和排版式样测试两部分内容。
参照图1所示,该方法包括:
S1、根据被测第一文档中的排版式样信息,修改每个版面元素对应的颜色值,生成第二文档;
S2、将所述第一文档和第二文档分别通过被测办公软件打开,并分别转换为第一PDF文档和第二PDF文档;
S3、根据所述第一PDF文档和第二PDF文档的各自版面效果,获得对应的第一图像和第二图像;
S4、在所述第二图像中,根据排版式样信息,识别版面元素,得到元素集合;
S5、将所述第一图像和所述元素集合进行排版式样测量。
本实施例中,为了便于描述,将记被测文档为D,即第一文档;其文档格式为F,使用的办公软件为S。
具体实施时,比如可包括如下5个步骤:
步骤1:解析文档格式F,查找被测文档D中的排版式样信息,修改每个版面元素对应的颜色值,使被测文档D中每个版面元素被标记为相应的颜色,生成文档D’,即:第二文档。其中,版面元素,比如是段落、表格、列表等。
步骤2:将文档D’在被测办公软件S中打开,转换为pdf,即:第二PDF文档,根据pdf的版面效果获得待测文档的图像I’,即:第二图像。
步骤3:在图像I’中,借助排版式样信息,特别是颜色,识别版面元素,得到元素集合为E={e1,e2,…,en}。
步骤4:将被测文档D在被测办公软件S中打开,转换为pdf,即:第一PDF文档,根据pdf的版面效果获得待测文档的图像I,即:第一图像。
步骤5:结合图像I和版面识别的结果E进行排版式样测量。
下面以OOXML格式的文档自动化测试为例,对本发明实施例的步骤1-步骤5进行详细的说明。
步骤1:解析文档格式F,查找被测文档D中的排版式样信息,修改每个版面元素(例如段落、表格等)对应的颜色值,使被测文档D中每个版面元素被标记为相应的颜色,生成文档D’。其中,版面元素,比如是段落、表格、列表等。
基于OOXML格式的所有后缀的.docx格式的文档都是一个压缩包,其中包含若干XML文件用来描述文档的排版式样和内容等信息。所以,主要通过修改被测文档的压缩文件中的document.xml文件内容,来完成被测文档的版面元素颜色标记。
具体步骤包括:
1)将后缀为.docx的待测文档D的后缀改为.zip。
2)解压.zip格式文件,并查找对应文件夹中的document.xml文件。
3)根据XML标签判断版面元素类型,依次将document.xml文件中的每个版面元素修改为相应的颜色值。其中,为了可以将两个连续的段落分开,可采用两种颜色交错的方式对段落进行颜色标记。比如版面元素及其对应的十六进制RGB值如表格1所示。
表格1版面元素及其对应的十六进制RGB值
比如以图2所示的文档为例,进行document.xml文件的颜色赋值说明。图3中代码是图2中第一个版面元素,段落,所对应的XML代码,其中标签<w:p>描述段落,因为其为当前XML文件中识别出的第一个段落(即:奇数段落),所以根据表格1将元素中的w:color属性值修改为"FF0000"。
图4中代码是图2中第二个版面元素,段落,所对应的XML代码,因为其为当前XML文件中识别出的第二个段落(即:偶数段落),所以根据表格1将元素中的w:color属性值修改为"00FF00"。
图5中代码是图2中第三个版面元素,列表,所对应的XML代码,根据图5中的XML文件标签<w:ilvl>可知当前版面元素是一个列表,又因为中val的值为0,可知当前列表级别为一级列表,所以根据表格1将元素中的w:color属性值修改为"FFFF00"。其它级别列表的修改方式同上,修改前先根据<w:ilvl>中的w:val属性值判断出对应的列表级别即可。
图6中代码是图2中版面元素,表格,所对应的XML代码。根据XML文件标签<w:tbl>可知当前版面元素类型为表格,<w:top>、<w:left>、<w:bottom>、<w:right>、<w:insideH>、<w:insideV>元素分别描述表格的上边框、左边框、下边框、有边框、内部水平边框和内部垂直边框。根据表格1上述几个元素中的w:color属性值修改为"0000FF"。
根据图7中的XML标签<wp:docPrid="1"name="文本框1"/>可知当前版面元素类型为文本框,所以根据表格1将元素中的a:srgbClr属性值修改为"000000"。
该步骤旨在确定出被测文档中每个版面元素的类型,解决人工测试可能出现版面元素类型识别错误的情况,如:以图片形式插入的表格。在人工测试中,可能会将当前图片判定为表格,但是从XML文件的标签入手,通过正确的颜色标记,可以判断出当前版面元素为图片。
4)将含有修改后document.xml与其他文件重新打包压缩为zip文档,然后将后缀改为.docx格式,记为文档D’,即完成对源文档D中版面元素颜色设定的步骤。
步骤2:将文档D’在被测办公软件S中打开,转换为pdf,根据pdf的版面效果获得待测文档的图像I’
为保持图像中的排版式样与原文档尽可能一致,首先将步骤1中生成的文档D’在被测办公软件Microsoft Office中打开,转换为pdf,根据pdf获得待测文档的图像I’,图像效果如图8所示。
步骤3:在图像I’中,借助排版式样信息特别是颜色识别版面元素,得到元素集合为E={e1,e2,…,en}
根据表格1中设定的每种版面元素对应的颜色值,识别图像I’中每行像素
点的颜色。具体过程如下:
1)从上至下依次获取图像中每行第一个非白像素点的RGB值,记为当前行颜色,并将行号及其对应的RGB值进行存储,其中,行号记为i,对应的R、G、B值分别记为Ri、Gi、Bi。
2)记步骤1)中存储的像素点集合为P={p1,p2,…,pm},分析步骤1)中存储的每个像素点的R、G、B值与其相邻像素点的R、G、B值的关系,记分析过程中记录的版面元素起始位置集合A={a1,a2,…,aq},版面元素结束位置集合B={b1,b2,…,bq}:
a)记当前像素点pm的位置为第i行,判断第1行至第i-1行之间是否存在非白色像素点,若不存在,则记像素点pm所对应的行号i为当前图像中第一个版面元素e1的起始位置a1,m=m+1;若存在,则进行步骤b)。
b)判断m与集合P中的元素个数的关系:如果m小于P中的元素个数,则进行步骤c);如果m大于等于P中的元素个数,则记步骤a)中像素点pm的行号i为其对应版面元素的结束位置bm,步骤2)结束,进行步骤3)。
c)记当前像素点pm的位置为第i行,判断第i+1行至图像末行之间是否存在非白色像素点,若不存在,则记像素点pm所对应的行号i为当前图像中最后一个版面元素en的结束位置bq,步骤2)结束,进行步骤3);若存在,则进行步骤d)。
d)如果当前像素点pm的RGB值与像素点pm-1的RGB值不等,并且与像素点pm+1的RGB值相等,则当前像素点pm所对应的行号i记为对应版面元素的起始位置am,m=m+1,进行步骤1);如果当前像素点pm的RGB值与像素点pm+1的RGB值不等,并且与像素点pm-1的RGB值相等,则当前像素点pm所对应的行号i记为对应版面元素的结束位置bm,m=m+1,进行步骤1)。
3)根据步骤2)中存储的元素起始位置集合A和元素结束位置集合B中每个位置的像素点的R、G、B值,确定当前位置像素点所属版面元素。依次取集合A中的an和集合B中的bn即可确定版面元素en,最终得到元素集合E={e1,e2,…,en},并将集合A和集合B中对应的起止位置an和bn存储到对应的版面元素en中。依据上述表1,对于集合A和集合B中像素点所属版面元素类型的判断过程如下:如果R=255,并且G=0,B=0,则当前像素点属于奇数段落;如果R=0,并且G=255,B=0,则当前像素点属于偶数段落;如果R=255,并且G=255,B=0,则当前像素点属于一级列表;如果R=255,并且G=0,B=255,则当前像素点属于二级列表;
如果R=0,并且G=255,B=255,则当前像素点属于三级列表;
如果R=128,并且G=128,B=0,则当前像素点属于四级列表;
如果R=128,并且G=0,B=128,则当前像素点属于五级列表;
如果R=0,并且G=0,B=255,则当前像素点属于表格;
如果R=0,并且G=0,B=0,则当前像素点属于文本框。
步骤4:将被测文档D在被测办公软件S中打开,转换为pdf,进而获得待测文档的图像I。
步骤5:根据步骤3中得到的版面元素起止位置,对图像I中每个区域的版面元素进行排版式样测试。为避免步骤2中生成的图像I’将原始图像I的文字颜色覆盖,所以在进行版面元素排版式样测试时不使用此图像。本步骤包括段落、列表、表格,和文本框四种版面元素的排版式样测量,主要通过计算水平和垂直两个方向的投影值完成。其中,第一部分主要说明段落排版式样的测量方法,列表与段落的测量方法相同;第二部分主要说明表格排版式样的测量方法;第三部分主要说明文本框排版式样的测量方法。
下面以图9为例,对步骤段落排版式样的测量进行具体说明。
段落排版式样的测量。具体过程如下:
1)根据步骤1至3的版面元素区域划分步骤,可以得到图中四个段落的起止位置分别为:[338,1041]、[1165,1349]、[1472,1915]、[2038,3001]。
2)对1)中四组位置内的像素点分别做水平方向的投影,其中,字高和行距的测量位置如图9所示。当前区域内最大的连续投影宽度即为当前段落字高;当前区域内的投影起始位置与下一投影起始位置的差值即为行距。
3)对1)中四组位置内首行文字的像素点分别做垂直方向的投影,投影的起始位置即为当前段落的首行缩进。
4)对1)中四组位置内的像素点分别做垂直方向的投影,投影的起始位置即为当前段落的左缩进,页面宽度与投影结束位置的差值即为当前段落的右缩进。
5)判断对齐方式。若当前段落的左缩进值小于右缩进值,且它们之间的差值大于0.5倍字高,即为左对齐;若当前段落的左缩进值大于右缩进值,且它们之间的差值大于0.5倍字高,即为右对齐;其它情况为居中对齐。
表格排版式样的测量。下面主要说明表格边框线宽度的测量步骤,表格内容的测量方法同段落排版式样的测量,具体过程如下:
1)计算表格中每条横向边框线的长度,及其起始位置。
2)计算表格中每条纵向边框线的长度,及其起始位置。
3)判断每条边框线的起始位置及长度是否相等。
如果横向边框线的起始横坐标相同、纵坐标差值为1,且长度相等,则当前边框线宽度加1;
如果纵向边框线的起始纵坐标相同、横坐标差值为1,且长度相等,则当前边框线宽度加1。
文本框排版式样的测量。下面主要说明文本框内边距的测量步骤,文本框内容及文本框边框宽度的测量方法同段落排版式样测量和表格排版式样测量。
1)测量文本框上边距。查找文本框内容第一行像素点的纵坐标,当前纵坐标与文本框上边框起始位置的纵坐标差值即为上边距。
2)测量文本框下边距。查找文本框内容最后一行像素点的纵坐标,当前纵坐标与文本框下边框结束位置的纵坐标差值即为下边距。
3)测量文本框左边距。查找文本框内容第一列像素点的横坐标,当前横坐标与文本框左边框起始位置的横坐标差值即为左边距。
4)测量文本框右边距。查找文本框内容最后一列像素点的横坐标,当前横坐标与文本框右边框结束位置的横坐标差值即为右边距。
基于同一发明构思,本发明实施例还提供了一种办公文档排版式样的测试装置,由于该装置所解决问题的原理与前述办公文档排版式样的测试方法相似,因此该装置的实施可以参见前述方法的实施,重复之处不再赘述。
本发明还提供一种办公文档排版式样的测试装置,参照图12所示,包括:
生成模块121,用于根据被测第一文档中的排版式样信息,修改每个版面元素对应的颜色值,生成第二文档;
转换模块122,用于将所述第一文档和第二文档分别通过被测办公软件打开,并分别转换为第一PDF文档和第二PDF文档;
获得模块123,用于根据所述第一PDF文档和第二PDF文档的各自版面效果,获得对应的第一图像和第二图像;在所述第二图像中,根据排版式样信息,识别版面元素,获得元素集合;
测量模块124,用于将所述第一图像和所述元素集合进行排版式样测量。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (3)
1.一种办公文档排版式样的测试方法,其特征在于,包括:
根据被测第一文档中的排版式样信息,修改每个版面元素对应的颜色值,生成第二文档;
将所述第一文档和第二文档分别通过被测办公软件打开,并分别转换为第一PDF文档和第二PDF文档;
根据所述第一PDF文档和第二PDF文档的各自版面效果,获得对应的第一图像和第二图像;
在所述第二图像中,根据排版式样信息,识别版面元素,得到元素集合;
将所述第一图像和所述元素集合进行排版式样测量;
其中,在所述第二图像中,根据排版式样信息,识别版面元素,得到元素集合,包括:
S41、从上至下依次获取所述第二图像中每行第一个非白像素点的RGB值,记为当前行颜色,并将行号及其对应的RGB值进行存储;其中,行号记为i,对应的R、G、B值分别记为Ri、Gi、Bi:
S42、分析存储的每个像素点的R、G、B值与其相邻像素点的R、G、B值的关系;记分析过程中记录的版面元素起始位置集合A={a1,a2,…,aq};版面元素结束位置集合B={b1,b2,…,bq};
S43、根据存储的元素起始位置集合A和元素结束位置集合B中每个位置的像素点的R、G、B值,确定当前位置像素点所属版面元素;依次取集合A中的an和集合B中的bn,确定版面元素en,得到元素集合E={e1,e2,…,en},并将集合A和集合B中对应的起止位置an和bn存储到对应的版面元素en中;
所述步骤S42包括:
S421、记当前像素点pm的位置为第i行,判断第1行至第i-1行之间是否存在非白色像素点,若不存在,则记像素点pm所对应的行号i为当前图像中第一个版面元素e1的起始位置a1,m=m+1;若存在,则进行步骤S422;
S422、判断m与集合P中的元素个数的关系:如果m小于P中的元素个数,则进行步骤S423;如果m大于等于P中的元素个数,则记步骤S421中像素点pm的行号i为其对应版面元素的结束位置bm;步骤S42结束,进行步骤S43;
S423、记当前像素点pm的位置为第i行,判断第i+1行至图像末行之间是否存在非白色像素点,若不存在,则记像素点pm所对应的行号i为当前图像中最后一个版面元素en的结束位置bq,步骤S42结束,进行步骤S43;若存在,则进行步骤S424;
S424、如果当前像素点pm的RGB值与像素点pm-1的RGB值不等,并且与像素点pm+1的RGB值相等,则当前像素点pm所对应的行号i记为对应版面元素的起始位置am,m=m+1,进行步骤S41;如果当前像素点pm的RGB值与像素点pm+1的RGB值不等,并且与像素点pm-1的RGB值相等,则当前像素点pm所对应的行号i记为对应版面元素的结束位置bm,m=m+1,进行步骤S41。
2.如权利要求1所述的一种办公文档排版式样的测试方法,其特征在于,将所述第一图像和所述元素集合进行排版式样测量,包括:
根据第二图像中得到的版面元素起止位置,对第一图像中每个区域的段落、列表、表格,和文本框四种版面元素进行排版式样测试;所述排版式测试通过计算水平和垂直两个方向的投影值完成。
3.一种办公文档排版式样的测试装置,其特征在于,包括:
生成模块,用于根据被测第一文档中的排版式样信息,修改每个版面元素对应的颜色值,生成第二文档;
转换模块,用于将所述第一文档和第二文档分别通过被测办公软件打开,并分别转换为第一PDF文档和第二PDF文档;
获得模块,用于根据所述第一PDF文档和第二PDF文档的各自版面效果,获得对应的第一图像和第二图像;在所述第二图像中,根据排版式样信息,识别版面元素,获得元素集合;
测量模块,用于将所述第一图像和所述元素集合进行排版式样测量;
其中,所述获得模块中,在所述第二图像中,根据排版式样信息,识别版面元素,得到元素集合,包括:
S41、从上至下依次获取所述第二图像中每行第一个非白像素点的RGB值,记为当前行颜色,并将行号及其对应的RGB值进行存储;其中,行号记为i,对应的R、G、B值分别记为Ri、Gi、Bi:
S42、分析存储的每个像素点的R、G、B值与其相邻像素点的R、G、B值的关系;记分析过程中记录的版面元素起始位置集合A={a1,a2,…,aq};版面元素结束位置集合B={b1,b2,…,bq};
S43、根据存储的元素起始位置集合A和元素结束位置集合B中每个位置的像素点的R、G、B值,确定当前位置像素点所属版面元素;依次取集合A中的an和集合B中的bn,确定版面元素en,得到元素集合E={e1,e2,…,en},并将集合A和集合B中对应的起止位置an和bn存储到对应的版面元素en中;
所述步骤S42包括:
S421、记当前像素点pm的位置为第i行,判断第1行至第i-1行之间是否存在非白色像素点,若不存在,则记像素点pm所对应的行号i为当前图像中第一个版面元素e1的起始位置a1,m=m+1;若存在,则进行步骤S422;
S422、判断m与集合P中的元素个数的关系:如果m小于P中的元素个数,则进行步骤S423;如果m大于等于P中的元素个数,则记步骤S421中像素点pm的行号i为其对应版面元素的结束位置bm;步骤S42结束,进行步骤S43;
S423、记当前像素点pm的位置为第i行,判断第i+1行至图像末行之间是否存在非白色像素点,若不存在,则记像素点pm所对应的行号i为当前图像中最后一个版面元素en的结束位置bq,步骤S42结束,进行步骤S43;若存在,则进行步骤S424;
S424、如果当前像素点pm的RGB值与像素点pm-1的RGB值不等,并且与像素点pm+1的RGB值相等,则当前像素点pm所对应的行号i记为对应版面元素的起始位置am,m=m+1,进行步骤S41;如果当前像素点pm的RGB值与像素点pm+1的RGB值不等,并且与像素点pm-1的RGB值相等,则当前像素点pm所对应的行号i记为对应版面元素的结束位置bm,m=m+1,进行步骤S41。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910381064.3A CN110109838B (zh) | 2019-05-08 | 2019-05-08 | 一种办公文档排版式样的测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910381064.3A CN110109838B (zh) | 2019-05-08 | 2019-05-08 | 一种办公文档排版式样的测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110109838A CN110109838A (zh) | 2019-08-09 |
CN110109838B true CN110109838B (zh) | 2023-03-21 |
Family
ID=67488885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910381064.3A Active CN110109838B (zh) | 2019-05-08 | 2019-05-08 | 一种办公文档排版式样的测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110109838B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113177392B (zh) * | 2021-05-28 | 2022-02-11 | 掌阅科技股份有限公司 | 校对界面中行段信息同步方法、计算设备及存储介质 |
CN114218896B (zh) * | 2021-11-22 | 2022-09-02 | 慧之安信息技术股份有限公司 | 对uof文档进行分块转换的方法 |
CN114218895B (zh) * | 2021-11-22 | 2022-08-19 | 慧之安信息技术股份有限公司 | 对uof文档进行转换的方法 |
CN116484827A (zh) * | 2023-04-21 | 2023-07-25 | 深圳市英唐数码科技有限公司 | 一种电子书阅读器的排版方法、系统和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5918238A (en) * | 1995-04-13 | 1999-06-29 | Fuji Xerox Co., Ltd. | Document processing apparatus which evaluates elements of a document and changes the color/format of elements that satisfy user-defined parameters |
CN101872340A (zh) * | 2009-04-23 | 2010-10-27 | 北京大学 | 一种基于版面格式模板的排版方法及装置 |
CN104239284A (zh) * | 2014-09-15 | 2014-12-24 | 广州市西美信息科技有限公司 | 一种图文自动排版的方法和装置 |
CN108415887A (zh) * | 2018-02-09 | 2018-08-17 | 武汉大学 | 一种pdf文件向ofd文件转化的方法 |
-
2019
- 2019-05-08 CN CN201910381064.3A patent/CN110109838B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5918238A (en) * | 1995-04-13 | 1999-06-29 | Fuji Xerox Co., Ltd. | Document processing apparatus which evaluates elements of a document and changes the color/format of elements that satisfy user-defined parameters |
CN101872340A (zh) * | 2009-04-23 | 2010-10-27 | 北京大学 | 一种基于版面格式模板的排版方法及装置 |
CN104239284A (zh) * | 2014-09-15 | 2014-12-24 | 广州市西美信息科技有限公司 | 一种图文自动排版的方法和装置 |
CN108415887A (zh) * | 2018-02-09 | 2018-08-17 | 武汉大学 | 一种pdf文件向ofd文件转化的方法 |
Non-Patent Citations (3)
Title |
---|
办公文档与固定版式文档格式关系探讨;李宁等;《电子学报》;20081215;全文 * |
文档编辑与排版系统的设计;侯霞等;《计算机工程与设计》;20120916(第09期);全文 * |
流式文档到固定版式文档的可逆转换方法研究;李宁等;《北京大学学报(自然科学版)》;20151231(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110109838A (zh) | 2019-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110109838B (zh) | 一种办公文档排版式样的测试方法及装置 | |
US20020076111A1 (en) | Method and apparatus for formatting OCR text | |
US9111396B2 (en) | Page proofreading method and apparatus | |
US7764923B2 (en) | Material processing apparatus and method for grading material | |
US20120102393A1 (en) | Document generating apparatus, document generating method, computer program and recording medium | |
CN101901338A (zh) | 一种试卷分数统计方法及系统 | |
TW200842734A (en) | Image processing program and image processing device | |
JP2014225932A (ja) | 文字の形状特徴を使用した文字比較による文書改変検知方法 | |
CN108563623A (zh) | 一种有痕阅卷的方法和系统 | |
DK2126720T3 (en) | PROCEDURE FOR CONNECTING AN AMENDED DOCUMENT AND ORIGINAL DOCUMENT FOR COMPARISON AND PREPARATION OF DIFFERENCES | |
CN105718438A (zh) | 一种通用答题卡的排版样式生成方法 | |
CN111008594B (zh) | 改错题评阅方法、相关设备及可读存储介质 | |
US20080018950A1 (en) | Image reading apparatus, image reading method, and image reading program | |
US20060290999A1 (en) | Image processing apparatus and network system | |
US20090116748A1 (en) | Inferential self-registration of imperfect omr forms | |
US20060194187A1 (en) | Material processing apparatus, material processing method, and program product | |
JP2008134791A (ja) | 画像処理装置及び画像処理プログラム | |
JP6010318B2 (ja) | 画像検査装置、画像検査方法、及びプログラム | |
US20020052892A1 (en) | Document format identification apparatus and method | |
US20230012409A1 (en) | System, control method of system, and storage medium | |
CN110941947A (zh) | 一种文档编辑的方法、装置、计算机存储介质及终端 | |
JP4894378B2 (ja) | 画像処理システムおよび画像処理プログラム | |
JP4807618B2 (ja) | 画像処理装置及び画像処理プログラム | |
KR20100088052A (ko) | 화상 처리 장치, 화상 처리 방법 및 기록 매체 | |
US8908998B2 (en) | Method for automated quality control |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |