專利名稱:基于圖集拼接的圖元填充方法及裝置的制作方法
技術領域:
本發明涉及圖形圖像處理領域,尤其涉及一種基于圖集拼接的圖元填充方法 及裝置。
背景技術:
特殊顏色空間族類是在基本色彩空間基礎上添加如重復和漸變的圖集
(patterns)、顏色表(color mapping)、 專色(Separations )、 高寸呆真(high-fidelity)或 多頻聲顏色(multi-tone color)等特性后得到的顏色空間族類。
在特殊顏色空間族類中包含圖集(Pattern)顏色空間族,索引(Index)顏 色空間族,專色(Separation)顏色空間族,多設備通道(DeviceN )顏色空間 族等顏色空間族。其中Pattem顏色空間族的特點是在進行目標頁面中圖元(線 段、字符輪廓、圖形、位圖等)的繪制操作時,可以用圖集拼接(Tilingpattern) 或圖集漸變(Shading pattern)的方式而不是用單一顏色來填充該圖元所確定的 目標填充區域。
其中,圖集拼接是在pattern cell所在的坐標系的水平和垂直方向上,分別 將同 一圖集單元(pattern cell)以固定間隔距離復制,在目標頁面坐標系內表現為 將同一圖集單元按照一定規律進行偏移復制,從而實現對目標區域的填充。 請參照附圖1,頁面解析輸出程序使用圖集拼接方式填充圖元的過程如下 前端解釋模塊ioi讀取頁面描述文件,獲得目標頁面的相關信息,當遇到 指示用圖集拼接方式填充圖元的操作符時,圖集單元信息解析模塊104對pattern cell進行解析處理,得到pattern cell的相關信息,如標記該pattern cell邊界的左 下角位置參數(x, y )、寬度參數(w )、高度參數(h )、標記該pattern cell在pattern 坐標系中的水平或垂直坐標軸上單次平移距離的步長值、pattern cell所在的pattern坐標系的當前轉移矩陣(CTM, Current Transformation Matrix)等#"息。 此后點陣數據生成模塊105對pattern cell進行光柵化點陣處理,得到pattern cell 點陣數據,將上述pattern cell的相關信息及pattern cell點陣數據存入Pattern管 理器中;
此后,圖元信息解析模塊102讀取圖元的相關信息,根據圖元邊界確定目 標填充區域;
最后,在進行圖元的填充操作時,填充功能模塊103讀取Pattern管理器中 的pattern cell點陣數據及其pattern cell的相關信息,進行目標填充區域的平鋪 操作。其中pattern cell平鋪操作是指逐次確定pattern cell點陣數據的預期鋪入 區域與目標填充區域的交集區域,并把處于該交集區域中的pattern cell點陣數 據部分復制到目標填充區域中的該交集區域中的過程。
附圖2a是使用圖集拼接方式填充目標填充區域的 一個實例 圖中的矩形陰影區域為目標頁面,其中的菱形區域為由圖元所確定的目標 填充區域,X、 Y坐標軸分別為pattern坐標系中的 K平和垂直方向。key pattern cell所在的區域是根據pattern cell的相關信息,而確定的pattern cell進行平鋪的 基準區域。
為了能夠填充整個目標填充區域,需要確定pattern cell點陣數據在pattern 坐標系中以key pattern cell的左下角坐標為基準,在水平和垂直方向上逐次附加 一個步長值后映射到目標頁面的預期區域。圖2a中的pattern cell 1為pattern cell 點陣數據以key pattern cell左下角坐標為基準,在水平方向上附加一個步長值dX 后的預期鋪入區域,同理,pattern cell 2為pattern cell點陣數據在垂直方向上附 加一個步長值dY, pattern cell 3為pattern cell點陣數據在垂直方向附加一個步長 值dY并在水平方向上附加一個步長值dX后的預期鋪入區域。分別確定key pattern cell、 pattern celll pattern cel13與目標填充區i或的交集區i或,并把處于交 集區域中的pattern cell點陣數據部分復制到目標填充區域中的交集區域中。通 過以上搡作,就完成了使用同一 pattern cell點陣數據對目標填充區域進行填充 的目的。圖2a中的pattern cell點陣數據中真正用于繪制目標填充區域的那部分點陣 數據在全部pattern cell點陣數據中的位置如圖2b中的陰影部分所示,即圖2b 中的陰影區域所示的點陣數據部分對于繪制目標填充區域才是有效的,而陰影 區域之外所示的點陣數據部分對于目標填充區域的繪制操作則是無效的。
從上述繪制過程可見,對于繪制目標填充區域而言,在經光柵化點陣處理 后得到的pattern cell點陣數據中,可能僅有一部分pattern cell點陣數據對于繪 制目標填充區域是有效的,因此當對于繪制目標填充區域而言無效的點陣數據 所占的比例過大時,將導致在對pattern cell進行光柵化點陣處理時,生成大量 無效的pattern cell點陣數據,從而導致用于存儲光柵化點陣數據的存儲資源浪 費。此外,當設備的分辨率較高或者pattern cell點陣數據本身所描述的邊界區 域較大時,由于在光柵化處理生成全部pattern cell點陣數據將占用大量的內存 資源,也會導致系統將因無法申請到足夠的內存資源而致使生成pattern cell點 陣數據失敗。
發明內容
本發明實施例提供一種基于圖集拼接的圖元填充方法,以避免基于同 一圖 集單元點陣數據填充目標頁面中的圖元時,生成和存儲無效的圖集單元點陣數 據會浪費系統存儲資源的問題。
相應的,本發明實施例還提出了一種基于圖集拼接的圖元填充裝置。
一種基于圖集拼接的圖元填充方法,包括
根據圖集單元和目標頁面的尺寸信息,確定出圖集單元的尺寸大于目標頁 面的尺寸時,確定所述圖集單元預期依次鋪入到目標頁面時分別與目標頁面存 在的各個交集區域;以及
根據確定出的各個交集區域,在所述圖集單元中分別分割出包含交集區域 的子圖集單元;
分別對分割出的各個子圖集單元進行點陣化處理;
基于點陣化處理后的各個子圖集單元的點陣數據,來實現對所述目標頁面中圖元的填充。
一種基于圖集拼接的圖元填充裝置,包括
第 一確定單元,用于確定圖集單元在目標頁面坐標系中的寬度或高度是否 大于目標頁面的寬度或高度;
第二確定單元,用于在第一確定單元的確定結果為是時,確定所述圖集單
元預期依次鋪入到目標頁面時分別與目標頁面存在的各個交集區域;
第一分割單元,用于根據第二確定單元所確定出的各交集區域,在所述圖
集單元中分別分割出包含交集區域的子圖集單元;
點陣化處理單元,用于分別對第一分割單元分割出的各個子圖集單元進行 點陣化處理;
圖元填充單元,用于基于點陣化處理單元點陣化處理得到的各個子圖集單 元的點陣數據,來實現對所述目標頁面中圖元的填充。
本發明實施例通過從圖集單元中分割出子圖集單元,其中子圖集單元的寬 度和高度均小于圖集單元的寬度和高度,并且對子圖集單元進行點陣化處理所 得到的子圖集單元中的點陣數據中包含了對于填充目標填充區域有效的點陣數 據,減少了點陣化過程中所需的內存量,并且減少了生成無效點陣數據造成的 內存資源浪費。
圖1為現有技術中頁面解析輸出程序使用圖集拼接方式填充圖元的過程示 意圖2a為現有技術中使用pattern cell點陣數據對目標頁面進行填充的示意圖; 圖2b是填充目標頁面中的圖元所需的有效pattern cell點陣數據部分的示意
圖3為本發明實施例中基于圖集拼接的圖元填充方法的流程圖; 圖4a為使用本發明提出的方法將pattern cell分割為多個子pattern cell的示 意圖;圖4b為在圖4a基礎上,劃分出的多個子pattern cell在原pattern cell中的位 置示意圖5a為第一平鋪類型情況下,合并子Pattern cell的過程示意圖; 圖5b為在圖5a基礎上,區域l、 2、 4在pattern cell中的位置示意圖; 圖6a為pattern cell 一皮分為4個子pattern cell的示意圖; 圖6b為在圖6a基礎上,4個子pattern cell在原pattern cell中的位置示意圖; 圖7a為第二平鋪類型情況下,確定圖集單元預期依次鋪入到目標頁面時分 別與目標頁面存在的各個交集區域的示意圖7b為在圖7a基礎上,各個子pattern cell在pattern cell中的位置示意圖; 圖7c為在圖7b基礎上,所有子pattern cell在pattern cell中的公共矩形區域 示意圖7d為對圖7c中的公共矩形區域進行分割后的示意圖7e為在圖7b基礎上,各個子pattern cell的重疊區域示意圖7f為在圖7e基礎上,各個子pattern cell經信息剪裁后的狀態示意圖8a為 一個黑色圖集單元pattern cell的示意圖8b為基于圖8a所示的pattern cell點陣數據進行預期平鋪的效果示意圖; 圖8c、圖8d為在圖8b基礎上,各子pattern cell的示意圖; 圖8e、圖8f、圖8g和圖8h為在圖8b基礎上,對存在重疊區域的子pattern cell進行處理,得到不含重疊區域的子pattern cell的示意圖,以及對子pattern cell
進行分割的示意圖9為本發明實施例中基于圖集拼接的圖元填充裝置的示意圖; 圖10為本發明實施例中重疊區域處理單元的示意圖。
具體實施例方式
下面將結合各個附圖對本發明實施例的主要實現原理及其具體實施情況進 4亍詳細的4苗述。
請參照圖3,該圖是本發明提出的基于圖集拼接的圖元填充方法的原理流程圖,其主要實現過程如下
在步驟10中,根據圖集單元和目標頁面的尺寸信息,這里尺寸信息是指寬 度或高度信息,確定出圖集單元的寬度大于目標頁面的寬度或圖集單元的高度
大于目標頁面的高度,進行步驟20;
在步驟20中,確定所述圖集單元預期依次鋪入到目標頁面時分別與目標頁 面存在的各個交集區域,進行步驟30;
在步驟30中,根據步驟20確定出的各個交集區域,在所述圖集單元中分 別分割出包含交集區域的子圖集單元;
步驟40,分別對步驟30中得到的子圖集單元進行點陣化處理;
步驟50,通過基于步驟40所得到的各個子圖集單元的點陣數據,來實現對 所述目標頁面中圖元的填充。
實施例一請參照圖4a,該圖是使用本發明提出的方法將pattem cell分割 為多個寬度、高度均小于目標頁面寬度、高度的子pattern cell的示意圖,其中 的矩形陰影區域為目標頁面,目標頁面中的菱形區域為由菱形圖元所確定的目 標填充區i或。
根據前端解釋所獲得的pattern cell的相關信息,可確定pattern cell所確定 的矩形區域的寬度和高度均大于目標頁面的寬度和高度,因此確定需要對pattern cell進行分割處理。
再根據pattern cell的相關信息中包括標記該pattern cell邊界的左下角位置 參數、寬度參數、高度參數的信息及當前轉移矩陣信息確定pattern cell點陣數 據鋪入目標頁面時的預期位置,如key pattern cell所示。為了實現對目標頁面的 填充,需要在pattern cell坐標系的水平和垂直方向上以key pattern cell左下角坐 標為基準各進行一次平移,平移間隔距離分別為水平和垂直方向上的步長值dX、 dY,預期的平移后的狀況如圖4a中的pattern celll、 pattern cell2、 pattern cell3 所示。
在此基礎上確定pattern cell的預期鋪入區域key pattern cell、 pattern celll 、 pattern cel12 、 pattern cel13與目標頁面的交集區域,分別為陰影區域0 、 1 、 2 、 3 ,從而確定出陰影區域0 、 1 、 2 、 3即為4個要在pattern cell中分別分割出的子pattern cell。
需要說明的是在上述操作中pattern cell并沒有被光柵化成點陣數據,子 patterncell的相關信息,如標識子pattern cell左下角位置坐標、寬度、高度的參 數信息可以根據pattern cell的相關信息及目標頁面信息經過數值計算得到。子 pattern cell具有與pattern cell相同的坐標轉移矩陣CTM和平移步長值。
經上述處理得到的多個子pattern cell在原pattern cell中的位置如圖4b中的 陰影區域所示,根據上述子pattern cell的相關信息,經后續光柵化處理后生成 的子pattern cell的點陣數據與根據分割前的pattern cell信息生成的點陣數據相 比,有效的減少了對于填充目標填充區域無效的點陣數據的數量,從而少了光 柵化處理所需生成的點陣數據數量,因此減少了光柵化處理生成點陣數據時所 需耗費的內存量,降低了生成點陣數據時的失敗幾率。
按照上述將pattern cell平移后的預期鋪入區域與目標頁面的交集區域作為 子pattern cell的方法,得到的各個子pattern cell在pattern cell中的位置可能存在 重疊的情況,因此需要對存在重疊的子圖集單元進行處理,以保證處理后的所 有子pattern cell不包含重復區域、后續生成的所有子pattern cell點陣數據中不 包含重復的點陣數據。
以下介紹對存在重疊區域的子pattern cell進行處理的過程,目的是避免經 后續的光柵化點陣操作后,得到的多個子pattern cell的點陣數據中可能包含相 同點陣數據的情況。
按照pattern cell點陣數據平鋪目標填充區域時位移的方向,可以將pattern cell點陣數據平鋪目標填充區域的方式分為以下2類
第一平鋪類型pattern cell點陣數據平鋪目標填充區域時,復制位移的方向 (即pattern坐標系的水平和垂直方向)與目標頁面的水平或垂直方向相同;
第二平鋪類型patterncell點陣數據平鋪目標填充區域時,復制位移的方向 (即pattern坐標系的水平和垂直方向)與目標頁面的^^平或垂直方向不同。
在使用實施例一中方法得到的子pattern cell中,若存在第一子pattern cell的邊界矩形區域完全包含第二子pattern cell邊界矩形區域的情況,可以將第一 子pattern cell和第二子pattern cell合并為第 一子pattern cell, "i奪第—pattern cell 作為處理后的子pattern cell,具體如實施例二所示。該方法可以同時適用于上述 第一平鋪類型和第二平鋪類型。
實施例二請參照圖5a,該圖是第一平鋪類型情況下,生成子Pattern cell 的過程示意圖,圖5a中的坐標軸為pattern cell點陣數據復制位移的方向,與目 標頁面的水平和垂直方向相同。
key pattern cell是pattern cell點陣數據鋪入目標頁面未經平移時的預期位 置,圖中的陰影矩形區域為目標頁面。為了實現對目標頁面的填充,pattern cell 需要在垂直方向上以步長值dY平移3次,具體操作過程與前一實施例相同。基 礎圖集單元key pattern cell和平移后的Pattern cell分別與目標頁面相交的區域為 陰影區域l、 2、 3、 4,區域l、 2、 4在pattern cell中的位置如圖5b所示,區域 1、 4均在區域2的范圍內,是區域2的子集,區域2與區域3等同,因此只需 生成一個邊界如區域2的子pattern cell即可。
對于在pattern cell中的邊界矩形區域不存在相互包含情況,但具有相互重 疊區域的子pattern cell,根據不同的平鋪類型,分別使用實施例三、實施例四中 提出的方法進行處理
實施例三請參照圖6a, pattern cell被分為4個子pattern cell,即圖中的 陰影區域l、 2、 3、 4后,子pattern cell在pattern cell中的位置如圖6b中的陰 影區域所示,其中陰影區域l、 2相互獨立,且不相互包含,但仍然可以將陰影 區域l、 2合并為一個子pattern cell。此子pattern cell為陰影區域1 、 2的并集, 高度為目標頁面的高度,寬度為陰影區域l、 2的寬度。將上述方法推廣可知, 當pattern cell鋪入目標頁面時進行平移的方向與目標頁面所在空間的水平和垂 直方向一致時(第一平鋪類型),可以將所有在patterncell內存在相互重疊區域 的子pattern cell的并集作為處理后的子pattern cell。
實施例四請參照圖7a,該圖是第二平鋪類型情況下,對具有重疊區域的 子pattern cell進行處理的過程示意圖,圖7a中陰影矩形為目標頁面,坐標軸為pattern cell點陣數據復制位移的方向,與目標頁面的水平和垂直方向不同。
按照與實施例一、實施例二相類似的方法,將pattern cell點陣數據依次平 移后的預期鋪入區域與目標頁面的交集區域所確定的矩形區域作為子pattern cell,如圖7a中的3個虛線矩形所示,得到3個子pattern cell,分別為子pattern cell 0、子pattern cell 1 、子pattern cel12,上述子pattern cell在pattern cell中的位 置如圖7b中的陰影區域所示,是存在相互重疊區域的。
有兩種方案實現第二平鋪類型中,對具有重疊區域的子pattern cell進行處 理,處理后所生成的子pattern cell不包含重復區域 方案一
確定所有具有重疊區域的子pattern cell在pattern cell中的公共矩形區域, 即上述子pattern cell的并集矩形區域,如圖7c中的陰影矩形所示;
根據目標頁面的寬度dW和高度dH對上述所有子pattern cell在pattern cell 中的邊界矩形的并集矩形區域,進行分割處理,如圖7d所示;
將經過上述分割處理得到的矩形區域a、 b、 c、 d作為處理后的子pattern cell。
方案二
分別確定具有重疊區域的每個子pattern cell的裁剪信息,以保證在具有同 一重疊區域的子pattern cell中,只有 一個子pattern cell中保留該重疊區域。 確定每個子pattern cell裁剪信息的具體方法如下
確定每個子pattern cell與其他子pattern cell具有交集重合區域的數量,才艮 據每個子pattern cell與其他子pattern cell的交集重合區域的數量,按照由少到 多的順序,對所有子pattern cell進行排序,請參照圖7b,在本實施例中,子pattern cell. 0與其它子pattern cell的交集重合區域的數量是2, pattern cell 1與其它子 pattern cell的交集重合區域的數量是1,pattern cell 2與其它子pattern cell的交集 重合區域的數量是l,因此排序后得到的子pattern cell序列是(pattern cell 1、 pattern cell 2 、 pattern cell 0}。
針對上述排序中的每個子pattern cell,將該子pattern cell與上述排序中在該 子pattern cell后的其它子pattern cell的交集區域的相關信息作為該子pattern cell的裁剪信息。請參照圖7e,子pattern cell 1的裁剪信息是其分別與子pattern cell 2、子pattern cell 0的交集重合區域,即矩形區域e的信息。子pattern cell 2的裁 剪信息是其與子pattern cell 0的交集重合區域,即矩形區域f的信息。子pattern cell 0無裁剪信息,各個子pattern cell經信息剪裁后的狀態如圖7f所示。
在經光柵化處理后得到的點陣數據中,每個像素的點陣數據包含兩部分內 容第一部分是顏色內容數據,使用8bit或24bit數據描述該像素的顏色信息; 第二部分是掩碼(Mask)數據,使用lbit數據指明在使用本像素顏色信息填充 目標頁面時是否替代目標頁面中該位置上的原有信息,若掩碼數據為O,則指明 不替代目標頁面中該位置上的原有信息,若掩碼數據為1則指明用pattern cell 上該像素的顏色信息替代目標頁面中該位置上的原有信息。
上述裁剪信息用于在后續光柵化處理生成子pattern cell點陣數據時,將該 裁剪信息所描述的區域內的所有像素的點陣數據中的掩碼數據置為0,因此在后 續光柵化處理后,所有子pattern cell都不含有重復的點陣數據。圖7f描述了采 用上述方法進行合并后,在后續光柵化處理后生成的子pattern cell點陣數據中 掩碼數據非o的點陣數據區域。
在本實例中,采用方案一和方案二的方法對子pattern cell進行處理后,所 生成的所有子pattern cell都不包含重復的pattern cell點陣數據。
以下通過介紹實施例五,對將pattern cell分割為多個子pattern cell,并使用 子pattern cell的點陣數據進行目標填充區域填充繪制的過程進行說明
通常彩色頁面繪制時應分別繪制青色、品紅色、黃色、黑色四個版,在此 為了描述簡明,僅選取其中的黑色版進行說明。
現有如圖8a所示的圖集單元pattern cell,所占像素大小為672 x 653 (寬 度x高度)。其中的平行四邊形陰影區域為掩碼數據為1的點陣數據的邊界區域, 使用pattern cell進行目標填充區域的填充,實際上是使用pattern cell中掩碼數 據為1的點陣數據進行目標填充區域的填充。
附圖8b描述了 pattern cell點陣數據的預期平鋪效果。其中,中間部位的淺 色陰影區域為目標頁面,目標頁面所占像素大小為384 x 448 (寬度x高度)。在本實施例中,pattern坐標系的坐標方向即pattern cell點陣數據鋪入目標頁面時 的平移方向與目標頁面的水平和垂直方向不一致。
步驟1,將pattern cell分割為若干個子pattern cell。根據附圖8b所示的目 標頁面左下角的位置坐標、高度、寬度信息和pattern cell鋪入目標頁面時的預 期狀況,確定目標頁面的右上角與預期平鋪至頁面上的Pattern cell的交集區域 為Pl, PI所在的邊界矩形區域在目標頁面坐標系中的位置坐標為[163, 199, 383, 447]([左下角的橫坐標,左下角的縱坐標,右上角的橫坐標,右上角的縱 坐標]),同理確定目標頁面左上角、中間部分、右下角、左下角與預期平鋪至頁 面上的pattern cell邊界區域的交集部分為P2 P5, P2 P5所在的邊界矩形在目標 頁面坐標系中的位置坐標分別為[163, 199, 383, 447〗,
,
, [123, 0, 383, 198],
。
根據CTM,對上述P1 P5在目標頁面坐標系中的位置坐標進行坐標變換, 得到上述位置坐標在pattern坐標系中對應的在pattern cell邊界矩形中以pattern cell左下角為原點的位置坐標,分別為[480,0,671,208], [160,107,575,554],
, [512,454,671,652]。圖8c描述了子pattern cell PI 、 P2、 P4、 P5 在pattern cell邊界矩形區域內的位置,圖8d描述了子pattern cell P3在pattern cell 邊界矩形區域內的位置。
請參照圖8c、 8d,子pattern cell P1 P5在pattern cell邊界矩形區域內的矩 形區域存在相互重疊但不存在互相包含的情況,因此可以^使用實施例四中的兩 種方案進行處理。下面是使用實施例四中第一種方案對具有重疊區域的子pattem cell P1 P5進行處理的具體過程,如圖8e所示,確定子pattern cell P1 P5的并集 區域在pattern cell邊界區域內的矩形區域為
,由于并集區域的寬度 和高度大于目標頁面的寬度和高度,因此根據目標頁面的寬度DW和高度DH 對并集區域進行劃分,得到4個子pattern cell P11 P 14,其在pattern cell邊界區 域內的矩形區域位置坐標分別為[O, 0, 383, 447], [384, 0, 671, 447],
, [384,448,671 ,652]。
子pattern cell的平移步長值、CTM信息與分割前的pattern cell相同,將子pattern cell P11 P14的上述信息存入Pattern管理器中。
以下是使用實施例四中第二種方案對存在重疊區域的子pattern cell P1 P5 進行處理的過程。為了便于與采用第 一種方案的到的子pattern cell進行區分, 這里將P1 P5重命名為子pattern cell P21 P25。 P21、 P22、 P24、 P25分別與P23 具有交集區域,按照子pattern cell與其它子pattern cell的交集區域數量由少到 多的順序,排序后的序列是(P21, P22, P24, P25, P23}。
P21與P23的交集區域的邊界矩形位置坐標是[160,107,223,248];P22與P23 的交集區域的邊界矩形位置坐標是[480,107,575,208]; P24與P23的交集區域的 邊界矩形位置坐標是[160,454,287,554]; P25與P23的交集區域的邊界矩形位置 坐標是[512,414,575,554],因此P21 、 P22 、 P24 、 P25的裁剪信息分別為 [160,107,223,248]、 [480,107,575,208]、 [160,454,287,554]、 [512,414,575,554], P3 無裁剪信息。
在后續的光柵化操作中,根據上述子pattern cell的相關信息及裁剪信息得 到的子pattern cell的點陣數據中掩碼數據非0的點陣數據的邊界區域如圖8f所 示,P21 P25中已經沒有相同的點陣數據。
并將子pattern cell P21 P25的相關信息及其對應的裁剪信息存入Pattern管 理器。
步驟2,根據pattern cell管理器中子pattern cell的相關信息,經過光柵化處 理,得到子pattern cell的點陣數據。
在進行光柵化處理之前,需要調整每個子pattern cell的CTM,在水平或垂 直方向上進行平移,使得每個子pattern cell的左下角坐標為(0, 0)。此時,根 據子pattern cell的相關信息,確定生成子pattern cell點陣數據時所需占用的內 存量,若生成子pattern cell點陣數據時所需占用的內存量大于系統所分配的內 存量,可以對子pattern cell進一步進行分割。
例如,系統可分配的內存量為4兆(M),在步驟1中采用第一種方案得到 的子pattern cell PI 1 P14中,生成P12、 P13、 P14的點陣數據所需占用的內存 量均小于4M,而生成Pll的點陣數據時所需占用的內存空間大于4M。在垂直方向上,將P11分割為S1、 S2兩個子pattern cell, Sl、 S2的矩形邊界區域的位 置坐標分別為[O, 336, 383, 447]、
,如圖8g所示。
在步驟1中采用第二種對具有重疊區域的子pattern cell進行處理的方案得到 的子pattern cell P21 P25中,生成P21、 P22、 P24、 P25的點陣數據所需占用的 內存量均小于4M,而生成P23的點陣數據時所需占用的內存空間大于4M。在 垂直方向上,將P23進一步分割為Sl、 S2兩個子pattern cell, Sl、 S2的矩形邊 界區域的位置坐標分別為[O, 304, 383, 447]、
,如圖8h所示。
步驟3:從Pattem管理器中讀取子patterncell的相關信息及點陣數據,根據 pattern cell相關信息,使用子pattern cell的點陣數據進行目標填充區域的填充繪 制操作。
在進行子pattern cell點陣數據平鋪操作之前,先確定子pattern cell的預期鋪 入區域與目標填充區域是否有交集,若是,則將子pattern cell的點陣數據平鋪 的目標填充區域中;否則,不進行平鋪操作。當子pattern cell進一步被分為多 個子pattern cell時,確定在由該子pattern cell分割成的所有子pattern cell中,每 個子pattern cell與目標填充區域是否有交集,若是,則將該子pattern cell的點
陣數據平鋪的目標填充區域中;否則,不進行平鋪操作。
在本實施例中,使用第 一種對具有重疊區域的子pattern cell進行處理的方案 生成的子pattern cell進行目標填充區域繪制時,逐次確定P11 P14與目標填充 區域是否有交集,若是,則將子pattern cell的點陣數據鋪入目標填充區域,當 判斷Pll與目標填充區域是否有交集時,分別判斷Sll、 S12與目標填充區域是 否有交集,若是,則將Sll或S12的點陣數據鋪入目標填充區域;若以上判斷 結果為否,則不進行鋪入操作。
使用第二種對具有重疊區域的子pattern cell進行處理的方案生成的子pattern cell進行目標填充區域繪制時,逐次確定P21 P25與目標填充區域是否有交集, 若是,則將子pattern cell的點陣數據鋪入目標填充區域,當判斷P23與目標填 充區域是否有交集時,分別判斷S21、 S22與目標填充區域是否有交集,若是, 則將S21或S22的點陣數據鋪入目標填充區域;若以上判斷結果為否,則不進行鋪入操作。
本發明實施例提出的方法在繪制圖元時,對過大的pattern cell進行逐級分 割,先將pattern cell分割成若干個的子pattern cell,再對點陣化處理時占用內存 量較大的子pattern cell再次進行分割。通過上述方法有效的減少了光柵化處理 生成pattern cell點陣數據時所占用的內存資源,解決了在印刷和桌面打印時因 pattern cell描述的邊界區域過大而造成常因內存資源不足,而致使不能正常生成 pattern cell點陣數據的問題。在實際進行圖元填充時也省去了復制無效點陣數據 而消耗的時間,從而也加快了圖元繪制的速度。
相應地,本發明實施例還提供了一種基于圖集拼接的圖元填充裝置。請參 照附圖9,該裝置包括
第 一確定單元910,用于確定圖集單元在目標頁面坐標系中的寬度或高度是 否大于目標頁面的寬度或高度;
第二確定單元920,用于在第一確定單元的確定結果為是時,確定所述圖集 單元預期依次鋪入到目標頁面時分別與目標頁面存在的各個交集區域;
第一分割單元930,用于根據第二確定單元所確定出的各交集區域,在所述 圖集單元中分別分割出包含交集區域的子圖集單元;
點陣化處理單元940,用于分別對第一分割單元分割出的各個子圖集單元進 行點陣化處理;
圖元填充單元950,用于通過基于點陣化處理單元點陣化處理得到的各個子 圖集單元的點陣數據來實現對所述目標頁面中圖元的填充。
進一步,該裝置還包括重疊區域處理單元,用于在第一分割單元分割出的 各個子圖集單元存在重疊區域時,將分割出的存在重疊區域的子圖集單元處理 成不存在重疊區域的子圖集單元;以及
判斷單元,用于根據分割出的每個子圖集單元的寬度和高度信息,判斷每 個子圖集單元在點陣化處理過程中所需占用的內存量是否大于預先分配的內存
量;
第二分割單元,用于在判斷單元的判斷結果為是時,對點陣化處理過程中所需占用內存量大于預先分配的內存量的子圖集單元進行再次分割,其中再次 分割后得到的每個子圖集單元在點陣化處理過程中所需占用的內存量小于預先 分配的內存量。
以下給出了重疊區域處理單元的兩種實現方式 請參照附圖10,重疊區域處理單元具體包括
公共矩形區域確定子單元101,用于在所述圖集單元中,確定存在重疊區域 的至少兩個子圖集單元所在的公共矩形區域;
判斷子單元102,用于判斷公共矩形區域確定子單元確定的公共矩形區域的 高度和寬度是否均小于目標頁面的寬度和高度;
分割子單元103,用于在判斷子單元的判斷結果為否時,將公共矩形區域確 定子單元確定的公共矩形區域劃分成寬度和高度均小于目標頁面寬度和高度的 子矩形區域,并將劃分得到的每個子矩形區域分別作為重新分割出的子圖集單 元。
此外,重疊區域處理單元也可以通過將存在重疊區域的至少兩個子圖集單 元中的一個子圖集單元保持不變,以及分別將其他子圖集單元中的所述重疊區 域設置為剪裁區域,來實現將分割出的存在重疊區域的子圖集單元處理成不存 在重疊區域的子圖集單元。
員根據本發明的技術方案與本領域的公知技術相結合得出其他的實施方式,同 樣屬于本發明的技術創新范圍。
權利要求
1、一種基于圖集拼接的圖元填充方法,其特征在于,包括根據圖集單元和目標頁面的尺寸信息,確定出圖集單元的尺寸大于目標頁面的尺寸時,確定所述圖集單元預期依次鋪入到目標頁面時分別與目標頁面存在的各個交集區域;以及根據確定出的各個交集區域,在所述圖集單元中分別分割出包含交集區域的子圖集單元;分別對分割出的各個子圖集單元進行點陣化處理;基于點陣化處理后的各個子圖集單元的點陣數據,對所述目標頁面中的圖元進行填充。
2、 如權利要求l所述的方法,其特征在于,還包括在分割出的各個子圖集 單元存在重疊區域時,將分割出的存在重疊區域的子圖集單元處理成不存在重 疊區域的子圖集單元。
3、 如權利要求l所述的方法,其特征在于,還包括根據分割出的每個子圖集單元的寬度和高度信息,判斷每個子圖集單元在 點陣化處理過程中所需占用的內存量是否大于預先分配的內存量;以及對點陣化處理過程中所需占用內存量大于預先分配的內存量的子圖集單元 進行再次分割,其中再次分割后得到的每個子圖集單元在點陣化處理過程中所 需占用的內存量小于預先分配的內存量。
4、 如權利要求l所述的方法,其特征在于,確定所述圖集單元預期依次鋪 入到目標頁面時分別與目標頁面存在的各個交集區域,具體包括在目標頁面所在的坐標系中,根據所述圖集單元的左下角位置參數、寬度 參數、高度參數,確定所述圖集單元預期鋪入目標頁面時的基準位置;從所述基準位置開始,在圖集單元所在的坐標系的水平和垂直方向上,將 所述圖集單元分別進行對應步長值的平移處理,確定所述圖集單元預期依次鋪 入到目標頁面時分別與目標頁面存在的各個交集區域。
5、 如權利要求2所述的方法,其特征在于,將分割出的存在重疊區域的子圖集單元處理成不存在重疊區域的子圖集單元,具體包括在所述圖集單元中,確定存在重疊區域的至少兩個子圖集單元所在的公共 矩形區域;判斷所述公共矩形區域的高度和寬度是否均小于目標頁面的寬度和高度, 若是,將所述公共矩形區域作為重新分割出的子圖集單元;否則,根據目標頁面的寬度和高度信息,將所述公共矩形區域劃分成寬度和高度 均小于目標頁面寬度和高度的子矩形區域,將劃分得到的每個子矩形區域分別 作為重新分割出的子圖集單元。
6、 如權利要求2所述的方法,其特征在于,將分割出的存在重疊區域的交 集區域處理成不存在重疊區域的交集區域,具體包括將存在重疊區域的至少兩個子圖集單元中的一個子圖集單元保持不變,以 及分別將其他子圖集單元中的所述重疊區域設置為剪裁區域。
7、 一種基于圖集拼接的圖元填充裝置,其特征在于,包括第 一確定單元,用于確定圖集單元在目標頁面坐標系中的寬度或高度是否 大于目標頁面的寬度或高度;第二確定單元,用于在第一確定單元的確定結果為是時,確定所述圖集單 元預期依次鋪入到目標頁面時分別與目標頁面存在的各個交集區域;第一分割單元,用于根據第二確定單元所確定出的各交集區域,在所述圖 集單元中分別分割出包含交集區域的子圖集單元;點陣化處理單元,用于分別對第一分割單元分割出的各個子圖集單元進行 點陣化處理;圖元填充單元,用于通過基于點陣化處理單元點陣化處理得到的各個子圖 集單元的點陣數據來實現對所述目標頁面中圖元的填充。
8、 如權利要求7所述的裝置,其特征在于,還包括 重疊區域處理單元,用于在第一分割單元分割出的各個子圖集單元存在重疊區域時,將分割出的存在重疊區域的子圖集單元處理成不存在重疊區域的子圖集單元。
9、 如權利要求7所述的裝置,其特征在于,還包括判斷單元,用于根據分割出的每個子圖集單元的寬度和高度信息,判斷每 個子圖集單元在點陣化處理過程中所需占用的內存量是否大于預先分配的內存量;第二分割單元,用于在判斷單元的判斷結果為是時,對點陣化處理過程中 所需占用內存量大于預先分配的內存量的子圖集單元進行再次分割,其中再次 分割后得到的每個子圖集單元在點陣化處理過程中所需占用的內存量小于預先 分配的內存量。
10、 如權利要求8所述的裝置,其特征在于,所述重疊區域處理單元具體 包括公共矩形區域確定子單元,用于在所述圖集單元中,確定存在重疊區域的 至少兩個子圖集單元所在的公共矩形區域;判斷子單元,用于判斷公共矩形區域確定子單元確定的公共矩形區域的高 度和寬度是否均小于目標頁面的寬度和高度;分割子單元,用于在判斷子單元的判斷結果為否時,將公共矩形區域確定 子單元確定的公共矩形區域劃分成寬度和高度均小于目標頁面寬度和高度的子 矩形區域,并將劃分得到的每個子矩形區域分別作為重新分割出的子圖集單元。
11、 如權利要求8所述的裝置,其特征在于,所述重疊區域處理單元通過 將存在重疊區域的至少兩個子圖集單元中的一個子圖集單元保持不變,以及分 別將其他子圖集單元中的所述重疊區域設置為剪裁區域,來實現將分割出的存 在重疊區域的子圖集單元處理成不存在重疊區域的子圖集單元。
全文摘要
本發明公開了一種基于圖集拼接的圖元填充方法及裝置,以避免生成和存儲無效的圖集單元點陣數據會浪費系統存儲資源的問題。該方法根據圖集單元和目標頁面的尺寸信息,確定出圖集單元的尺寸大于目標頁面的尺寸時,確定所述圖集單元預期依次鋪入到目標頁面時分別與目標頁面存在的各個交集區域;以及根據確定出的各個交集區域,在所述圖集單元中分別分割出包含交集區域的子圖集單元;分別對分割出的各個子圖集單元進行點陣化處理;基于點陣化處理后的各個子圖集單元的點陣數據,來實現對所述目標頁面中圖元的填充。
文檔編號G06T11/40GK101408989SQ20081022433
公開日2009年4月15日 申請日期2008年10月17日 優先權日2008年10月17日
發明者孟張偉, 好 林, 黃渭平 申請人:北大方正集團有限公司;北京大學;北京北大方正電子有限公司