專利名稱::一種轉(zhuǎn)換表格描述方式的方法及裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及印刷排版
技術(shù)領(lǐng)域:
,尤其涉及一種轉(zhuǎn)換表格描述方式的方法及裝置。
背景技術(shù):
:目前,在印刷排版時,各種排版軟件對表格的描述格式是不同的,通常有平鋪和嵌套兩大類表格描述格式。平鋪式描迷格式主要通過記錄表格基礎(chǔ)網(wǎng)格的橫向和縱向合并數(shù)據(jù),以及基礎(chǔ)網(wǎng)格的行高,列寬等數(shù)據(jù)來描述整個表格的結(jié)構(gòu);嵌套式描述格式則通過把表格劃分為表行,表欄后,進行嵌套形式來描述表格的結(jié)構(gòu)。目前,有些公司的排版軟件對于表格的描述屬于平鋪式描述才各式,有些公司的排版軟件對于表格的描述則屬于嵌套式描述格式。在排版
技術(shù)領(lǐng)域:
,若排版軟件只能識別嵌套式描述格式的表格,則利用該排版軟件不能對文件中平鋪式描迷格式的表格進行排版打印,需更換其他的排版軟件來對該文件中表格進行排版打印。因此,排版軟件對于其他圖文編輯軟件的文件兼容是一項重要的工作,而在文件格式的兼容過程中,對表格描述格式的轉(zhuǎn)換一直是一個技術(shù)難題,現(xiàn)有的排版軟件很難將表格從平鋪式描述格式轉(zhuǎn)換為嵌套式描述格式。
發(fā)明內(nèi)容有鑒于此,本發(fā)明實施例提供一種轉(zhuǎn)換表格描述格式的方法,用以實現(xiàn)將表格從平鋪式描述格式轉(zhuǎn)換為嵌套式描述格式。本發(fā)明實施例提供的一種轉(zhuǎn)換表格描述格式的方法,包括A、根據(jù)表格對應(yīng)的平鋪式描述,確定所述表格中每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格的矩陣信息;B、根據(jù)所述每個基礎(chǔ)網(wǎng)格的矩陣信息,確定所述表格中每個表行包含的基礎(chǔ)行數(shù),以及每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)所述每個基礎(chǔ)行的行高,每個基礎(chǔ)列的列寬,獲取所述表格中每個表行的行高,以及每個表欄的欄寬;C、用嵌套式描述記錄所述每個表行的行高和每個表欄的欄寬。一種轉(zhuǎn)換表格描述方式的裝置,包括確定單元,用于根據(jù)表格對應(yīng)的平鋪式描述,確定所述表格中每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格的矩陣信息;獲取單元,用于所述每個基礎(chǔ)網(wǎng)格的矩陣信息,確定所述表格中每個表行包含的基礎(chǔ)行數(shù),以及每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)所述每個基礎(chǔ)行的行高,每個基礎(chǔ)列的列寬,獲取所述表格中每個表行的行高,以及每個表欄的欄寬;記錄單元,用于用嵌套式描述記錄所述每個表行的行高和每個表欄的欄寬。本發(fā)明實施例中根據(jù)表格對應(yīng)的平鋪式描迷,確定所述表格中每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格的矩陣信息后,獲得所述表格中每個表行的行高和每個表欄的欄寬,并用嵌套式描述記錄下來,這樣,實現(xiàn)將表格從平鋪式描述格式轉(zhuǎn)換為嵌套式描述格式,從而,排版軟件可以兼容其他圖文編輯軟件的文件。圖1為本發(fā)明實施例轉(zhuǎn)換表格描迷格式方法的流程圖2為本發(fā)明實施例在嵌套式描述中記錄表行行高以及表欄欄寬的流程圖3為本發(fā)明實施例中在嵌套式描述中記錄表行行高以及表欄欄寬的流程圖;圖4為本發(fā)明實施例中轉(zhuǎn)換表格描述格式方法的流程圖;圖5為本發(fā)明實施例中轉(zhuǎn)換表格描述格式裝置的結(jié)構(gòu)圖。具體實施例方式本發(fā)明實施例中根據(jù)表格對應(yīng)的平鋪式描述,獲得所述表格中每個基礎(chǔ)網(wǎng)格的信息,然后根據(jù)所述每個基礎(chǔ)網(wǎng)格的信息,在嵌套式描述中記錄所述當(dāng)前表格中每個表行的行高,以及每個表欄的欄寬,從而實現(xiàn)了對表格描述格式的轉(zhuǎn)換,其具體流程如下,參見圖l:步驟101:根據(jù)表格對應(yīng)的平鋪式描述,確定表格中每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格的矩陣信息。這里,首先從表才各對應(yīng)的平鋪式描述中讀取每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格橫向合并的列數(shù),以及縱向合并的行數(shù),然后根據(jù)所述橫向合并的列數(shù),確定每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值,以及根據(jù)所述縱向合并的行數(shù),確定每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值。步驟102:根據(jù)每個基礎(chǔ)網(wǎng)格的矩陣信息,確定表格中每個表行包含的基礎(chǔ)行數(shù),以及每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)每個基礎(chǔ)行的行高,每個基礎(chǔ)列的列寬獲取表格中每個表行的行高,以及每個表欄的欄寬。步驟103:用嵌套式描述記錄所述每個表行的行高和每個表欄的欄寬。這里,步驟102可以采用遞歸的方式獲取表格中每個表行的行高,以及每個表欄的欄寬??梢允紫全@取表行信息,然后獲取表欄信息,具體過程參見圖2:步驟201:確定當(dāng)前表格。在第一次執(zhí)行本發(fā)明實施例所述的方法時,可以將當(dāng)整個表格對應(yīng)的范圍作為當(dāng)前表格。步驟202:根據(jù)當(dāng)前表格中每個基礎(chǔ)網(wǎng)格的矩陣信息,確定當(dāng)前表格的每個表行的包含的基礎(chǔ)行數(shù),并獲取每個表行的行高。這里,可以將所述當(dāng)前表格對應(yīng)的基礎(chǔ)網(wǎng)格矩陣中每行中每個矩陣信息的縱向值與設(shè)定值進行比較;然后根據(jù)比較結(jié)果確定所述當(dāng)前表格的每個表行的范圍,即每個表行包含的基礎(chǔ)行數(shù);并且根據(jù)每個表行包含的基礎(chǔ)行數(shù),以及每個基礎(chǔ)行的行高,獲取每個表行的行高。步驟203:根據(jù)當(dāng)前表行中每個基礎(chǔ)網(wǎng)格的矩陣信息,確定當(dāng)前表行中每個表欄的包含的基礎(chǔ)列數(shù),并獲取每個表欄的欄寬。將當(dāng)前表行的范圍中基礎(chǔ)網(wǎng)格矩陣中每列信息的的橫向值與設(shè)定值進行比較,然后根據(jù)比較結(jié)果確定所述當(dāng)前表行的每個表欄的范圍,即每個表欄包含的基礎(chǔ)列數(shù);并根據(jù)每個表欄包含的基礎(chǔ)列數(shù),以及每個基礎(chǔ)列的列寬,獲取每個表欄的欄寬。步驟204:根據(jù)當(dāng)前表欄中的第一基礎(chǔ)網(wǎng)格的矩陣信息,步驟203確定的當(dāng)前表欄包含的基礎(chǔ)列數(shù),以及步驟202確定的當(dāng)前表欄所在的當(dāng)前表行包含的基礎(chǔ)行數(shù),確定當(dāng)前表欄是否包含子表,如果是將該表欄對應(yīng)的范圍確定為當(dāng)前表格,轉(zhuǎn)入步驟202。否則,轉(zhuǎn)入步驟205。這里,當(dāng)前表欄中的第一基礎(chǔ)網(wǎng)格可以為當(dāng)前表欄范圍中的左上方的基礎(chǔ)網(wǎng)格,分別將該基礎(chǔ)網(wǎng)格的矩陣信息的橫向值與當(dāng)前表欄包含的基礎(chǔ)列數(shù),以及該基礎(chǔ)網(wǎng)格的矩陣信息的橫向值與當(dāng)前表行包含的基礎(chǔ)行數(shù)進行比較,當(dāng)兩個比較的結(jié)果,都為相等時,確定當(dāng)前表欄沒有子表,轉(zhuǎn)入步驟205,否則,執(zhí)行該表欄對應(yīng)的范圍確定為當(dāng)前表格,轉(zhuǎn)入步驟202。步驟205:是否當(dāng)前表行的所有表欄都進行了子表分析,即是否當(dāng)前表行的所有表欄都執(zhí)行了步驟204,如果是,轉(zhuǎn)入步驟206,否則,將下一個表欄作為當(dāng)前表欄,返回步驟204。步驟206:是否當(dāng)前表格的所有表行進行了子表分析,即是否當(dāng)前表格的所有表行都執(zhí)行了步驟203,如果是流程結(jié)束;否則,將下一表行作為當(dāng)前表行,返回步驟203。當(dāng)然步驟102還可以首先獲取表欄信息,然后獲取表行信息,具體過程如下,參見圖3:步驟301:確定當(dāng)前表^f各。步驟302:根據(jù)當(dāng)前表格中每個基礎(chǔ)網(wǎng)格的信息,確定當(dāng)前表格的每個表欄的包含的基礎(chǔ)列數(shù),并獲取每個表欄的欄寬。這里,將所述當(dāng)前表格對應(yīng)的基礎(chǔ)網(wǎng)格矩陣中每列的矩陣信息的橫向值與設(shè)定值進行比較,然后根據(jù)比較結(jié)果確定所述當(dāng)前表格的每個表欄的范圍,即每個表欄包含的基礎(chǔ)列數(shù);并根據(jù)每個表欄包含的基礎(chǔ)列數(shù),以及每個基礎(chǔ)列的列寬,獲取每個表欄的欄寬。步驟303:根據(jù)當(dāng)前表欄中每個基礎(chǔ)網(wǎng)格的信息,確定當(dāng)前表欄中每個表行的包含的基礎(chǔ)行數(shù),并獲取每個表行的行高。可以將所述每個表欄的范圍中每行中每個基礎(chǔ)網(wǎng)格的縱向值與設(shè)定值進行比較;然后根據(jù)比較結(jié)果確定所述當(dāng)前表格的每個表行的范圍,即每個表行包含的基礎(chǔ)行數(shù);并且根據(jù)根據(jù)每個表行包含的基礎(chǔ)行數(shù),以及每個基礎(chǔ)行的行高,獲取每個表行的行高。步驟304:根據(jù)當(dāng)前表行中的第一基礎(chǔ)網(wǎng)格的矩陣信息,步驟302確定的當(dāng)前表行所在的當(dāng)前表欄包含的基礎(chǔ)列數(shù),以及步驟303確定的當(dāng)前表行包含的基礎(chǔ)行數(shù),確定當(dāng)前表行是否包含子表,如果是將該表行對應(yīng)的范圍確定為當(dāng)前表格,轉(zhuǎn)入步驟302。否則執(zhí)行步驟305。這里,當(dāng)前表行中的第一基礎(chǔ)網(wǎng)格可以為當(dāng)前表行范圍中的左上方的基礎(chǔ)網(wǎng)格,分別將該基礎(chǔ)網(wǎng)格的矩陣信息的橫向值與當(dāng)前表欄包含的基礎(chǔ)列數(shù),以及該基礎(chǔ)網(wǎng)格的矩陣信息的縱向值與當(dāng)前表行包含的基礎(chǔ)行數(shù)進行比較,當(dāng)兩個比較的結(jié)果,都為相等時,確定當(dāng)前表欄沒有子表,轉(zhuǎn)入步驟305,否則,執(zhí)行該表欄對應(yīng)的范圍確定為當(dāng)前表格,轉(zhuǎn)入步驟302。步驟305:是否當(dāng)前表欄的所有表行都進行了子表分析,即是否當(dāng)前表欄的所有表行都執(zhí)行了步驟304,如果是,轉(zhuǎn)入步驟306,否則,將下一個表行作為當(dāng)前表行,返回步驟304。步驟306:是否當(dāng)前表格的所有表欄都進行了子表分析,即是否當(dāng)前表格的所有表欄都執(zhí)行了步驟303,如果是,流程結(jié)束;否則,將下一表欄作為當(dāng)前表欄,返回步驟303。下面結(jié)合附圖,對本發(fā)明實施例作進一步的描述。本發(fā)明實施例采用遞歸的方法獲取表格中每個表行的行高,以及每個表欄的欄寬。這里,首先獲取表行信息,然后獲取表欄信息。一個表格對應(yīng)的平鋪式的描述形式為<tbl><tblGrid><gridColw=l/>〈gridColw=l/>〈gridColw=l/>々tblGrid><trh=l><tchSpan=lvSpan=l/><tchSpan=lvSpan=l/><tchSpan=lvSpan=2/></tr><trh=l><tchSpan=2vSpan=l/><tchSpan=-lvSpan=l/><tchSpan=lvSpan=-/></tr><trh=l><tchSpan=2vSpan=l/><tchSpan=-lvSpan=l/><tchSpan=lvSpan=l/></tr></tbl>現(xiàn)將其轉(zhuǎn)換成嵌套式的描述形成,具體流程參見圖4:步驟401:確定表格中每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格的信息,并將該表格作為當(dāng)前表格。這里,每個基礎(chǔ)網(wǎng)格的信息表示為(x,y),其中x為每個基礎(chǔ)網(wǎng)格的信息中的橫向值,y為每個基礎(chǔ)網(wǎng)格的信息中的縱向值,其中,x為每個基礎(chǔ)網(wǎng)格橫向合并的列數(shù),y為每個基礎(chǔ)網(wǎng)格縱向合并的行數(shù)。上述的表格平鋪式的描述中,其中標(biāo)簽〈tblx/tbl〉之間描述的是平鋪描述格式的表格結(jié)構(gòu)。標(biāo)簽〈tblGridx他lGrid〉之間描述的是表格的基礎(chǔ)網(wǎng)格的列寬信息,標(biāo)簽〈gridCol/〉表示基礎(chǔ)網(wǎng)格的列,其中屬性w表示基礎(chǔ)列的列寬,標(biāo)簽<"></化>之間描述的是表行結(jié)構(gòu),其中屬性h表示基礎(chǔ)行的行高。標(biāo)簽<化/>表示單元格,其中屬性hSpan表示橫向合并的列數(shù),vSpan表示縱向合并的行數(shù)。因此,根據(jù)上述表格的平鋪式描述,可以確定本實施中該表格每個基礎(chǔ)列的列寬為l,每個基礎(chǔ)行的行高也為1,其對應(yīng)的基礎(chǔ)網(wǎng)格,參見表l。<table>tableseeoriginaldocumentpage12</column></row><table>表1其中,第1行中的第3個基礎(chǔ)網(wǎng)格G3橫向占據(jù)1列,縱向占據(jù)2行,因此其對應(yīng)的基礎(chǔ)網(wǎng)格矩陣信息中的數(shù)據(jù)為(1,2),第2行中的第3個基礎(chǔ)網(wǎng)格G6橫向占據(jù)1列,縱向被上面的基礎(chǔ)網(wǎng)格G3合并,因此對應(yīng)的基礎(chǔ)網(wǎng)格矩陣信息中的數(shù)據(jù)為(1,-1);第2行中的第1個基礎(chǔ)網(wǎng)格G4橫向占據(jù)2列,縱向占據(jù)l行,因此對應(yīng)的基礎(chǔ)網(wǎng)格矩陣信息中的數(shù)據(jù)為(2,1),第2行中的第2個基礎(chǔ)網(wǎng)格G5橫向被前面的基礎(chǔ)網(wǎng)格G4合并,縱向占據(jù)1行,因此對應(yīng)的基礎(chǔ)網(wǎng)格矩陣信息中的數(shù)據(jù)為(-1,1)。以此類推,整個表格對應(yīng)的基礎(chǔ)網(wǎng)格矩陣信息如下所示<formula>formulaseeoriginaldocumentpage12</formula>步驟402:根據(jù)當(dāng)前表格中基礎(chǔ)網(wǎng)格的矩陣信息,獲取當(dāng)前表格的每個表行的包含的基礎(chǔ)行數(shù),即通過每個表行的起始位置和結(jié)束位置,確定每個表行的范圍。表格中的第l基礎(chǔ)行對應(yīng)的基礎(chǔ)單元矩陣信息分別為(1,1)、(1,1)、(1,2),這里可以將y值與設(shè)定值進行比較,這里,設(shè)定值可以為O,其中,y值均大于0的,所以該行縱向沒有被合并的單元格,此處可將該行作為第一個表行的起始位置,同理,表格中的第3基礎(chǔ)行,為嵌套格式的另一個表行的起始位置。因此,表格中的第1,2基礎(chǔ)行構(gòu)成嵌套格式的第一表行,表格中的第3基礎(chǔ)行構(gòu)成嵌套格式的第二表行。步驟403:獲取每個表行的行高。第一表行由兩個基礎(chǔ)行構(gòu)成,因此,其行高為第一個基礎(chǔ)行的行高與第二基礎(chǔ)行的行高之和,這里,h=2。第二表行由一個基礎(chǔ)行構(gòu)成,其行高為h-l。步驟404:根據(jù)每個表行的范圍中每個基礎(chǔ)網(wǎng)格的矩陣信息,獲取每個表行的范圍中每個表欄的包含的基礎(chǔ)列數(shù)。這里,第一表行的范圍為表格中的第1,2基礎(chǔ)行,在第一表行范圍的基礎(chǔ)網(wǎng)格矩陣信息中,第一列對應(yīng)的基礎(chǔ)網(wǎng)格為Gl、G4,其矩陣信息分別為(1,1)、(2,1),其中,x值均大于0的,所以該列橫向沒有被合并的單元格,此處可將該行作為第一個表欄的起始位置,第一表行的第3基礎(chǔ)列對應(yīng)的基礎(chǔ)網(wǎng)格為G3、G6,矩陣信息分別為(1,2)、(1,-1),其中,x值均大于0的,所以該列橫向沒有被合并的單元格,此處可為嵌套格式的另一個表行的起始位置。因此,第一表行中的第1,2基礎(chǔ)列構(gòu)成嵌套格式的該表行的第一表欄,第3基礎(chǔ)列構(gòu)成嵌套格式的該表行的第二表欄。第二表行的范圍為表格中的第3基礎(chǔ)行,同理,第二表行中的第1,2基礎(chǔ)列構(gòu)成嵌套格式的該表行的第一表欄,第3基礎(chǔ)列構(gòu)成嵌套格式該表行的第二表欄。步驟405:獲取每個表欄的欄寬。第一表行中,第一表欄占用兩個基礎(chǔ)列,該表欄的欄寬為第一個基礎(chǔ)列與第二個基礎(chǔ)列的列寬之和,這里,w=2;第二表欄占用一個基礎(chǔ)列,該表欄的欄寬w=l。同理,第二表行中,第一表欄占用兩個基礎(chǔ)列,該表欄的欄寬w-2;第二表欄占用一個基礎(chǔ)列,該表欄的欄寬w^。13步驟406:判斷當(dāng)前表欄是否包含子表,如果是將該表欄對應(yīng)的范圍確定為當(dāng)前表格,如果是將該表欄對應(yīng)的范圍確定為當(dāng)前表格,轉(zhuǎn)入步驟402。否則,轉(zhuǎn)入步驟407。這里,若當(dāng)前表欄為第一表行內(nèi)的第一表欄,其對應(yīng)的基礎(chǔ)網(wǎng)格G1、G2、G4、G5,其中第一基礎(chǔ)網(wǎng)格的矩陣信息為Gl,它的矩陣信息為(1,1)。根據(jù)上述步驟可知當(dāng)前表欄占有了兩個基礎(chǔ)列數(shù),兩個基礎(chǔ)行數(shù),Gl的橫向值不等于2,Gl的縱向值也不等于2,因此,該表欄存在子表,將該表欄對應(yīng)的范圍,作為當(dāng)前表格,轉(zhuǎn)入步驟402。對該子表繼續(xù)進行嵌套遞歸分析。若當(dāng)前表欄為第一表行的第二表欄,其對應(yīng)的基礎(chǔ)網(wǎng)格為G3、G6,其中第一基礎(chǔ)網(wǎng)格的矩陣信息為G3,它的基礎(chǔ)網(wǎng)格矩陣信息為(1,2),根據(jù)上述步驟可知當(dāng)前表欄占有了一個基礎(chǔ)列數(shù),兩個基礎(chǔ)行數(shù),而G3的橫向值正好為1,其縱向值也為2,因此該表欄不包含子表,執(zhí)行步驟407。若當(dāng)前表欄為第二表行內(nèi)的第一表欄,其對應(yīng)的基礎(chǔ)網(wǎng)格為G7、G8,其中第一基礎(chǔ)網(wǎng)格的矩陣信息為G7,它的基礎(chǔ)網(wǎng)格矩陣信息為(2,1),同理可知G7的橫向值與該表欄占有列數(shù)相等,G7的縱向值也與第二表行占有列數(shù)相等,因此,因此該表欄不包含子表,執(zhí)行步驟407。若當(dāng)前表欄為第二表行的第二表欄,其對應(yīng)基礎(chǔ)網(wǎng)格G9,其橫向值與該表欄占有列數(shù)相等,G7的縱向值也與第二表行占有列數(shù)相等,因此,因此該表欄不包含子表,執(zhí)行步驟407。步驟407:判斷是否所有表欄都進行了子表分析,即是否所有表欄都執(zhí)行了406,如果是,執(zhí)行步驟408,否則,將下一個表欄的作為當(dāng)前表欄,返回步驟406。這里,可以是第一表行內(nèi)的第一表欄進行了子表分析后,依次分析第一表行內(nèi)的第二表欄,第二表行內(nèi)的第一表欄,以及第二表行內(nèi)的第二表欄。步驟408:用嵌套式描述記錄每個表行的行高和每個表欄的欄寬。根據(jù)上述步驟,可以獲得表格中每個表行的行高和每個表欄的欄寬,因此,最終形成的嵌套格式的表格描述結(jié)構(gòu)如下所示<BG><BHh=2><ZBw=2><BHh=l><BLw=l/><BLw=l/></BH><BHh=l><DYGw=2/></BH></ZB><BLw=l/></BH><BHh=l><BLw=2/><BLw=l/></BH></BG>其中標(biāo)簽<BG></BG>之間描述的是嵌套描述格式的表格結(jié)構(gòu)。標(biāo)簽〈BHx/BH〉之間描述的是表行的結(jié)構(gòu),其中屬性h為表行的行高。標(biāo)簽〈ZBx/ZB〉之間描述的是表欄為子表的結(jié)構(gòu),其中屬性w表示子表或單元格的欄寬,標(biāo)簽〈BL/〉表示表欄為單元格。根據(jù)上述轉(zhuǎn)換表格描述方式的方法,可以構(gòu)建一種轉(zhuǎn)換表格描述方式的裝置,參見圖5:包括確定單元510,獲取單元520和記錄單元530。確定單元510,用于根據(jù)表格對應(yīng)的平鋪式描述,確定所述表格中每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格的矩陣信息;獲取單元520,用于根據(jù)所述每個基礎(chǔ)網(wǎng)格的矩陣信息,確定所述表格中每個表行包含的基礎(chǔ)行數(shù),以及每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)所述每個基礎(chǔ)行的行高,每個基礎(chǔ)列的列寬,獲取所述表格中每個表行的行高,以及每個表欄的欄寬記錄單元530,用于用嵌套式描述記錄所述每個表行的行高和每個表欄的欄寬。其中,確定單元510從表格對應(yīng)的平鋪式描述中讀取每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,每個基礎(chǔ)網(wǎng)格橫向合并的列數(shù),以及縱向合并的行數(shù)后,根據(jù)所述橫向合并的列數(shù),確定每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值,以及根據(jù)所述縱向合并的行數(shù),確定每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值。獲取單元520根據(jù)將表格中每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值與設(shè)定值進行比較,根據(jù)比較結(jié)果,確定表格的每個表行包含的基礎(chǔ)行數(shù),并根據(jù)每個基礎(chǔ)行的行高獲得每個表行的行高,然后將每個表行中每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值與設(shè)定值進行比較,根據(jù)比較結(jié)果,確定每個表行中每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)每個基礎(chǔ)列的列寬獲取每個表行中每個表欄的欄寬。這里,獲取單元520還分別將每個表欄中第一基礎(chǔ)網(wǎng)格的矩陣信息的橫向值與該表欄包含的基礎(chǔ)列數(shù),以及將所述第一基礎(chǔ)網(wǎng)格的矩陣信息的縱向值與該表欄所在表行包含的基礎(chǔ)行數(shù)進行比較。當(dāng)兩個比較的結(jié)果,都為相等時,則,確定當(dāng)前表欄沒有子表,否則,將該表欄對應(yīng)的范圍確定為子表,繼續(xù)在獲取該子表中每個表行的行高,以及每個表欄的欄寬。當(dāng)然,獲取單元520還可以將表格中每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值與設(shè)定值進行比較,根據(jù)比較結(jié)果,確定每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)每個基礎(chǔ)列的列寬獲取所述當(dāng)前表格的每個表欄的欄寬,然后將所述每個表欄中每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值與設(shè)定值進行比較,根據(jù)比較結(jié)果,確定每個表欄中每個表行包含的基礎(chǔ)行數(shù),并根據(jù)每個基礎(chǔ)行的行高獲取每個表欄中每個表行的的行高。并分別將每個表行中第一基礎(chǔ)網(wǎng)格的矩陣信息的橫向值與該表行所在表欄包含的基礎(chǔ)列數(shù),以及將所述第一基礎(chǔ)網(wǎng)格的矩陣信息的縱向值與表行包含的基礎(chǔ)行數(shù)進行比較。當(dāng)兩個比較的結(jié)果,都為相等時,確定當(dāng)前表行沒有子表,否則,將該表行對應(yīng)的范圍確定為子表,繼續(xù)獲取該子表中每個表行的行高,以及每個表欄的欄寬。綜上所述,本發(fā)明實施例中根據(jù)表格對應(yīng)的平鋪式描述,確定所述表格中每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格的矩陣信息,然后根據(jù)所述每個基礎(chǔ)網(wǎng)格的矩陣信息,確定所述表格中每個表行包含的基礎(chǔ)行數(shù),以及每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)所述每個基礎(chǔ)行的行高,每個基礎(chǔ)列的列寬,最后,在嵌套式描述中記錄所述當(dāng)前表格中每個表行的行高,以及每個表欄的欄寬,這樣,實現(xiàn)將表格從平鋪式描述格式轉(zhuǎn)換為嵌套式描述格式,從而,排版軟件可以兼容其他圖文編輯軟件的文件。并在進行表格描述格式的轉(zhuǎn)換時,通過基礎(chǔ)單元信息矩陣進行計算和判斷,減少了表格轉(zhuǎn)換過程的計算量,提高了表格轉(zhuǎn)換效率。明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。權(quán)利要求1、一種轉(zhuǎn)換表格描述方式的方法,其特征在于,包括A、根據(jù)表格對應(yīng)的平鋪式描述,確定所述表格中每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格的矩陣信息;B、根據(jù)所述每個基礎(chǔ)網(wǎng)格的矩陣信息,確定所述表格中每個表行包含的基礎(chǔ)行數(shù),以及每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)所述每個基礎(chǔ)行的行高,每個基礎(chǔ)列的列寬,獲取所述表格中每個表行的行高,以及每個表欄的欄寬;C、用嵌套式描述記錄所述每個表行的行高和每個表欄的欄寬。2、如權(quán)利要求l所述的方法,其特征在于,所述步驟A中確定每個基礎(chǔ)網(wǎng)格的矩陣信息包括從表格對應(yīng)的平鋪式描述中讀取每個基礎(chǔ)網(wǎng)格橫向合并的列數(shù),以及縱向合并的行數(shù);根據(jù)所述每個基礎(chǔ)網(wǎng)格橫向合并的列數(shù),確定每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值;根據(jù)所述每個基礎(chǔ)網(wǎng)格縱向合并的行數(shù),確定每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值。3、如權(quán)利要求2所述的方法,其特征在于,所述步驟B包括Bll、將所述表格作為當(dāng)前表格;B12、根據(jù)所述當(dāng)前表格中每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值,確定每個表行包含的基礎(chǔ)行數(shù),并獲取所述當(dāng)前表格的每個表行的行高;B13、根據(jù)每個表行中每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值,確定每個表行中每個表欄包含的基礎(chǔ)列數(shù),并獲取每個表行中每個表欄的欄寬;B14、當(dāng)每個表欄中第一基礎(chǔ)網(wǎng)格的矩陣信息的橫向值與該表欄包含的基礎(chǔ)列數(shù)相等,以及當(dāng)所述第一基礎(chǔ)網(wǎng)格的矩陣信息的縱向值與該表欄所在表行包含的基礎(chǔ)行數(shù)相等時,該表欄不存在子表,否則,該表欄存在子表,將該表欄對應(yīng)的范圍確定為當(dāng)前表格,轉(zhuǎn)入步驟B12。4、如權(quán)利要求3所述的方法,其特征在于,所述步驟B12包括將所述當(dāng)前表格的每行中每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值與設(shè)定值進行比較;根據(jù)比較結(jié)果確定所述當(dāng)前表格的每個表行包含的基礎(chǔ)行數(shù);根據(jù)每個表行包含的基礎(chǔ)行數(shù),以及每個基礎(chǔ)行的行高,獲取每個表行的行高。5、如權(quán)利要求3所述的方法,其特征在于,所述步驟B13包括將所述每個表行的每列中每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值與設(shè)定值進行比較;根據(jù)比較結(jié)果確定所述每個表行的每個表欄包含的基礎(chǔ)列數(shù);根據(jù)每個表欄包含的基礎(chǔ)列數(shù),以及每個基礎(chǔ)列的列寬,獲取每個表欄的欄寬。6、如權(quán)利要求2所述的方法,其特征在于,所述步驟B包括B21、將所述表格作為當(dāng)前表格;B22、根據(jù)所述當(dāng)前表格中每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值,確定每個表欄包含的基礎(chǔ)列數(shù),并獲取所述當(dāng)前表格的每個表欄的欄寬;B23、根據(jù)所述每個表欄中每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值,確定每個每個表欄中表行包含的^s出行數(shù),并獲取每個表欄中每個表行的行高;B24、當(dāng)每個表行中第一基礎(chǔ)網(wǎng)格的矩陣信息的橫向值與該表行所在表欄包含的基礎(chǔ)列數(shù)相等,以及當(dāng)所述第一基礎(chǔ)網(wǎng)格的矩陣信息的縱向值與該表行包含的基礎(chǔ)行數(shù)相等時,該表行不存在子表,否則,該表行存在子表,該表行對應(yīng)的范圍確定為當(dāng)前表格,轉(zhuǎn)入步驟B22。7、如權(quán)利要求6所述的方法,其特征在于,所述步驟B22包括將所述當(dāng)前表格的每列中每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值與設(shè)定值進行比較;根據(jù)比較結(jié)果確定所述當(dāng)前表格的每個表欄包含的基礎(chǔ)列數(shù);根據(jù)每個表欄包含的基礎(chǔ)列數(shù),以及每個基礎(chǔ)列的列寬,獲取每個表欄的欄寬。8、如權(quán)利要求6所述的方法,其特征在于,所述步驟B23包括將所述每個表欄的每行中每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值與設(shè)定值進行比較;根據(jù)比較結(jié)果確定所述每個表欄的每個表行包含的基礎(chǔ)行數(shù);根據(jù)每個表行包含的基礎(chǔ)行數(shù),以及每個基礎(chǔ)列的行高,獲取每個表行的行高。9、一種轉(zhuǎn)換表格描述方式的裝置,其特征在于,包括確定單元,用于根據(jù)表格對應(yīng)的平鋪式描述,確定所述表格中每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格的矩陣信息;獲取單元,用于根據(jù)所述每個基礎(chǔ)網(wǎng)格的矩陣信息,確定所述表格中每個表行包含的基礎(chǔ)行數(shù),以及每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)所述每個基礎(chǔ)行的行高,每個基礎(chǔ)列的列寬,獲取所述表格中每個表行的行高,以及每個表欄的欄寬;記錄單元,用于用嵌套式描述記錄所迷每個表行的行高和每個表欄的欄寬。10、如權(quán)利要求9所述的裝置,其特征在于,所述獲:f又單元包括讀取子單元,用于從表格對應(yīng)的平鋪式描述中讀取每個基礎(chǔ)網(wǎng)格橫向合并的列l(wèi)欠,以及縱向合并的行數(shù);第一確定子單元,用于根據(jù)所述每個基礎(chǔ)網(wǎng)格橫向合并的列數(shù),確定每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值;第二確定子單元,用于根據(jù)所述每個基礎(chǔ)網(wǎng)格縱向合并的行數(shù),確定每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值。11、如權(quán)利要求IO所述的裝置,其特征在于,所述獲取單元包括第一獲取子單元,用于將當(dāng)前表格中每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值與設(shè)定值進行比較,根據(jù)比較結(jié)果,確定每個表行包含的基礎(chǔ)行數(shù),并根據(jù)每個基礎(chǔ)行的行高獲取所迷當(dāng)前表格的每個表行的行高;第二獲取子單元,用于將每個表行中每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值與設(shè)定值進行比較,根據(jù)比較結(jié)果,確定每個表行中每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)每個基礎(chǔ)列的列寬獲取每個表行中每個表欄的欄寬;第一比較子單元,用于將每個表欄中第一基礎(chǔ)網(wǎng)格的矩陣信息的橫向值與該表欄包含的基礎(chǔ)列數(shù),以及將所述第一基礎(chǔ)網(wǎng)格的矩陣信息的縱向值與該表欄所在表行包含的基礎(chǔ)行數(shù)進行比較。12、如權(quán)利要求IO所述的裝置,其特征在于,所述獲取單元包括第三獲取子單元,用于將當(dāng)前表格中每個基礎(chǔ)網(wǎng)格的矩陣信息中的橫向值與設(shè)定值進行比較,根據(jù)比較結(jié)果,確定每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)每個基礎(chǔ)列的列寬獲取所述當(dāng)前表格的每個表欄的欄寬;第四獲取子單元,用于將所述每個表欄中每個基礎(chǔ)網(wǎng)格的矩陣信息中的縱向值與設(shè)定值進行比較,根據(jù)比較結(jié)果,確定每個表欄中每個表行包含的基礎(chǔ)行數(shù),并根據(jù)每個基礎(chǔ)行的行高獲取每個表欄中每個表行的的行高;第二比較子單元,用于將每個表行中第一基礎(chǔ)網(wǎng)格的矩陣信息的橫向值與該表行所在表欄包含的基礎(chǔ)列數(shù),以及將所述第一基礎(chǔ)網(wǎng)格的矩陣信息的縱向值與該表行包含的基礎(chǔ)行數(shù)進行比較。全文摘要本發(fā)明公開了一種轉(zhuǎn)換表格描述方式的方法,用以實現(xiàn)將表格從平鋪式描述格式轉(zhuǎn)換為嵌套式描述格式,該方法包括根據(jù)表格對應(yīng)的平鋪式描述,確定所述表格中每個基礎(chǔ)列的列寬,每個基礎(chǔ)行的行高,以及每個基礎(chǔ)網(wǎng)格的矩陣信息,然后根據(jù)所述每個基礎(chǔ)網(wǎng)格的矩陣信息,確定所述表格中每個表行包含的基礎(chǔ)行數(shù),以及每個表欄包含的基礎(chǔ)列數(shù),并根據(jù)所述每個基礎(chǔ)行的行高,每個基礎(chǔ)列的列寬,獲取所述表格中每個表行的行高,以及每個表欄的欄寬,用嵌套式描述記錄所述每個表行的行高和每個表欄的欄寬。本發(fā)明還公開了一種轉(zhuǎn)換表格描述方式的裝置。文檔編號G06F17/24GK101436176SQ20081023968公開日2009年5月20日申請日期2008年12月15日優(yōu)先權(quán)日2008年12月15日發(fā)明者李彥娜,魏超鵬申請人:北大方正集團有限公司;北京北大方正電子有限公司