專利名稱:屏幕上顯示的字型排列的調(diào)整方法與裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種屏幕上顯示的字型排列的調(diào)整方法與裝置。
背景技術(shù):
具有顯示功能的各種電子裝置一般都會利用屏幕上顯示(On Screen Display,OSD)來傳達各種信息給使用者,以方便使用者使用與設(shè)定此電子裝置。舉例來說,像是電視的音量、頻道、色彩等信息、個人計算機監(jiān)視器的亮度、顯示區(qū)域、垂直與水平掃描頻率等信息、以及數(shù)字相機液晶顯示的光圈、快門、焦距等信息。此外,由于科技信息產(chǎn)業(yè)的成熟發(fā)展,使用者也越來越要求美觀的外型與設(shè)計,而屏幕上顯示更是使用者直接接觸該項電子產(chǎn)品的一個使用者接口,因此如何讓使用者能快速、清楚、并且舒適地閱讀屏幕上顯示所呈現(xiàn)的信息,便成了一個相當(dāng)重要的課題。
基于成本與設(shè)計上的考慮,一般具有屏幕上顯示功能的電子裝置并不會配置太多的內(nèi)存容量。最常見的屏幕上顯示使用點陣字型(Bitmap Font)作為字型的格式,例如使用寬12個點(pixel)與高18個點的12*18方塊字。然而點陣字型的每一個字符為固定的寬度,以方便電子裝置的讀取與輸出至屏幕上顯示。然而傳統(tǒng)的點陣字型會因為每個字符的差異產(chǎn)生排列不整齊而使得輸出的結(jié)果不美觀且不方便閱讀。圖1所示為現(xiàn)有的屏幕上顯示結(jié)果。由圖1所顯示的結(jié)果可以看到,對顯示裝置來說,每個輸出的字符雖然都是固定寬度的字符,但是對使用者來說,看到的卻是間隔不同的排列方式。傳統(tǒng)的點陣字型將字型中每個字符所實體顯示的部分居中排列。然而像圖1所示的范例,在固定寬度為12個點的字型中,“F”字符的實體顯示寬度占8個點,而“i”字符的實體顯示寬度卻僅占2個點。這造成了如圖中四個字符,具有D1、D2及D3的三種間距,不僅相當(dāng)?shù)牟幻烙^,且不易閱讀。
通常用來解決此種排列間距的現(xiàn)有方法是使用單字(word)或整句(sentence)為單位,而不使用字符(character)作為儲存字型的單位。雖然用這種方式可以得到較為整齊的排列,但是此種方式會隨著顯示信息的增加而增加內(nèi)存的使用量。這樣的方式不僅增加設(shè)計的復(fù)雜度,也增加制造的成本??梢?,現(xiàn)有的顯示方法存在以上缺陷,有待改進。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種自動調(diào)整字符間距,以字符為儲存單位,占用存儲量少、低成本的顯示方法與裝置。
本發(fā)明的主要技術(shù)方案是形成并輸出合成字符,以調(diào)整屏幕上顯示中的字型排列。
具體方案如下所述本發(fā)明揭示一種屏幕上顯示的字型排列的調(diào)整方法,用于輸出具有一個固定寬度的字符。該字符包含實體部分與冗余部分,且實體部分與冗余部分分別具有實體寬度與冗余寬度。將一字符的實體部分的至少一部分,結(jié)合至另一字符的冗余部分,以形成一個具有固定寬度的合成字符,且該二字符的實體部分間相距一段預(yù)定間隔。接著輸出該合成字符。
本發(fā)明亦揭示一種屏幕上顯示的字型排列的調(diào)整方法,用于輸出具有固定寬度的一個初始字符與一個附加字符。初始字符與附加字符都分別包含實體部分與冗余部分,且實體部分與冗余部分分別具有實體寬度與冗余寬度。將附加字符實體部分的至少一部分結(jié)合至初始字符的冗余部分,以形成一個具有固定寬度的合成字符,且附加字符與初始字符中二者的實體部分之間相距一段預(yù)定間隔。接著輸出合成字符。
本發(fā)明更揭示一種可調(diào)整屏幕上顯示的字型排列的裝置,其包含初始緩存器、附加緩存器、字型表、處理單元與輸出單元。字型表含有復(fù)數(shù)個具固定寬度的字符,且每一字符均具有實體部分與冗余部分,實體部分與冗余部分分別具有實體寬度與冗余寬度。處理單元與初始緩存器、附加緩存器及字型表連接,用以讀取M個字型表內(nèi)的字符,并將M個字符中的第一個字符存入初始緩存器作為一初始字符,其中M為正整數(shù)。另將M個字符中的第N個字符存入附加緩存器作為一附加字符,其中N為始于2且依序到M的一正整數(shù)。處理單元將附加字符實體部分的至少一部分結(jié)合至初始字符的冗余部分,以形成一個具有固定寬度的合成字符,且附加字符與初始字符二者的實體部分之間相距一段預(yù)定間隔。輸出單元與處理單元相連接,其中當(dāng)附加字符實體部分的至少一部分已將初始字符的冗余部分填滿時,則該輸出單元輸出合成字符。
本發(fā)明揭示的字型排列的調(diào)整方法與裝置,使用字符(而非單字或整句)作為儲存字型的單位,減少了內(nèi)存的使用量;同時,采用相鄰字符實體部分與冗余部分結(jié)合的方法,從而降低了設(shè)計的復(fù)雜度和制造的成本。
下面結(jié)合附圖和具體實施例對本發(fā)明作進一步詳細說明。
圖1顯示一種現(xiàn)有的屏幕字符輸出結(jié)果;
圖2A為本發(fā)明調(diào)整屏幕上顯示的字型排列的方法的一個具體實施例流程圖;圖2B至2E為本發(fā)明的具體實施例中字符的合成步驟示意圖;圖3為經(jīng)本發(fā)明具體實施例調(diào)整字型排列后的字符輸出結(jié)果;圖4為本發(fā)明調(diào)整屏幕上顯示的字型排列的方法的另一具體實施例的流程圖;圖5為本發(fā)明又一具體實施例的顯示裝置的方框圖。
具體實施例方式
圖2A所示為本發(fā)明調(diào)整屏幕上顯示的字型排列的方法的具體實施例流程圖,所顯示的是由具有固定寬度208的字符所構(gòu)成的字型。再如圖2B所示,本實施例中以輸出四個字符為例,其分別為字符210、220、230以及240。各字符210、220、230、240均具有實體部分212、222、232和242,以及冗余部分214、224、234和244。實體部分212、222、232及242分別具有實體寬度213、223、233及243;而冗余部分214、224、234及244則分別具有冗余寬度215、225、235及245。在本實施例中字符210、220、230及240的實體部分212、222、232及242均對齊靠向字型的左側(cè),至于冗余部分214、224、234和244則鄰接于各實體部分的右側(cè),然此可依實際應(yīng)用需求自由選擇實體部分與冗余部分的鄰接位置。
本實施例的方法開始于步驟201,首先讀取第一個字符210作為初始字符。接著在步驟202讀取另一個字符220作為附加字符。在步驟203中,將附加字符220的實體部分222結(jié)合至初始字符210的冗余部分214,以形成一個具有固定寬度208的合成字符260,其中附加字符220的實體部分222與初始字符210的實體部分212二者之間相距一段預(yù)定間隔250。在步驟204中,根據(jù)初始字符210及附加字符220的合成結(jié)果決定是否輸出合成字符260。當(dāng)決定輸出合成字符260時,則在步驟205中輸出合成字符260,并在步驟206更新初始字符;如果在步驟204決定不輸出合成字符,則直接進入步驟206進行更新初始字符。接著在步驟207中,決定是否已經(jīng)輸出完成;若字符尚未輸出完成,則回到步驟202讀取第二個附加字符,然后重復(fù)步驟202至步驟206。在本實施例中,會重復(fù)步驟202至步驟206,直到字符230及字符240被處理完畢后結(jié)束。
圖2C、2D與圖2E更進一步詳細說明本實施例中字符的合成步驟。在圖2C中,為了使合成字符260中字符210的實體部分212與字符220的實體部分222二者之間相距一段預(yù)定間隔,因此先將字符220的實體部分222向自身的冗余部分224進行向右平移,平移距離為初始字符210的實體寬度213與預(yù)定間隔250二者之和。然后將附加字符220的實體部分222結(jié)合至初始字符210的冗余部分214,形成一個合成字符260。在圖2D中,字符230為初始字符且字符240為附加字符。將附加字符240的實體部分242向自身的冗余部分244進行向右平移,平移距離為初始字符230的實體寬度232與預(yù)定間隔250二者之和。然后將附加字符240的實體部分242的一部分結(jié)合至初始字符230的冗余部分234,以形成合成字符262。
由于初始字符230的冗余部分234,已被附加字符240的經(jīng)平移后的實體部分242的一部分予以填滿,因此在步驟205中決定輸出合成字符262。當(dāng)合成字符262被輸出后,再在步驟206中將附加字符240的經(jīng)平移但未與初始字符230結(jié)合的剩余實體部分更新為初始字符。在本實施例中,字符240為最后一個要輸出的字符,故附加字符240中未與初始字符230結(jié)合的剩余實體部分會形成另一個合成字符264,并在步驟205中輸出此合成字符264,如圖2E所示。
圖3所示為經(jīng)本發(fā)明方法調(diào)整字型排列后的字符輸出結(jié)果。原先四個具有固定寬度208的字符210、220、230及240,經(jīng)處理后僅需輸出三個具相同固定寬度208的合成字符260、262與264,即可顯示出同樣的字符內(nèi)容,且各字符內(nèi)容間以一段預(yù)定間隔250作為間距。
在此需注意的是,本實施例以固定寬度208為12點的12*18方塊字,以及預(yù)定間隔250為一個點來作為說明范例,以便能更詳細的說明本發(fā)明。本發(fā)明更可應(yīng)用于任何固定寬度208的方塊字,并可設(shè)定任何的預(yù)定間隔250。此外,本實例中要輸出四個字符,故M即等于4;而N為始于2且依序到M的一正整數(shù),即為2、3及4。實際操作時可視需求來決定M的正整數(shù)值。
圖4所示為依照本發(fā)明另一具體實施例的流程圖。在本實施例中,本發(fā)明實施為一計算機可讀取的媒體。在此計算機可讀取的媒體中儲存有程序代碼,且此程序代碼可用于執(zhí)行圖4中所示的方法。在此需注意的是,此處所稱的計算機可讀取的媒體并非僅能由計算機來讀取其程序代碼,而是可以由任何具有讀取及處理其程序代碼的電子裝置來讀取并執(zhí)行。舉例來說,本實施例的計算機可讀取的媒體可為設(shè)置于顯示裝置內(nèi)的韌件(即軟件、硬件的結(jié)合體),且韌件上儲存有程序代碼供顯示裝置讀取并執(zhí)行其程序代碼。
圖4中的方法開始于步驟400,且用于輸出M個要顯示的字符。首先在步驟402讀取M個字符中的第一個字符作為初始字符,并將一參考旗標(biāo)值設(shè)定為初始字符的實體寬度。接著在步驟404,首先由N=2開始,讀取M個字符中的第N個字符作為附加字符,其中N為始于2且依序到M的一正整數(shù)。在步驟406中,將附加字符的實體部分向右平移一段與參考旗標(biāo)值相同的距離。再于步驟408將平移后的附加字符與初始字符以O(shè)R的方式結(jié)合,形成一個合成字符,然后在步驟410將參考旗標(biāo)值設(shè)定為初始字符的實體寬度、一段預(yù)定間隔及附加字符的實體寬度等三者的總和。在步驟420中,進行參考旗標(biāo)值是否小于特定寬度的判斷,在此實施例中,該特定寬度即為M個字符的固定寬度。
當(dāng)參考旗標(biāo)值小于該特定寬度時,則直接跳至步驟470(步驟470在后文詳細描述);如果參考旗標(biāo)值不小于該特定寬度時,即進入步驟430輸出該合成字符。接著在步驟440將參考旗標(biāo)值減去該特定寬度,并在步驟450中判斷該減去后的參考旗標(biāo)值是否為零。當(dāng)參考旗標(biāo)值不等于零時,則在步驟460中如步驟404地再次讀取M個字符中的第N個字符。以第N個字符的實體寬度減去參考旗標(biāo)值,再將此運算結(jié)果作為第N個字符的實體部分進行左移時的平移距離,并以左移后的字符作為初始字符。在步驟470中,判斷是否已到最后一個字符,亦即N是否已等于M。當(dāng)N不等于M時,在步驟480中將N值加1,然后重復(fù)步驟404至470。當(dāng)N=M時,則進入步驟490將已在步驟460中更新的初始字符輸出至屏幕上顯示。
圖5所示為依照本發(fā)明另一具體實施例的顯示裝置500。顯示裝置500包含初始緩存器502、附加緩存器504、字型表506、處理單元508、輸出單元510、屏幕上顯示處理單元512以及顯示單元514。字型表506包含M個具有固定寬度的字符,其中M為正整數(shù),且每一個字符均有實體部分與冗余部分。該實體部分與該冗余部分各具有實體寬度與冗余寬度。處理單元508與初始緩存器502、附加緩存器504及字型表506連接,用以讀取字型表506的M個字符,并將M個字符中的第一個字符存入初始緩存器502作為一初始字符,以及將M個字符中的第N個字符存入附加緩存器504作為一附加字符,其中N為始于2且依序到M的一正整數(shù)。處理單元508將附加字符的實體部分的至少一部分結(jié)合至初始字符的冗余部分,以形成一個具有固定寬度的合成字符,且附加字符與初始字符中二者的實體部分間相距一段預(yù)定間隔。合成字符的產(chǎn)生方式參考前述方法的實施例,在此不再贅述。輸出單元510與處理單元508相連接,當(dāng)初始字符的冗余部分,已被附加字符經(jīng)平移后的實體部分的一部分予以填滿時,輸出單元508則輸出合成字符。屏幕上顯示(OSD)處理單元512與輸出單元510及外部電子裝置500相連接。屏幕上顯示處理單元512將電子裝置520所提供的顯示訊號及輸出單元510所提供的屏幕上顯示訊號相結(jié)合,并由顯示單元514呈現(xiàn)出與該結(jié)合后訊號相對應(yīng)的畫面給使用者。
在此必需注意的是,圖5所示的顯示裝置500是用以說明本發(fā)明,而非用于限制本發(fā)明。圖5中所示組件的任意組合、排列及重組皆屬于本發(fā)明。舉例來說,顯示裝置500亦可被整合至電子裝置520中,或是初始緩存器502可與附加緩存器504整合成為單一緩存器。因此,可由本發(fā)明揭示的內(nèi)容進行許多修改與變化。在本實施例中,顯示裝置500可為液晶顯示器、CRT顯示器、電視、或任何可供顯示的裝置,而電子裝置520可為個人計算機、筆記型計算機、錄放機、數(shù)字相機等任何可輸出顯示訊號的電子裝置。
一并說明的是,字型表506中所儲存的字符更包含寬度信息字段,用于記錄字符的實體寬度,如下所示code unsigned char ASCIIFont_F[]={8,∥寬度信息0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x80,0xCC,0x00,0x00,0xFC,0x00,0x80,0xCC,0x00,0x00,0xCC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}寬度信息字段用于記錄實體寬度,而冗余寬度當(dāng)可由固定寬度減去實體寬度而得?;蛘呤牵瑢挾刃畔⒆侄我嗫捎糜谟涗浫哂鄬挾?,而由計算而得到實體寬度,不同方式并不影響本發(fā)明的實施。
權(quán)利要求
1.一種屏幕上顯示的字型排列的調(diào)整方法,其特征在于用于輸出具有固定寬度的字符,其中,字符包含實體部分與冗余部分,且實體部分與冗余部分分別具有實體寬度與冗余寬度,該方法包含將一字符的實體部分的至少一部分,結(jié)合至另一字符的冗余部分,以形成一個具有固定寬度的合成字符,且該合成字符中該二字符的實體部分間相距一段預(yù)定間隔;以及輸出該合成字符。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于其中該字符的實體部分對齊靠向字型的一側(cè),該冗余部分則與該實體部分相鄰接。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于其中結(jié)合的步驟更包含將該字符的實體部分向該字符自身的冗余部分平移一段距離,再將該字符平移后的實體部分的至少一部分結(jié)合至另一字符的冗余部分,以形成該合成字符。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于其中該字符的實體部分所平移的該段距離為另一字符的實體寬度與該預(yù)定間隔二者之和。
5.一種屏幕上顯示的字型排列的調(diào)整方法,其特征在于用于輸出復(fù)數(shù)個具有固定寬度的字符,每一字符均具有實體部分與冗余部分,且該實體部分與該冗余部分分別具有實體寬度與冗余寬度,該方法包含(a)讀取M個字符,并將該M個字符中的第一個字符作為一初始字符,其中M為正整數(shù);(b)從該M個字符中讀取第N個字符作為一附加字符,其中N為始于2且依序到M的一正整數(shù);(c)將該附加字符實體部分的至少一部分結(jié)合至該初始字符的冗余部分,以形成一個具有固定寬度的合成字符,且該附加字符與該初始字符二者的實體部分之間相距一段預(yù)定間隔;(d)決定是否輸出該合成字符;以及(e)當(dāng)N不等于M時,將N值加一并再次進行步驟(b)至(d)。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于其中該M個字符的實體部分對齊靠向字型的一側(cè),該冗余部分則與該實體部分相鄰接。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于其中步驟(c)中結(jié)合的步驟更包含,將該附加字符的實體部分向該附加字符自身的冗余部分平移一段距離,再將該附加字符平移后的實體部分的至少一部分結(jié)合至該初始字符的冗余部分,以形成該合成字符。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于其中該附加字符的實體部分所平移的該段距離為該初始字符的實體寬度與該預(yù)定間隔二者之和。
9.根據(jù)權(quán)利要求5所述的方法,其特征在于其中該步驟(d)中,當(dāng)該附加字符的實體部分的至少一部分已將該初始字符的冗余部分填滿時,則決定輸出該合成字符。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于當(dāng)決定輸出該合成字符時,除輸出該合成字符外,并將未與該初始字符的冗余部分結(jié)合的該附加字符的實體部分,設(shè)為初始字符。
11.一種可用于顯示裝置的計算機可讀取媒體,該顯示裝置具有復(fù)數(shù)個固定寬度的字符,且每一字符均具有實體部分與冗余部分,該實體部分與該冗余部分分別具有實體寬度與冗余寬度,該計算機可讀取媒體包含一組程序代碼,該程序代碼用于執(zhí)行下列步驟(a)讀取M個字符,并將該M個字符中的第一個字符作為一初始字符,其中M為正整數(shù);(b)從該M個字符中讀取第N個字符作為一附加字符,其中N為始于2且依序到M的一正整數(shù);(c)將該附加字符實體部分的至少一部分結(jié)合至該初始字符的冗余部分,以形成一個具有固定寬度的合成字符,且該附加字符與該初始字符二者的實體部分之間相距一段預(yù)定間隔;(d)決定是否輸出該合成字符;以及(e)當(dāng)N不等于M時,將N值加一并再次進行步驟(b)至(d)。
12.根據(jù)權(quán)利要求11所述的計算機可讀取媒體,其特征在于其中該M個字符的實體部分對齊靠向字型的一側(cè),該冗余部分則與該實體部分相鄰接。
13.根據(jù)權(quán)利要求12所述的計算機可讀取媒體,其特征在于其中步驟(c)中結(jié)合的步驟更包含,將該附加字符的實體部分向該附加字符自身的冗余部分平移一段距離,再將該附加字符平移后的實體部分的至少一部分結(jié)合至該初始字符的冗余部分,以形成該合成字符。
14.根據(jù)權(quán)利要求13所述的計算機可讀取媒體,其特征在于其中該附加字符的實體部分所平移的該段距離為該初始字符的實體寬度與該預(yù)定間隔二者之和。
15.根據(jù)權(quán)利要求11所述的計算機可讀取媒體,其特征在于其中該步驟(d)中,當(dāng)該附加字符的實體部分的至少一部分已將該初始字符的冗余部分填滿時,則決定輸出該合成字符。
16.根據(jù)權(quán)利要求15所述的計算機可讀取媒體,其特征在于當(dāng)決定輸出該合成字符時,除輸出該合成字符外,并將未與該初始字符的冗余部分結(jié)合的該附加字符的實體部分,設(shè)為初始字符。
17.一種屏幕上顯示的字型排列的調(diào)整裝置,包含一個緩存器;一個字型表,該字型表具有復(fù)數(shù)個固定寬度的字符,且每一字符均具有實體部分與冗余部分,該實體部分與該冗余部分分別具有實體寬度與冗余寬度;一個處理單元,其與該緩存器及該字型表連接,用以讀取M個該字型表的字符,并將該M個字符中的第一個字符存入該緩存器中作為一初始字符,其中M為正整數(shù),并從該M個字符中讀取第N個字符存入該緩存器中作為一附加字符,其中N為始于2且依序到M的一正整數(shù);其中該處理單元將該附加字符實體部分的至少一部分結(jié)合至該初始字符的冗余部分,以形成一個具有固定寬度的合成字符,且該附加字符與該初始字符二者的實體部分之間相距一段預(yù)定間隔;一個輸出單元,其與該處理單元相連接,其中當(dāng)該附加字符的實體部分的至少一部分已將該初始字符的冗余部分填滿時,該輸出單元輸出該合成字符。
18.根據(jù)權(quán)利要求17所述的裝置,其特征在于其中該字型表的該復(fù)數(shù)個字符的實體部分對齊靠向字型的一側(cè),該冗余部分則與該實體部分相鄰接。
19.根據(jù)權(quán)利要求18所述的裝置,其特征在于其中該處理單元將該附加字符的實體部分向該附加字符自身的冗余部分平移一段距離,并將該附加字符平移后的實體部分的至少一部分結(jié)合至該初始字符的冗余部分,以形成該合成字符。
20.根據(jù)權(quán)利要求19所述的裝置,其特征在于其中該附加字符的實體部分所平移的該段距離為該初始字符的實體寬度與該預(yù)定間隔二者之和。
21.根據(jù)權(quán)利要求17所述的裝置,其特征在于其中當(dāng)該輸出單元輸出該合成字符時,該處理單元更用于將未與該初始字符的冗余部分結(jié)合的該附加字符的實體部分,設(shè)為初始字符。
22.根據(jù)權(quán)利要求17所述的裝置,其特征在于其中每一該字型表的字符更包含一個寬度信息字段,用于記錄該實體寬度。
23.根據(jù)權(quán)利要求17所述的裝置,其特征在于其中該緩存器更包含一個第一緩存器與一個第二緩存器,分別用于暫存該初始字符與該附加字符。
全文摘要
一種屏幕上顯示的字型排列的調(diào)整方法與裝置,用于輸出固定寬度的初始字符與附加字符。初始字符與附加字符皆包含實體部分與冗余部分,且實體部分與冗余部分分別具有實體寬度與冗余寬度。將附加字符實體部分的至少一部分結(jié)合至初始字符的冗余部分,以形成一個具有固定寬度的合成字符,且該二字符的實體部分間相距一段預(yù)定間隔。接著輸出合成字符。
文檔編號G09G5/22GK1604177SQ2004100920
公開日2005年4月6日 申請日期2004年11月5日 優(yōu)先權(quán)日2004年11月5日
發(fā)明者朱永清 申請人:瑞軒科技股份有限公司