本發(fā)明屬于pdf解析,具體地說(shuō),是涉及一種解析pdf中段落對(duì)齊方法、裝置及介質(zhì)。
背景技術(shù):
1、在現(xiàn)代文檔處理中,pdf?和?docx?是兩種常見(jiàn)的文檔格式,pdf?通常用于保護(hù)文檔格式和布局的穩(wěn)定性,而?docx?格式則更靈活,適用于編輯和共享文檔。因此,將pdf?轉(zhuǎn)換為?docx?具有重要意義,為能夠方便地編輯和修改文檔內(nèi)容,同時(shí)保留原始的格式和排版風(fēng)格,從?pdf?提取文本并將其適應(yīng)到?docx?格式需要有效的文本識(shí)別和結(jié)構(gòu)化技術(shù),以確保文檔內(nèi)容的準(zhǔn)確性和連貫性,在轉(zhuǎn)換過(guò)程中,段落的對(duì)齊必須準(zhǔn)確,包括左對(duì)齊、右對(duì)齊、居中等,以確保文檔的可讀性和外觀,現(xiàn)有的段落對(duì)齊方案容錯(cuò)較低、對(duì)齊準(zhǔn)確性較差。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于提供一種解析pdf中段落對(duì)齊方法,以解決現(xiàn)有技術(shù)所存在的技術(shù)問(wèn)題。
2、為了實(shí)現(xiàn)上述目的,本發(fā)明采取的技術(shù)方案如下:
3、一種解析pdf中段落對(duì)齊方法,包括以下步驟:
4、步驟s1:利用apache的開(kāi)源框架pdfbox,對(duì)pdf文件進(jìn)行讀取;
5、步驟s2:從pdf文件中按頁(yè)提取文字信息,文字信息包括文字內(nèi)容、文字坐標(biāo)、文字大小、文字字體;
6、步驟s3:使用排序算法根據(jù)獲取到的文字坐標(biāo),對(duì)文字內(nèi)容進(jìn)行排序,得到排序后的文字內(nèi)容;
7、步驟s4:使用排版算法將排序后的文字內(nèi)容進(jìn)行轉(zhuǎn)換排版,確定段落、頁(yè)眉頁(yè)腳信息;
8、步驟s5:提取出確定好后的段落所對(duì)應(yīng)的內(nèi)容,并將段落內(nèi)容根據(jù)xy軸坐標(biāo)拆分成行級(jí)內(nèi)容;
9、步驟s6:對(duì)行級(jí)內(nèi)容進(jìn)行分析判斷,段落對(duì)齊情況:按照文字字體大小設(shè)置容錯(cuò)區(qū)間,并根據(jù)容錯(cuò)區(qū)間執(zhí)行下述判斷:
10、(61)如果每行起始x軸坐標(biāo)差距都在容錯(cuò)區(qū)間內(nèi),則判斷為段落內(nèi)容居左;(62)如果每行結(jié)束x軸坐標(biāo)差距都在容錯(cuò)區(qū)間內(nèi),則判斷為段落內(nèi)容居右;(63)如果每行起始x軸坐標(biāo)和結(jié)束x軸坐標(biāo),距離左右頁(yè)面寬度差距都在容錯(cuò)區(qū)間內(nèi),則判斷為段落內(nèi)容居中;
11、步驟s7:處理完所有段落內(nèi)容后,將分析判斷結(jié)果存放內(nèi)存對(duì)象,輸出至轉(zhuǎn)排文檔。
12、優(yōu)選的,所述步驟s3中,排序的方法如下:根據(jù)已獲取到的文字的x軸、y軸坐標(biāo),先根據(jù)y軸坐標(biāo)對(duì)文字內(nèi)容從小到大排序,若y軸坐標(biāo)一樣,則按照x軸對(duì)文字內(nèi)容從小到大排序,獲取一個(gè)從左往右、從上到下的有序列表,即得到排序后的文字內(nèi)容。
13、優(yōu)選的,所述步驟s4中,確定段落的方法如下:
14、基于排序后的文字內(nèi)容,根據(jù)y軸坐標(biāo)判斷是否是同行,將數(shù)據(jù)整合成同行的列表數(shù)據(jù),并按下述方法處理所有的列表數(shù)據(jù):(41)當(dāng)y1和y0以及x1min和x0min,x1max和x0max的絕對(duì)差值小于1,則確定為同段落;(42)當(dāng)y1和y0以及x1min和x0min的絕對(duì)差值小于1,但x1max大于x0max,則確定為同段落;(43)當(dāng)y1和y0,x1max和x0max絕對(duì)差值小于1且x0min小于x1min,則確定為同段落;其中,下一組數(shù)據(jù)坐標(biāo)為x1min(同一行最左邊),x1max(同一行最右邊),y1;上一組坐標(biāo)為x0min(同一行最左邊),x0max(同一行最右邊),y0。
15、優(yōu)選的,所述步驟s4中,確定頁(yè)眉頁(yè)腳的方法如下:獲取所有頁(yè)的第一條和最后一條數(shù)據(jù),如所有頁(yè)的第一條數(shù)據(jù)的內(nèi)容基本一致,則將該第一條數(shù)據(jù)判斷為頁(yè)眉,如所有頁(yè)的最后一條數(shù)據(jù)的內(nèi)容基本一致,則將該最后一條數(shù)據(jù)判斷為頁(yè)腳。
16、優(yōu)選的,所述的內(nèi)容基本一致是指文字內(nèi)容至少有80%相同。
17、步驟s5中,在根據(jù)xy軸坐標(biāo)拆分成行級(jí)內(nèi)容中,當(dāng)x軸坐標(biāo)值從左到右逐漸增大,y軸坐標(biāo)從上到下逐漸增大,當(dāng)x軸坐標(biāo)從大變小且y軸坐標(biāo)增大,則可以判斷為換行。
18、為了實(shí)現(xiàn)上述目的,本發(fā)明還提供了種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行,以實(shí)現(xiàn)所述的解析pdf中段落對(duì)齊方法。
19、為了實(shí)現(xiàn)上述目的,本發(fā)明還提供了一種解析pdf中段落對(duì)齊裝置,包括:處理器和存儲(chǔ)器;所述存儲(chǔ)器用于存儲(chǔ)計(jì)算機(jī)程序;所述處理器與所述存儲(chǔ)器相連,用于執(zhí)行所述存儲(chǔ)器存儲(chǔ)的計(jì)算機(jī)程序,以使得所述解析pdf中段落對(duì)齊裝置執(zhí)行所述的解析pdf中段落對(duì)齊方法。
20、與現(xiàn)有技術(shù)相比,本發(fā)明具備以下有益效果:
21、本發(fā)明利用apache的開(kāi)源框架pdfbox,對(duì)pdf文件進(jìn)行讀取,然后對(duì)文字進(jìn)行排序、轉(zhuǎn)換排版,確定好段落,標(biāo)題,頁(yè)眉頁(yè)腳等信息,基于段落內(nèi)容進(jìn)行行級(jí)拆分,并設(shè)置容錯(cuò)空間對(duì)行級(jí)內(nèi)容進(jìn)行分析判斷,由此確定段落對(duì)齊,從而能夠保持轉(zhuǎn)換后的文檔的準(zhǔn)確對(duì)齊,并具有高質(zhì)量、易編輯的特點(diǎn)。
1.一種解析pdf中段落對(duì)齊方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的解析pdf中段落對(duì)齊方法,其特征在于,所述步驟s3中,排序的方法如下:根據(jù)已獲取到的文字的x軸、y軸坐標(biāo),先根據(jù)y軸坐標(biāo)對(duì)文字內(nèi)容從小到大排序,若y軸坐標(biāo)一樣,則按照x軸對(duì)文字內(nèi)容從小到大排序,獲取一個(gè)從左往右、從上到下的有序列表,即得到排序后的文字內(nèi)容。
3.根據(jù)權(quán)利要求2所述的解析pdf中段落對(duì)齊方法,其特征在于,所述步驟s4中,確定段落的方法如下:
4.根據(jù)權(quán)利要求3所述的解析pdf中段落對(duì)齊方法,其特征在于,所述步驟s4中,確定頁(yè)眉頁(yè)腳的方法如下:獲取所有頁(yè)的第一條和最后一條數(shù)據(jù),如所有頁(yè)的第一條數(shù)據(jù)的內(nèi)容基本一致,則將該第一條數(shù)據(jù)判斷為頁(yè)眉,如所有頁(yè)的最后一條數(shù)據(jù)的內(nèi)容基本一致,則將該最后一條數(shù)據(jù)判斷為頁(yè)腳。
5.根據(jù)權(quán)利要求4所述的解析pdf中段落對(duì)齊方法,其特征在于,所述的內(nèi)容基本一致是指文字內(nèi)容至少有80%相同。
6.根據(jù)權(quán)利要求5所述的解析pdf中段落對(duì)齊方法,其特征在于,所述步驟s5中,在根據(jù)xy軸坐標(biāo)拆分成行級(jí)內(nèi)容中,當(dāng)x軸坐標(biāo)值從左到右逐漸增大,y軸坐標(biāo)從上到下逐漸增大,當(dāng)x軸坐標(biāo)從大變小且y軸坐標(biāo)增大,則可以判斷為換行。
7.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,所述計(jì)算機(jī)程序被處理器執(zhí)行,以實(shí)現(xiàn)如權(quán)利要求1~6中任一項(xiàng)所述的解析pdf中段落對(duì)齊方法。
8.一種解析pdf中段落對(duì)齊裝置,其特征在于,包括:處理器和存儲(chǔ)器;所述存儲(chǔ)器用于存儲(chǔ)計(jì)算機(jī)程序;所述處理器與所述存儲(chǔ)器相連,用于執(zhí)行所述存儲(chǔ)器存儲(chǔ)的計(jì)算機(jī)程序,以使得所述解析pdf中段落對(duì)齊裝置執(zhí)行如權(quán)利要求1~6中任一項(xiàng)所述的解析pdf中段落對(duì)齊方法。