專利名稱:一種包括嵌套框?qū)ο蟮呐虐娣椒ê脱b置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種文字排版技術(shù),尤其涉及一種包括嵌套框?qū)ο蟮呐虐娣椒?和裝置。
背景技術(shù):
在版面上,除了最常見(jiàn)的文字對(duì)象外,還有圖像對(duì)象、表格對(duì)象、數(shù)學(xué)公 式對(duì)象等各種版面對(duì)象,圖像對(duì)象用于顯示圖像,文字對(duì)象用于顯示文字,表 格對(duì)象用于顯示表格,數(shù)學(xué)公式對(duì)象用于顯示數(shù)學(xué)公式。在同一版面中,常需 要將各種版面對(duì)象、或者各種版面對(duì)象的組合作為文字對(duì)象中的一個(gè)字符,以 豐富版面內(nèi)容。為了描述方便,在本發(fā)明中,將能夠容納版面對(duì)象的字符稱作嵌套框?qū)ο蟆?因此,嵌套框?qū)ο笫且环N字符,可嵌在文字對(duì)象中,在排版時(shí)同文字對(duì)象的其 它字符一起進(jìn)行排版。然而,在現(xiàn)有技術(shù)中,還沒(méi)有實(shí)現(xiàn)嵌套框?qū)ο蟮姆椒ǎ鼪](méi)有包括嵌套框 對(duì)象的排版方法和裝置。發(fā)明內(nèi)容本發(fā)明的目的是提供一種包括嵌套框?qū)ο蟮呐虐娣椒ê脱b置,可豐富版面 內(nèi)容。本發(fā)明提供了一種包括嵌套框?qū)ο蟮呐虐娣椒ǎǐ@得當(dāng)前字符;判斷當(dāng)前字符是否為嵌套框,若是,則根據(jù)嵌套框?qū)傩垣@得當(dāng)前行高度和 當(dāng)前行寬度,否則,根據(jù)字符的大小獲得當(dāng)前行高度和當(dāng)前行寬度,所述嵌套框?qū)傩园ㄇ短卓蚋叨群颓短卓驅(qū)挾龋徊鹏迵?jù)所述當(dāng)前行高度和當(dāng)前行寬度對(duì)當(dāng)前行進(jìn)行排版。 所述判斷當(dāng)前字符是否為嵌套框可根據(jù)嵌套框標(biāo)識(shí)位來(lái)判斷。所述根據(jù)嵌套框?qū)傩垣@得當(dāng)前行高度和當(dāng)前行寬度具體包括判斷當(dāng)前行寬度與嵌套框?qū)挾戎褪欠翊笥诋?dāng)前行預(yù)定寬度,若是,則結(jié) 束,否則,獲得嵌套框高度和嵌套框?qū)挾?,利用嵌套框?qū)挾扰c當(dāng)前行寬度之和 更新當(dāng)前行寬度,當(dāng)嵌套框高度大于當(dāng)前行高度時(shí),利用當(dāng)前行寬度替換為嵌 套框高度。所述方法還包括將嵌套框作為對(duì)象進(jìn)行編輯的步驟,所述步驟具體包括 進(jìn)入嵌套框?qū)ο髮?;在嵌套框?qū)ο髮訉?duì)嵌套框的內(nèi)容進(jìn)行編輯;根據(jù)編輯結(jié)果調(diào)整嵌套框的高度和寬度,并返回版面層。所述方法還包括實(shí)現(xiàn)嵌套框的方法,所述實(shí)現(xiàn)嵌套框的方法具體包括 在字符編碼中設(shè)置嵌套框標(biāo)識(shí)位,將嵌套框標(biāo)識(shí)位以外的位的值設(shè)置為對(duì) 象標(biāo)識(shí)。所述嵌套框標(biāo)識(shí)位設(shè)置在字符編碼的未使用的位中。所述嵌套框標(biāo)識(shí)位設(shè)置在字符編碼的最高位中。本發(fā)明還公開了 一種包括嵌套框?qū)ο蟮呐虐嫜b置,包括獲得單元,用于獲得當(dāng)前字符;判斷單元,用于判斷當(dāng)前字符是否為嵌套框;確定單元,用于根據(jù)判斷單元的結(jié)果確定當(dāng)前行高度和當(dāng)前行寬度;排版單元,用于根據(jù)所述當(dāng)前行高度和當(dāng)前行寬度對(duì)當(dāng)前行進(jìn)行排版。所述的排版裝置還包括編輯單元,用于進(jìn)入嵌套框?qū)ο髮?,在嵌套框?qū)ο髮訉?duì)嵌套框的內(nèi)容進(jìn)行編輯,并根據(jù)編輯結(jié)果調(diào)整嵌套框的高度和寬度,返回版面層。根據(jù)本發(fā)明,由于嵌套框?qū)ο笾锌梢杂腥魏蝺?nèi)容,如圖像對(duì)象、表格對(duì)象和/或數(shù)字公式對(duì)象等,且可將嵌套框?qū)ο螽?dāng)作一個(gè)字符隨文字一起進(jìn)行排版, 從而豐富了字符的內(nèi)容,進(jìn).而豐富了版面內(nèi)容。通過(guò)對(duì)嵌套框?qū)ο蟮木庉?,?加進(jìn)一步豐富了版面內(nèi)容。
圖1示出了本發(fā)明實(shí)施例的實(shí)現(xiàn)嵌套框的流程圖;圖2示出了本發(fā)明實(shí)施例的包括嵌套框的排版的流程圖;圖3示出了本發(fā)明實(shí)施例的獲得當(dāng)前行寬度和當(dāng)前行最大高度的流程圖;圖4示出了本發(fā)明實(shí)施例的編輯嵌套框的流程圖;圖5示出了本發(fā)明實(shí)施例的排版裝置。
具體實(shí)施方式
為了便于本領(lǐng)域一般技術(shù)人員理解和實(shí)現(xiàn)本發(fā)明,現(xiàn)結(jié)合附圖描繪本發(fā)明 的實(shí)施例。在描述包括嵌套框的排版方法之前,首先參照?qǐng)D1描述實(shí)現(xiàn)本發(fā)明的嵌套 框的方法。步驟ll、在字符編碼中設(shè)置嵌套框標(biāo)識(shí)位;在文字對(duì)象中,可包括多行,每一行可包括多個(gè)字符,每個(gè)字符對(duì)應(yīng)著字 符屬性字符編碼、字體、字號(hào)、顏色等。例如,字符編碼可為4字節(jié),共32位。Unicode編碼是一種字符編碼,其定 義了32位,目前只使用了21位,還有l(wèi)l位未用,因此可使用ll位中的任一位作 為嵌套框標(biāo)識(shí)位,因此,在本發(fā)明中,優(yōu)選使用最高位作為嵌套框標(biāo)識(shí)位。當(dāng) 該嵌套框標(biāo)識(shí)位有效時(shí)(如嵌套框標(biāo)識(shí)位等于l時(shí)),該字符編碼表示嵌套框, 當(dāng)該嵌套框標(biāo)識(shí)位無(wú)效時(shí)(如嵌套框標(biāo)識(shí)位等于0時(shí)),該字符編碼表示普通 字符。與每個(gè)字符對(duì)應(yīng)著字符屬性類似,每個(gè)嵌套框?qū)?yīng)著嵌套框?qū)傩?,所述?套框?qū)傩园ǜ叨?、寬度、?duì)象指針等。對(duì)象指針用于指向嵌套框內(nèi)容,嵌套框內(nèi)容可包含文字對(duì)象、圖像對(duì)象,表格對(duì)象,數(shù)學(xué)公式對(duì)象等各種對(duì)象。 步驟12 、將嵌套框標(biāo)識(shí)位以外的位的值設(shè)置為對(duì)象標(biāo)識(shí)。為了將嵌套框與其它對(duì)象進(jìn)行統(tǒng)一管理,可使用其它位(除標(biāo)識(shí)嵌套框的位以外31位)的值作為嵌套框?qū)ο髽?biāo)識(shí)。設(shè)置的原則是當(dāng)前嵌套框?qū)ο髽?biāo)識(shí)與系統(tǒng)存在的對(duì)象標(biāo)識(shí)不相同,設(shè)置的 方法可以是順序遞增方法,即系統(tǒng)中增加一對(duì)象,則對(duì)象標(biāo)識(shí)增加一。步驟13、將對(duì)象標(biāo)識(shí)與對(duì)象指針相關(guān)聯(lián)。這樣,通過(guò)嵌套框?qū)ο髽?biāo)識(shí)可以獲得嵌套框的高度、寬度和對(duì)象指針等內(nèi) 容。進(jìn)而通過(guò)嵌套框的高度、寬度可對(duì)嵌套框與文字對(duì)象中的字符進(jìn)行統(tǒng)一排 版,通過(guò)對(duì)象指針獲取嵌套框內(nèi)容,以便對(duì)嵌套框內(nèi)容進(jìn)行編輯和修改等操作。本發(fā)明公開了 一種包括嵌套框?qū)ο蟮呐虐娣椒?,下面結(jié)合圖2描述本發(fā)明 的包括嵌套框?qū)ο蟮呐虐娣椒?。步驟21、獲得當(dāng)前行寬度和高度。下面結(jié)合圖3描述計(jì)算當(dāng)前行寬度的過(guò)程。步驟301、當(dāng)開始排版新的一行時(shí),將當(dāng)前行寬度設(shè)置為0,將當(dāng)前行最大 高度設(shè)置為0。步驟302、取當(dāng)前字符。步驟303、判斷當(dāng)前字符是否為嵌套框,若是,則執(zhí)行步驟304:獲得嵌套 框的寬度作為當(dāng)前字符寬度,否則,執(zhí)行步驟305:將根據(jù)當(dāng)前字符的字號(hào)獲 得當(dāng)前字符寬度。判斷當(dāng)前字符是否為嵌套框可根據(jù)嵌套框標(biāo)識(shí)位來(lái)判斷,即,當(dāng)嵌套框標(biāo) 識(shí)位有效時(shí),則該字符為嵌套框,否則,當(dāng)前字符為普通字符。步驟306、判斷當(dāng)前行寬度與當(dāng)前字符寬度之和是否大于當(dāng)前行預(yù)定寬度, 若是,則執(zhí)行步驟315:結(jié)束,否則,執(zhí)行步驟307。步驟307、判斷當(dāng)前字符是否為嵌套框,若是,則執(zhí)行步驟308:獲得嵌套 框的高度作為當(dāng)前字符高度,否則,執(zhí)行步驟309:將根據(jù)當(dāng)前字符的字號(hào)獲得當(dāng)前字符高度。步驟310、判斷當(dāng)前行高度是否大于本行最大高度,若是,則執(zhí)行步驟311: 將當(dāng)前行高度設(shè)置為當(dāng)前字符高度,否則,執(zhí)行步驟312:當(dāng)前行最大高度保 持不變。步驟313、按下述公式更新當(dāng)前行的寬度,將下一字符作為當(dāng)前字符,并返回步驟302。當(dāng)前行寬度=當(dāng)前行寬度+當(dāng)前字符寬度。步驟22、根據(jù)當(dāng)前行寬度和當(dāng)前行高度對(duì)本行進(jìn)行排版。根據(jù)本發(fā)明,當(dāng)對(duì)嵌套框進(jìn)行編輯時(shí),可能會(huì)發(fā)生排版過(guò)程中,下面結(jié)合圖4描述編輯嵌套框的方法。步驟41、選中嵌套框,進(jìn)入嵌套框?qū)ο髮?。選中嵌套框后,可根據(jù)嵌套框的對(duì)象標(biāo)識(shí)獲得對(duì)象指針,再根據(jù)對(duì)象指針 獲得嵌套框的內(nèi)容。步驟42、對(duì)嵌套框的內(nèi)容進(jìn)行編輯,如改變外框大小、外形,插入或刪 除文字內(nèi)容。步驟43、判斷是否返回版面層,如果是,則執(zhí)行步驟44,否則返回步驟42。 步驟44、則返回版面層,結(jié)束編輯,并根據(jù)編輯結(jié)果重新計(jì)算嵌套框的高 度和寬度,并在文字對(duì)象中更新嵌套框的高度和寬度,以便在版面層根據(jù)嵌套 框的高度和寬度進(jìn)行排版。如圖5所示,本發(fā)明還公開了一種包括嵌套框?qū)ο蟮呐虐嫜b置,包括獲 得單元,用于獲得當(dāng)前字符;判斷單元,用于判斷當(dāng)前字符是否為嵌套框;確 定單元,用于根據(jù)判斷單元的結(jié)果確定當(dāng)前行高度和當(dāng)前行寬度;排版單元, 用于根據(jù)所述當(dāng)前行高度和當(dāng)前行寬度對(duì)當(dāng)前行進(jìn)行排版;編輯單元,用于進(jìn) 入嵌套框?qū)ο髮?,在嵌套框?qū)ο髮訉?duì)嵌套框的內(nèi)容進(jìn)行編輯,并根據(jù)編輯結(jié)果調(diào)整嵌套框的高度和寬度,返回版面層。因此,根據(jù)本發(fā)明,由于嵌套框中可以有任何內(nèi)容,如圖像對(duì)象、表格對(duì)象和/或數(shù)字公式對(duì)象等,且可將嵌套框?qū)ο螽?dāng)作一個(gè)字符隨文字一起進(jìn)行排 版,從而豐富了字符的內(nèi)容,進(jìn)而豐富了版面內(nèi)容。雖然通過(guò)實(shí)施例描繪了本發(fā)明,但本領(lǐng)域普通技術(shù)人員知道,在不脫離本 發(fā)明的精神和實(shí)質(zhì)的情況下,就可使本發(fā)明有許多變形和變化,本發(fā)明的范圍 由所附的權(quán)利要求來(lái)限定。
權(quán)利要求
1. 一種包括嵌套框?qū)ο蟮呐虐娣椒?,其特征在于,包括獲得當(dāng)前字符;判斷當(dāng)前字符是否為嵌套框,若是,則根據(jù)嵌套框?qū)傩垣@得當(dāng)前行高度和當(dāng)前行寬度,否則,根據(jù)字符的大小獲得當(dāng)前行高度和當(dāng)前行寬度,所述嵌套框?qū)傩园ㄇ短卓蚋叨群颓短卓驅(qū)挾?;根?jù)所述當(dāng)前行高度和當(dāng)前行寬度對(duì)當(dāng)前行進(jìn)行排版。
2、 根據(jù)權(quán)利要求l所述的方法,其特征在于,所述判斷當(dāng)前字符是否為嵌 套框可4艮據(jù)嵌套框標(biāo)識(shí)位來(lái)判斷。
3、 根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述根據(jù)嵌套框?qū)傩垣@ 得當(dāng)前行高度和當(dāng)前行寬度具體包括判斷當(dāng)前行寬度與嵌套框?qū)挾戎褪欠翊笥诋?dāng)前行預(yù)定寬度,若是,則結(jié) 束,否則,獲得嵌套框高度和嵌套框?qū)挾龋们短卓驅(qū)挾扰c當(dāng)前行寬度之和 更新當(dāng)前行寬度,當(dāng)嵌套框高度大于當(dāng)前行高度時(shí),利用當(dāng)前行寬度替換為嵌 套框高度。
4、 根據(jù)權(quán)利要求l所述的方法,其特征在于,所述方法還包括將嵌套框作 為對(duì)象進(jìn)行編輯的步驟,所述步驟具體包括進(jìn)入嵌套框?qū)ο髮?;在嵌套框?qū)ο髮訉?duì)嵌套框的內(nèi)容進(jìn)行編輯; 根據(jù)編輯結(jié)果調(diào)整嵌套框的高度和寬度,并返回版面層。
5、 根據(jù)權(quán)利要求l所述的方法,其特征在于,所述方法還包括實(shí)現(xiàn)嵌套框 的方法,所述實(shí)現(xiàn)嵌套框的方法具體包括在字符編碼中設(shè)置嵌套框標(biāo)識(shí)位,將嵌套框標(biāo)識(shí)位以外的位的值設(shè)置為對(duì) 象標(biāo)識(shí)。
6、 根據(jù)權(quán)利要求5所述的方法,其特征在于,所述嵌套框標(biāo)識(shí)位設(shè)置在字 符編碼的未使用的位中。
7、 根據(jù)權(quán)利要求6所述的方法,其特征在于,所述嵌套框標(biāo)識(shí)位設(shè)置在字 符編碼的最高位中。
8、 一種包括嵌套框?qū)ο蟮呐虐嫜b置,其特征在于,包括 獲得單元,用于獲得當(dāng)前字符;判斷單元,用于判斷當(dāng)前字符是否為嵌套框;確定單元,用于根據(jù)判斷單元的結(jié)果確定當(dāng)前行高度和當(dāng)前行寬度;排版單元,用于根據(jù)所述當(dāng)前行高度和當(dāng)前行寬度對(duì)當(dāng)前行進(jìn)行排版。
9、 根據(jù)權(quán)利要求8所述的排版裝置,其特征在于,所述的排版裝置還包括 編輯單元,用于進(jìn)入嵌套框?qū)ο髮?,在嵌套框?qū)ο髮訉?duì)嵌套框的內(nèi)容進(jìn)行編輯,并才艮據(jù)編輯結(jié)果調(diào)整嵌套框的高度和寬度,返回版面層。
全文摘要
本發(fā)明公開了一種包括嵌套框?qū)ο蟮呐虐娣椒ê脱b置,可豐富版面內(nèi)容,所述方法包括獲得當(dāng)前字符;判斷當(dāng)前字符是否為嵌套框,若是,則根據(jù)嵌套框?qū)傩垣@得當(dāng)前行高度和當(dāng)前行寬度,否則,根據(jù)字符的大小獲得當(dāng)前行高度和當(dāng)前行寬度,所述嵌套框?qū)傩园ㄇ短卓蚋叨群颓短卓驅(qū)挾龋桓鶕?jù)所述當(dāng)前行高度和當(dāng)前行寬度對(duì)當(dāng)前行進(jìn)行排版。所述裝置包括獲得單元、判斷單元、確定單元和排版單元。根據(jù)本發(fā)明,由于嵌套框?qū)ο笾锌梢杂腥魏蝺?nèi)容,如圖像對(duì)象、表格對(duì)象和/或數(shù)字公式對(duì)象等,且可將嵌套框?qū)ο螽?dāng)作一個(gè)字符隨文字一起進(jìn)行排版,從而豐富了字符的內(nèi)容,進(jìn)而豐富了版面內(nèi)容。通過(guò)對(duì)嵌套框?qū)ο蟮木庉?,更加進(jìn)一步豐富了版面內(nèi)容。
文檔編號(hào)G06F17/21GK101231633SQ20071006295
公開日2008年7月30日 申請(qǐng)日期2007年1月23日 優(yōu)先權(quán)日2007年1月23日
發(fā)明者勇 蘇 申請(qǐng)人:北京北大方正電子有限公司;北京大學(xué);北大方正集團(tuán)有限公司