專利名稱:字體處理裝置、終端裝置、字體處理方法及程序的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及點(diǎn)陣字體(ビットマップフオント)的放大、縮小、變形處理。
背景技術(shù):
在便攜電話、PDA(個(gè)人數(shù)字助理)等的裝置中在文字等的顯示中使用點(diǎn)陣字體。點(diǎn)陣字體,是以預(yù)先準(zhǔn)備的像素的排列圖案顯示文字、符號(hào)等的字體。因?yàn)榕c作為矢量數(shù)據(jù)的集合顯示文字、符號(hào)等的輪廓字體(字形)不同,點(diǎn)陣字體是簡(jiǎn)單的像素的排列圖案,所以每1文字的數(shù)據(jù)量小。因此,在顯示區(qū)域的像素?cái)?shù)比較少的便攜電話、PDA等中,使用點(diǎn)陣字體。
當(dāng)在顯示裝置上顯示文字、符號(hào)時(shí),有時(shí)要求文字的放大和縮小。在被使用在便攜電話、PAD等中的點(diǎn)陣字體的情況下,1文字的尺寸小,文字的粗細(xì)大多以1像素表示。在此情況下,如果通過(guò)根據(jù)原文字尺寸(大小)和放大后的文字尺寸的縱橫比進(jìn)行簡(jiǎn)單的座標(biāo)變換的方法放大點(diǎn)陣字體,則在放大后的文字中有可能出現(xiàn)不自然的粗細(xì)的部分。另外,如果通過(guò)上述那樣的簡(jiǎn)單的座標(biāo)變換縮小同樣小的點(diǎn)陣字體,則縮小后文字會(huì)走樣,有時(shí)形成不自然粗細(xì)的線,出現(xiàn)文字的部分彼此不適當(dāng)?shù)劐e(cuò)誤連結(jié)的文字。
另外,當(dāng)在顯示裝置上顯示文字、符號(hào)時(shí),有時(shí)要求文字的變形。例如,可能產(chǎn)生這種需求,即,把標(biāo)準(zhǔn)的縱橫比相等的字體,在縱長(zhǎng)、橫長(zhǎng)上變形顯示。這樣的需求,有由于例如縱長(zhǎng)、橫長(zhǎng)的文字好看等這種用戶喜好導(dǎo)致的情況。另外,也有依賴于顯示裝置具有的顯示區(qū)域的形狀,或者依賴于應(yīng)該顯示的圖像的構(gòu)成,主要是在顯示裝置的處理上,產(chǎn)生這樣的要求的情況。還可能產(chǎn)生例如因?yàn)轱@示區(qū)域是縱長(zhǎng)的所以文字也顯示為縱長(zhǎng)的容易看,或者因?yàn)樵陲@示區(qū)域內(nèi)和文章一起顯示圖像,所以在圖像的顯示面積和顯示位置關(guān)系中想要改變文字形狀顯示等的要求。
發(fā)明內(nèi)容
本發(fā)明就是鑒于以上問(wèn)題而提出的,目的在于,自然地放大·縮小、變形在便攜電話、PDA等中使用的尺寸小的點(diǎn)陣字體。
根據(jù)本發(fā)明的1個(gè)觀點(diǎn),在字體處理裝置中具備取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;在縱向上分析上述字體數(shù)據(jù)像素構(gòu)成的縱向分析裝置;根據(jù)縱向的分析結(jié)果,在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向放大/縮小裝置;在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成的橫向分析裝置;根據(jù)橫向的分析結(jié)果,在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向放大/縮小裝置。
另外,同樣觀點(diǎn)的字體處理方法包括取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;在縱向上分析上述字體數(shù)據(jù)的像素構(gòu)成的縱向分析步驟;根據(jù)縱向的分析結(jié)果,在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向放大/縮小步驟;在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成的橫向分析步驟;根據(jù)橫向的分析結(jié)果,在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向放大/縮小步驟。
上述的字體處理裝置或者方法,以規(guī)定的放大率或者縮小率放大或者縮小點(diǎn)陣字體。首先,取得成為放大或者縮小對(duì)象的點(diǎn)陣字體的字體數(shù)據(jù)。而后,在縱向上分析字體數(shù)據(jù),根據(jù)其分析結(jié)果,在橫向上放大或者縮小字體數(shù)據(jù)。同樣,在橫向上分析點(diǎn)陣字體的字體數(shù)據(jù),根據(jù)其分析結(jié)果在縱向上放大或者縮小字體數(shù)據(jù)。由此,因?yàn)榭梢愿鶕?jù)成為放大/縮小對(duì)象的字體數(shù)據(jù)的像素構(gòu)成,分別在縱向和橫向上進(jìn)行適宜的放大/縮小處理,所以可以防止處理后的字體數(shù)據(jù)變得不自然。
在上述的字體處理裝置的一形態(tài)中,上述縱向分析裝置包含把上述字體數(shù)據(jù)分割成多行的分割裝置;對(duì)上述每一行,計(jì)算表示像素構(gòu)成的特征的成本的計(jì)算裝置;其中,上述縱向放大/縮小裝置,從上述成本小的行或者大的行開始順序地對(duì)規(guī)定數(shù)目的行進(jìn)行像素的放大或者縮小處理。
如果采用該字體處理裝置,則構(gòu)成字體數(shù)據(jù)的像素的行方向(縱向)的像素構(gòu)成被數(shù)值化作為成本計(jì)算,根據(jù)該值進(jìn)行放大/縮小處理。因而,可以通過(guò)簡(jiǎn)單的成本計(jì)算進(jìn)行像素構(gòu)成的分析,可以進(jìn)行迅速的處理。
在上述字體處理裝置的另一形態(tài)中,上述橫向分析裝置包含把上述字體數(shù)據(jù)分割成多個(gè)列的分割裝置;對(duì)上述每一列,計(jì)算表示像素構(gòu)成特征的成本的計(jì)算裝置;其中,上述縱向放大/縮小裝置,從上述成本小的列或者大的列開始順序?qū)σ?guī)定數(shù)目的列進(jìn)行像素的放大或者縮小處理。
如果采用該字體處理裝置,則構(gòu)成字體數(shù)據(jù)的像素的列方向(橫向)的像素構(gòu)成被數(shù)值化作為成本被計(jì)算,根據(jù)該值進(jìn)行放大/小處理。因而,可以通過(guò)簡(jiǎn)單的成本計(jì)算進(jìn)行像素構(gòu)成的分析,可以進(jìn)行迅速的處理。
根據(jù)本發(fā)明的另一觀點(diǎn),字體處理裝置具備取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向放大處理的橫向放大處理裝置;進(jìn)行上述字體數(shù)據(jù)的縱向放大處理的縱向放大處理裝置;其中,上述橫向放大處理裝置包含把上述字體數(shù)據(jù)分割成多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;從上述成本小的行或者大的行開始,順序地在橫向上放大規(guī)定數(shù)目的行的裝置;其中,上述縱向放大處理裝置包含把上述字體數(shù)據(jù)分割成多個(gè)列的裝置;對(duì)上述每個(gè)列,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;從上述成本小的列或者大的列開始,順序地在縱向上放大規(guī)定數(shù)目的列的裝置。
另外,同樣觀點(diǎn)的字體處理方法,具有取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步步驟;進(jìn)行上述字體數(shù)據(jù)的橫向放大處理的橫向放大處理步驟;進(jìn)行上述字體數(shù)據(jù)的縱向放大處理的縱向放大處理步驟;其中,上述橫向放大處理步驟具有把上述字體數(shù)據(jù)分割成多個(gè)行的步驟;對(duì)上述每行,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算步驟;從上述成本小的行或者大的行開始,順序地在橫向上放大規(guī)定數(shù)目的行的步驟;其中,上述縱向放大處理步驟包含把上述字體數(shù)據(jù)分割成多個(gè)列的步驟;對(duì)上述每列,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算步驟;從上述成本小的列或者大的列開始,順序地在縱向上放大規(guī)定數(shù)目的列的步驟。
如果采用上述字體處理裝置或者方法,則把字體數(shù)據(jù)分割成多個(gè)行,為每行計(jì)算成本。在此,成本是像素的線段量的座標(biāo),即,是表示構(gòu)成該行的像素接近僅是點(diǎn)或點(diǎn)的集合,還是接近線段的指標(biāo)。而后,按照成本小的順序或者大的順序在橫向上放大行。
由此,具有接近點(diǎn)、點(diǎn)的集合的像素構(gòu)成的行被優(yōu)先放大,具有接近線段的像素構(gòu)成的行難以被放大。因而,構(gòu)成文字的線段被放大至需要程度或以上,文字整體平衡不會(huì)失去,可以自然地放大。
同樣,字體數(shù)據(jù)被分割成多列,對(duì)每列計(jì)算成本。在此,成本表示像素的線段量,按照成本小或者大的順序在縱向上放大列。因而,具有接近點(diǎn)、點(diǎn)的集合的像素構(gòu)成的列被優(yōu)先放大,具有接近線段的像素構(gòu)成的列難以被放大,可以自然地放大。
在上述的字體處理裝置的一形態(tài)中,上述規(guī)定數(shù)目,由上述字體數(shù)據(jù)的縱向以及橫向的像素?cái)?shù)、上述字體數(shù)據(jù)的放大率確定。即,根據(jù)字體的放大率,確定對(duì)構(gòu)成成為對(duì)象的字體的縱橫的像素?cái)?shù)分別增加幾個(gè)像素即可,進(jìn)行放大使得構(gòu)成字體數(shù)據(jù)的縱以及橫向的像素?cái)?shù)增加該數(shù)目。
在上述的字體處理裝置的另一形態(tài)中,上述成本計(jì)算裝置具備對(duì)上述每一行或者列,把構(gòu)成該行或者列的像素?cái)?shù)作為成本計(jì)算的裝置;在上述成本上加算在該行或者列的方向上具有相鄰像素的像素?cái)?shù)的裝置。
在上述的字體處理裝置的另一形態(tài)中,上述成本計(jì)算裝置具備對(duì)上述每一行或者列,計(jì)算構(gòu)成該行或者列的像素?cái)?shù)的裝置;在構(gòu)成上述該行或者列的像素?cái)?shù)上加算在該行或者列的方向上具有相鄰像素的像素?cái)?shù),把加算的結(jié)果的倒數(shù)作為成本計(jì)算的裝置。
如果采用這些形態(tài),因?yàn)槌杀居?jì)算裝置用簡(jiǎn)單的計(jì)算處理計(jì)算成本,所以可以以簡(jiǎn)單的構(gòu)成迅速進(jìn)行地字體放大處理。
在上述字體處理裝置的再一形態(tài)中,上述字體數(shù)據(jù),包含在該字體數(shù)據(jù)的放大處理中表示應(yīng)該執(zhí)行縱向放大處理和橫向放大處理的順序的處理順序信息,字體處理裝置進(jìn)一步具備根據(jù)上述處理順序信息,控制上述橫向放大處理和縱向放大處理的執(zhí)行順序的順序控制裝置。
如果采用該形態(tài),則對(duì)于成為放大對(duì)象的每一字體,預(yù)先確定先進(jìn)行縱向放大處理和橫向放大處理的哪一方可以得到更自然的放大字體,表示其順序的處理順序信息附加在字體數(shù)據(jù)上。因而,字體處理裝置,通過(guò)參照該處理順序信息確定縱向放大處理和橫向放大處理的執(zhí)行順序,得到自然的放大字體。
在本發(fā)明的再一觀點(diǎn)中,字體處理裝置,具備取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向縮小處理的橫向縮小處理裝置;進(jìn)行上述字體數(shù)據(jù)的縱向縮小處理的縱向縮小處理裝置;其中,上述橫向縮小處理裝置包含把上述字體數(shù)據(jù)分割成多個(gè)行的裝置;為上述每一行計(jì)算表示和相鄰行的像素構(gòu)成的相似程度的成本的成本計(jì)算裝置;從上述成本小的行或者大的行開始順序地在橫向上縮小規(guī)定數(shù)目的行的裝置;其中,上述縱向縮小處理裝置包含把上述字體數(shù)據(jù)分割成多個(gè)列的裝置;為上述每一列計(jì)算表示和相鄰列的像素構(gòu)成的相似程度的成本的成本計(jì)算裝置;從上述成本小的列或者大的列開始順序地在縱向上縮小規(guī)定數(shù)目的列的裝置。
另外,根據(jù)同樣觀點(diǎn)的字體處理裝置,包括取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;進(jìn)行上述字體數(shù)據(jù)的橫向縮小處理的橫向縮小處理步驟;進(jìn)行上述字體數(shù)據(jù)的縱向縮小處理的縱向縮小處理步驟;其中,上述橫向縮小處理步驟包含把上述字體數(shù)據(jù)分割成多個(gè)行的步驟;為上述每一行計(jì)算表示和相鄰行的像素構(gòu)成的相似程度的成本的成本計(jì)算步驟;從上述成本小的行或者大的行開始順序地在橫向上縮小規(guī)定數(shù)目的行的步驟;其中,上述縱向縮小處理步驟包含把上述字體數(shù)據(jù)分割成多個(gè)列的步驟;為上述每一列計(jì)算表示和相鄰列的像素構(gòu)成的相似程度的成本的成本計(jì)算步驟;從上述成本小的列或者大的列開始順序地在縱向上縮小規(guī)定數(shù)目的列的步驟。
如果采用上述的字體處理裝置或者方法,則把字體數(shù)據(jù)分割成多個(gè)行,為每行計(jì)算成本。在此,成本表示和相鄰行的像素構(gòu)成的相似程度。而后,以成本小的順序或者大的順序在橫向上放大行。由此,因?yàn)橄袼貥?gòu)成相似的行相鄰的部分被優(yōu)先放大,所以文字整體不會(huì)失去平衡,可以自然地放大。
同樣,字體數(shù)據(jù)被分割成多個(gè)列,對(duì)每列計(jì)算成本。在此,成本也是表示和相鄰列的像素構(gòu)成的相似程度,以成本小的順序或者大的順序在縱向上放大列。因而,因?yàn)橄袼貥?gòu)成相似的列相鄰的部分被優(yōu)先放大,所以文字整體不會(huì)失去平衡,可以自然地放大。
在上述字體處理裝置的一形態(tài)中,上述規(guī)定數(shù)目(數(shù)量),由上述字體數(shù)據(jù)的縱向以及橫向的像素?cái)?shù)、和上述字體數(shù)據(jù)的縮小率確定。即,對(duì)應(yīng)字體的縮小率,對(duì)構(gòu)成成為對(duì)象的字體的縱橫的像素?cái)?shù)確定分別減少多少像素即可,進(jìn)行縮小使得構(gòu)成字體數(shù)據(jù)的縱以及橫向的像素?cái)?shù)減少該數(shù)目。
在上述的字體處理裝置的再一形態(tài)中,上述成本計(jì)算裝置,對(duì)上述每一行或者列,根據(jù)該行或者列的像素構(gòu)成、和與該行或者列相鄰的行或者列的像素構(gòu)成的“異”,計(jì)算成本。
如果采用該形態(tài),因?yàn)槌杀居?jì)算裝置,通過(guò)簡(jiǎn)單的加法處理計(jì)算成本,所以可以以簡(jiǎn)單的構(gòu)成迅速地進(jìn)行字體的放大處理。
在上述字體處理裝置的再一形態(tài)中,上述字體數(shù)據(jù),包含表示在該字體數(shù)據(jù)的縮小處理中應(yīng)該執(zhí)行縱向縮小處理和橫向縮小處理的順序的處理順序信息,字體處理裝置進(jìn)一步具備根據(jù)上述處理順序信息,控制上述橫向縮小處理和縱向縮小處理的執(zhí)行順序的順序控制裝置。
如果采用該形態(tài),則對(duì)于成為縮小對(duì)象的每一字體,預(yù)先確定先進(jìn)行縱向縮小處理和橫向縮小處理的哪一方可以得到更自然的縮小字體,表示其順序的處理順序信息附加在字體數(shù)據(jù)上。因而,字體處理裝置,通過(guò)參照該處理順序信息確定縱向縮小處理和橫向縮小處理的執(zhí)行順序,得到自然的縮小字體。
根據(jù)本發(fā)明的再一觀點(diǎn),可以構(gòu)成具備上述字體處理裝置;存儲(chǔ)由上述字體處理裝置生成的字體數(shù)據(jù)的存儲(chǔ)裝置;顯示由上述字體處理裝置生成的字體數(shù)據(jù)的顯示部的終端裝置。該終端裝置,例如可以是便攜電話、PDA等的便攜型終端裝置。因?yàn)橛帽景l(fā)明的字體處理裝置,可以以簡(jiǎn)單的計(jì)算迅速地進(jìn)行字體的放大、縮小,所以即使在這樣的便攜型終端裝置中也可以進(jìn)行自然的字體放大/縮小。
根據(jù)本發(fā)明的再一觀點(diǎn),一種在具備計(jì)算機(jī)的終端裝置中執(zhí)行的字體處理程序,使上述計(jì)算機(jī)具有作為以下裝置的功能取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;在縱向上分析上述字體數(shù)據(jù)的像素構(gòu)成的縱向分析裝置;根據(jù)縱向分析結(jié)果,在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向放大/縮小裝置;在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成的橫向分析裝置;根據(jù)橫向的分析結(jié)果,在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向放大/縮小裝置。
根據(jù)本發(fā)明的再一觀點(diǎn),一種在具備計(jì)算機(jī)的終端裝置中執(zhí)行的字體處理程序,使上述計(jì)算機(jī)具備作為以下裝置的功能取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向放大處理的橫向放大處理裝置;進(jìn)行上述字體數(shù)據(jù)的縱向放大處理的縱向放大處理裝置;其中,上述橫向放大處理裝置具備把上述字體數(shù)據(jù)分割成多個(gè)行的裝置;對(duì)上述每行計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;從上述成本小的行或者大的行開始順序地,在橫向上放大規(guī)定數(shù)目的行的裝置;其中,上述縱向放大處理裝置具備把上述字體數(shù)據(jù)分割成多個(gè)列的裝置;對(duì)上述每列計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;從上述成本小的列或者大的列開始順序地,在縱向上放大規(guī)定數(shù)目的列的裝置。
根據(jù)本發(fā)明的再一觀點(diǎn),一種在具備計(jì)算機(jī)的終端裝置中執(zhí)行的字體處理程序,使上述計(jì)算機(jī)具備作為以下裝置的功能取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向縮小處理的橫向縮小處理裝置;進(jìn)行上述字體數(shù)據(jù)的縱向縮小處理的縱向縮小處理裝置;其中,上述橫向縮小處理裝置具備把上述字體數(shù)據(jù)分割成多行的裝置;對(duì)上述每行計(jì)算表示和相鄰行的像素構(gòu)成的相似度的成本的成本計(jì)算裝置;從上述成本小的行或者大的行開始順序地,在橫向上縮小規(guī)定數(shù)目的行的裝置;其中,上述縱向縮小處理裝置具備把上述字體數(shù)據(jù)分割成多列的裝置;對(duì)上述每列計(jì)算表示和相鄰列的像素構(gòu)成的相似度的成本的成本計(jì)算裝置;從上述成本小的列或者大的列開始順序地,在縱向上縮小規(guī)定數(shù)目的列的裝置。
通過(guò)用終端裝置內(nèi)的計(jì)算機(jī)執(zhí)行上述字體處理程序,可以實(shí)現(xiàn)上述的字體處理裝置。
根據(jù)本發(fā)明的另一觀點(diǎn),一種字體處理裝置具備接收字體變形指示的裝置;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;在上述字體變形指示包含字體的橫向的變形時(shí),在縱向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)分析結(jié)果在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向變形裝置;在上述字體變形指示包含字體的縱向的變形時(shí),在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)分析結(jié)果在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向變形裝置。
另外,同樣觀點(diǎn)的字體處理方法包括接收字體變形指示的步驟;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;當(dāng)上述字體變形指示包含字體的橫向的變形時(shí),在縱向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)分析結(jié)果在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向變形步驟;當(dāng)上述字體變形指示包含字體的縱向的變形時(shí),在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)分析結(jié)果在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向變形步驟。
上述字體處理裝置或者方法,通過(guò)以規(guī)定的放大率或者縮小率放大或者縮小點(diǎn)陣字體,變形字體。首先,如果接收到字體變形指示,則取得成為變形對(duì)象的點(diǎn)陣字體的字體數(shù)據(jù)。當(dāng)字體變形指示包含橫向的變形時(shí),在縱向上分析字體數(shù)據(jù),根據(jù)其分析結(jié)果,在橫向上放大或者縮小字體數(shù)據(jù)。同樣,當(dāng)字體指示包含縱向的變形時(shí),在橫向上分析字體數(shù)據(jù),根據(jù)其分析結(jié)果在縱向上放大或者縮小字體數(shù)據(jù)。由此,因?yàn)橥ㄟ^(guò)根據(jù)成為變形對(duì)象的字體數(shù)據(jù)的像素構(gòu)成,分別在縱向以及橫向上進(jìn)行適宜的放大/縮小處理,字體被變形,所以可以防止變形處理后的字體數(shù)據(jù)不自然。
在上述字體處理裝置的一形態(tài)中,上述橫向變形裝置具備把上述字體數(shù)據(jù)分割為多行的分割裝置;對(duì)上述每一行,計(jì)算表示像素構(gòu)成特征的成本的計(jì)算裝置;從上述成本小的行或者大的行開始順序地對(duì)規(guī)定數(shù)目的行進(jìn)行像素的放大或者縮小的裝置。
如果采用該形態(tài),則構(gòu)成字體數(shù)據(jù)的像素的行方向(縱向)的像素構(gòu)成被數(shù)值化作為成本被計(jì)算,根據(jù)其值進(jìn)行放大/縮小處理。因而,可以用簡(jiǎn)單的成本計(jì)算進(jìn)行像素構(gòu)成的分析,可以進(jìn)行迅速的處理。
在上述字體處理裝置的另一形態(tài)中,上述縱向變形裝置具備把上述字體數(shù)據(jù)分割為多列的分割裝置;對(duì)上述每一列,計(jì)算表示像素構(gòu)成特征的成本的計(jì)算裝置;從上述成本小的列或者大的列開始順序地對(duì)規(guī)定數(shù)目的列進(jìn)行像素的放大或者縮小的裝置。
在該形態(tài)中,構(gòu)成字體數(shù)據(jù)的像素的列方向(橫向)和像素構(gòu)成被數(shù)值化作為成本被計(jì)算,根據(jù)其值進(jìn)行放大/縮小處理。因而,可以用簡(jiǎn)單的成本計(jì)算進(jìn)行像素構(gòu)成的分析,可以進(jìn)行迅速的處理。
根據(jù)本發(fā)明的另一觀點(diǎn),字體處理裝置具備接收包含縱向以及橫向變形率的字體變形指示的裝置;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;根據(jù)上述橫向的變形率,進(jìn)行上述字體數(shù)據(jù)的橫向變形處理的橫向變形裝置;根據(jù)上述縱向的變形率,進(jìn)行上述字體數(shù)據(jù)的縱向變形處理的縱向變形裝置;其中,上述橫向變形裝置具備把上述字體數(shù)據(jù)分割成多行的裝置;對(duì)上述每行計(jì)算表示像素構(gòu)成特征的成本的第1成本計(jì)算裝置;從上述成本小的行或者大的行開始順序地在橫向上放大或者縮小第1規(guī)定數(shù)目的行;其中,上述縱向變形裝置具備把上述字體數(shù)據(jù)分割成多列的裝置;對(duì)上述每列計(jì)算表示像素構(gòu)成特征的成本的第2成本計(jì)算裝置;從上述成本小的列或者大的列開始順序地在橫向上放大或者縮小第2規(guī)定數(shù)目的列的裝置。
另外,同樣觀點(diǎn)的字體處理方法,包括接收包含縱向以及橫向的變形率的字體變形指示的步驟;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;根據(jù)上述橫向的變形率,進(jìn)行上述字體數(shù)據(jù)的橫向變形處理的橫向變形步驟;根據(jù)上述縱向的變形率,進(jìn)行上述字體數(shù)據(jù)的縱向變形處理的縱向變形步驟;其中,上述橫向變形步驟包含把上述字體數(shù)據(jù)分割成多行的步驟;對(duì)上述每行計(jì)算表示像素構(gòu)成特征的成本的第1成本計(jì)算步驟;從上述成本小的行或者大的行開始順序地在橫向上放大或者縮小第1規(guī)定數(shù)目的行;其中,上述縱向變形步驟包含把上述字體數(shù)據(jù)分割成多列的步驟;對(duì)上述每列計(jì)算表示像素構(gòu)成特征的成本的第2成本計(jì)算步驟;從上述成本小的列或者大的列開始順序地在縱向上放大或者縮小第2規(guī)定數(shù)目的列的步驟。
如果采用上述的字體處理裝置或者方法,則把字體數(shù)據(jù)分割為多行,對(duì)每一行計(jì)算成本。另外,同樣,把字體數(shù)據(jù)分割為多列,對(duì)每列計(jì)算成本。而后,根據(jù)成本,通過(guò)放大規(guī)定數(shù)目的行以及列進(jìn)行字體的變形。
在上述的字體處理裝置的一形態(tài)中,上述第1規(guī)定數(shù)目,由上述字體數(shù)據(jù)的縱向以及橫向的像素?cái)?shù)和上述橫向的變形率確定,上述第2規(guī)定數(shù)目,由上述字體數(shù)據(jù)的縱向以及橫向的像素?cái)?shù)和上述縱向的變形率確定。因而,放大/縮小必要數(shù)目的行以及列,使得成為由字體變形指示指定的變形率。
在上述字體處理裝置的再另一形態(tài)中,上述成本計(jì)算裝置,在上述變形處理是放大時(shí),對(duì)上述每一行或者列計(jì)算表示上述像素構(gòu)成的線段量的成本,在上述變形處理是縮小時(shí),對(duì)上述每一行或者列計(jì)算表示該行或者列的像素構(gòu)成和相鄰的行或者列的像素構(gòu)成的相似度的成本。
如果采用該形態(tài),則在為了字體變形而進(jìn)行放大時(shí),成本是像素的線段量,即,表示構(gòu)成該行的像素是接近僅是點(diǎn)或者點(diǎn)的集合,還是接近線段的指標(biāo)。而且,以成本小的順序放大行或者列。因而,具有接近點(diǎn)、點(diǎn)集合的像素構(gòu)成的列被優(yōu)先放大,具有接近線段的像素構(gòu)成的列難以被放大。另外,當(dāng)為了進(jìn)行字體的變形而進(jìn)行縮小時(shí),成本表示和相鄰行的像素構(gòu)成的相似度。而且,以成本小的順序在橫向上放大行。由此,因?yàn)橄袼貥?gòu)成類似的行相鄰的部分被優(yōu)先放大,所以文字整體不會(huì)失去平衡。這樣,可以實(shí)現(xiàn)自然的字體變形。
在上述字體處理裝置的再另一形態(tài)中,上述成本計(jì)算裝置,在計(jì)算表示上述線段量的成本時(shí),對(duì)上述每一行或者列,把構(gòu)成該行或者列的像素?cái)?shù)作為成本進(jìn)行計(jì)算,進(jìn)而,把在該行或者列方向上具有相鄰像素的像素?cái)?shù)加算到上述成本上。
另外,在上述字體處理裝置的再另一形態(tài)中,上述成本計(jì)算裝置,在計(jì)算表示上述線段量的成本時(shí),對(duì)上述每一行或者列,計(jì)算構(gòu)成相應(yīng)行或者列的像素?cái)?shù),進(jìn)而,把在相應(yīng)行或者列方向上具有相鄰像素的像素?cái)?shù)加在構(gòu)成上述相應(yīng)行或者列的像素?cái)?shù)上,把加算的結(jié)果的倒數(shù)作為成本計(jì)算。
另外,在上述字體處理裝置的再另一形態(tài)中,上述成本計(jì)算裝置,在計(jì)算表示上述相似度的成本時(shí),對(duì)上述每一行和列,根據(jù)相應(yīng)行或者列的像素構(gòu)成、和與相應(yīng)行或者列相鄰的行或者列的像素構(gòu)成的“異”,計(jì)算成本。
如果采用這些形態(tài),因?yàn)槌杀居?jì)算裝置,通過(guò)簡(jiǎn)單的加法處理計(jì)算成本,所以可以以簡(jiǎn)單的構(gòu)成迅速地進(jìn)行字體的放大處理。
在上述字體處理裝置的再另一形態(tài)中,上述字體數(shù)據(jù),包含在該字體數(shù)據(jù)的變形處理中表示應(yīng)該執(zhí)行縱向變形處理和橫向變形處理的順序的處理順序信息,字體處理裝置進(jìn)一步具備根據(jù)上述處理順序信息,控制上述橫向變形處理和縱向變形處理的執(zhí)行順序的順序控制裝置。
如果采用該形態(tài),則對(duì)于成為變形對(duì)象的每一字體,預(yù)先確定先進(jìn)行縱向變形處理和橫向變形處理的哪一方可以得到更自然的變形字體,表示其順序的處理順序信息附加在字體數(shù)據(jù)上。因而,字體處理裝置,通過(guò)參照該處理順序信息確定縱向變形處理和橫向變形處理的執(zhí)行順序,得到自然的變形字體。
根據(jù)本發(fā)明的再另一觀點(diǎn),可以構(gòu)成具備上述字體處理裝置;存儲(chǔ)由上述字體處理裝置生成的字體數(shù)據(jù)的存儲(chǔ)裝置;顯示由上述字體處理裝置生成的字體數(shù)據(jù)的顯示部的終端裝置。該終端裝置,例如可以是便攜電話、PDA等的便攜型終端裝置。因?yàn)橛帽景l(fā)明的字體處理裝置,可以以簡(jiǎn)單的計(jì)算迅速地進(jìn)行字體的變形,所以即使在這樣的便攜型終端裝置中也可以進(jìn)行自然的字體變形。
根據(jù)本發(fā)明的再另一觀點(diǎn),一種在具備計(jì)算機(jī)的終端裝置中執(zhí)行的字體處理程序,使上述計(jì)算機(jī)具備作為以下裝置的功能接收字體變形指示的裝置;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;當(dāng)上述字體變形指示包含字體橫向的變形時(shí),在縱向上方向分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)分析結(jié)果在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向變形裝置;在上述字體變形指示包含字體橫向的變形時(shí),在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)分析結(jié)果在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向變形裝置。
另外,根據(jù)本發(fā)明的再另一觀點(diǎn),一種由具有計(jì)算機(jī)的終端裝置執(zhí)行的字體處理程序,使上述計(jì)算機(jī)具有作為以下裝置的功能接收包含縱向以及橫向的變形率的字體變形指示的裝置;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;根據(jù)上述橫向的變形率,進(jìn)行上述字體數(shù)據(jù)的橫向的變形處理的橫向變形裝置;根據(jù)上述縱向的變形率,進(jìn)行上述字體數(shù)據(jù)的縱向的變形處理的縱向變形裝置;其中,上述橫向變形裝置包含把上述字體數(shù)據(jù)分割為多行的裝置;對(duì)上述每一行,計(jì)算表示像素構(gòu)成特征的成本的第1成本計(jì)算裝置;從上述成本小的行或者大的行開始順序地在橫向上放大或者縮小第1規(guī)定數(shù)目的行的裝置;其中,上述縱向變形裝置包含把上述字體數(shù)據(jù)分割為多列的裝置;對(duì)上述每一列,計(jì)算表示像素構(gòu)成特征的成本的第2成本計(jì)算裝置;從上述成本小的列或者大的列開始順序地在縱向上放大或者縮小第2規(guī)定數(shù)目的列的裝置。
通過(guò)用終端裝置內(nèi)的計(jì)算機(jī)執(zhí)行上述的字體處理程序,可以實(shí)現(xiàn)上述字體處理裝置。
圖1展示適用了本發(fā)明實(shí)施方式1的點(diǎn)陣字體的放大·縮小處理的便攜終端裝置的概略構(gòu)成。
圖2是字體放大處理的流程圖。
圖3是行(列)方向放大處理的流程圖。
圖4是字體放大處理以及通過(guò)放大進(jìn)行的字體變形處理中的成本計(jì)算處理的流程圖。
圖5是字體放大處理以及通過(guò)放大進(jìn)行的字體變形處理中的成本計(jì)算處理例子的圖。
圖6是展示成本計(jì)算處理的例子的圖。
圖7是展示行(列)方向放大處理以及橫(縱)方向放大處理例子的圖。
圖8是字體縮小處理的流程圖。
圖9是行(列)方向縮小處理的流程圖。
圖10是字體縮小處理以及通過(guò)縮小進(jìn)行的字體變形處理中的成本計(jì)算處理例子的圖。
圖11是比較字體放大/縮小、變形處理,和采用單純的座標(biāo)變換的字體放大/縮小、變形處理的結(jié)果的圖。
圖12是展示行方向處理和列方向處理的處理順序和處理結(jié)果的比較,以及,包含處理順序信息的字體數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)例子的圖。
圖13展示適用了本發(fā)明實(shí)施方式2的點(diǎn)陣字體變形處理的便攜終端裝置的概略構(gòu)成。
圖14是字體變形處理的流程圖。
圖15是橫(縱)方向放大處理的流程圖。
圖16是縮小的字體變形處理的流程圖。
圖17是橫(縱)方向縮小處理的流程圖。
具體實(shí)施例方式
以下,參照
本發(fā)明的優(yōu)選實(shí)施方式。
實(shí)施方式1首先,說(shuō)明本發(fā)明的實(shí)施方式1。實(shí)施方式1涉及字體放大·縮小處理。
便攜終端裝置的構(gòu)成圖1展示適用了本發(fā)明的實(shí)施方式的點(diǎn)陣字體的放大·縮小處理的便攜終端裝置的概略構(gòu)成。在圖1中,便攜終端裝置10,例如是便攜電話、PDA等,圖像顯示區(qū)域比較小的終端裝置。
便攜終端裝置10具備顯示部12、處理字體存儲(chǔ)器14、CPU16、輸入部18、程序ROM20、字體ROM22、RAM24。
顯示部22,例如可以設(shè)置成LCD(Liquid Crystal Display液晶顯示裝置)等的重量輕、薄型的顯示裝置,在顯示區(qū)域內(nèi)顯示由點(diǎn)陣字體構(gòu)成的文字。
輸入部18,如果是便攜電話則可以由各種操作按鍵等構(gòu)成,如果是PDA則可以用檢測(cè)觸摸筆等的接觸的輸入板(タブレット)構(gòu)成,可以在用戶進(jìn)行各種指示、選擇時(shí)使用。對(duì)輸入部18輸入的指示、選擇等,被變換為電氣信號(hào)發(fā)送到CPU16。
程序ROM20,存儲(chǔ)用于執(zhí)行便攜終端裝置10的各種功能的各種程序,特別地本實(shí)施方式中,存儲(chǔ)點(diǎn)陣字體的放大·縮小程序(以下,稱為“字體放大·縮小程序”)、利用點(diǎn)陣字體的文字的顯示程序等。
字體ROM22,存儲(chǔ)點(diǎn)陣字體的原數(shù)據(jù)(還稱為“字母數(shù)據(jù)”)。進(jìn)而,點(diǎn)陣字體的原數(shù)據(jù),一般是設(shè)置成例如16×16點(diǎn)等的,縱橫比相等的字體(也稱為“正方字體”)。
RAM24,在根據(jù)點(diǎn)陣字體的放大·縮小程序?qū)c(diǎn)陣字體的原數(shù)據(jù)進(jìn)行放大·縮小處理時(shí)作為工作用存儲(chǔ)器使用。另一方面,處理字體存儲(chǔ)器14,是暫時(shí)存儲(chǔ)用點(diǎn)陣字體的放大·縮小程序通過(guò)放大或者縮小處理制成的字體(以下,還稱為“處理字體”)的存儲(chǔ)器。處理字體存儲(chǔ)器14,通??梢杂蒖AM、閃存等構(gòu)成,直至便攜終端裝置10斷開電源保持儲(chǔ)存數(shù)據(jù)。
CPU16,通過(guò)執(zhí)行被存儲(chǔ)在程序ROM20內(nèi)的各種程序,執(zhí)行便攜終端裝置10的各種功能。特別地,在本實(shí)施方式中,通過(guò)讀出被存儲(chǔ)在程序ROM20內(nèi)的文字顯示程序進(jìn)行執(zhí)行,使文字顯示在顯示部12上。另外,同樣通過(guò)讀出被存儲(chǔ)在程序ROM20內(nèi)的字體放大·縮小程序進(jìn)行執(zhí)行,放大·縮小被存儲(chǔ)在字體ROM22內(nèi)的點(diǎn)陣字體的原數(shù)據(jù)生成處理字體。進(jìn)而,CPU16,通過(guò)執(zhí)行此外的各種程序?qū)崿F(xiàn)便攜終端裝置10的各種功能,但是因?yàn)檫@些和本發(fā)明沒(méi)有直接的關(guān)系,所以省略說(shuō)明。
字體放大處理以下,說(shuō)明作為本發(fā)明的特征部分的字體放大縮小處理。字體放大縮小處理,如上所述通過(guò)CPU16執(zhí)行被存儲(chǔ)在程序ROM20中的字體放大縮小程序來(lái)進(jìn)行。
以下,將順序說(shuō)明字體放大處理和字體縮小處理。
首先,參照?qǐng)D2至圖7說(shuō)明字體放大處理。圖2至圖4是字體放大處理的主例程(メインル一チル)以及子例程(サブル一チル)的流程圖。圖5至圖7是用于說(shuō)明字體放大處理的各步驟的圖。
如果參照?qǐng)D2,則首先CPU1接收字體放大指示(步驟S1)。字體放大指示,當(dāng)例如用戶操作輸入部18進(jìn)行顯示字體的尺寸(大小)的指定、選擇、顯示模式的指定、選擇時(shí),根據(jù)來(lái)自輸入部18的指示生成。進(jìn)而,即使在用戶的指示以外的情況下,也有根據(jù)對(duì)顯示部12上的顯示內(nèi)容需要字體的放大的情況。例如,在顯示區(qū)域內(nèi)顯示特定的文字?jǐn)?shù)據(jù)時(shí),也有自動(dòng)地要求文字顯示程序自動(dòng)地放大字體的情況。
如果進(jìn)行字體的放大指示,則CPU1從字體ROM22中讀出成為顯示對(duì)象的字體的原數(shù)據(jù),在作為工作存儲(chǔ)器的RAM24展開(步驟S2)。而后,CPU1執(zhí)行行方向放大處理,首先在行方向上放大成為對(duì)象的字體(步驟S3),接著執(zhí)行列方向放大處理,進(jìn)一步在列方向上放大在行方向上放大了的字體(步驟S4)。進(jìn)而,在本例子的情況下,行方向的放大率和列方向的放大率被設(shè)置為相同。這樣,如果在行方向以及列方向上字體的放大結(jié)束,則CPU1把放大后的字體數(shù)據(jù)作為處理字體暫時(shí)保存在處理字體存儲(chǔ)器14中(步驟S5),進(jìn)而顯示在顯示部12上(步驟S6)。這樣,特定的字體被放大后顯示在顯示部12上。
以下,參照?qǐng)D3的流程圖說(shuō)明在步驟S3中進(jìn)行的行方向放大處理的詳細(xì)情況。在圖3中,首先CPU1,把成為對(duì)象的字體分割為多個(gè)行(步驟S11)。而后,CPU1,對(duì)由分割得到的每一行,計(jì)算成本(步驟S12)。在此,所謂成本,是根據(jù)構(gòu)成字體的像素的數(shù)以及相鄰的像素的有無(wú)等求得的值,在字體放大處理中表示線段量(缐分量)。即,成本越大,意味在該行上沒(méi)有點(diǎn)、點(diǎn)的集合,包含線段的程度高。
圖4展示在步驟S12中成本計(jì)算處理的詳細(xì)情況。在成本計(jì)算處理中,首先,如圖5(a)所示,以行單位計(jì)數(shù)字體構(gòu)成要素的數(shù)(步驟S21)。在圖5(a)中,在各行之下所示的數(shù)字(從左開始是0,4,3,3,……)表示各行的成本。
以下,如圖5(b)所示,進(jìn)行具有相鄰的字體構(gòu)成像素的像素部分的加算(步驟S22)。在圖5(b)的例子中,對(duì)于具有相鄰的字體構(gòu)成像素的每一字體構(gòu)成像素,在成本上加算“2”。這樣,在各行之下展示加算相鄰像素部分的成本后得到的各行的成本。通過(guò)對(duì)具有相鄰的像素的像素加算成本,可以在某種程度上區(qū)分存在于該行的字體構(gòu)成像素是點(diǎn),還是接近線段。即,即使包含在1行中的字體構(gòu)成像素?cái)?shù)相同,也可以說(shuō),成本越大的行,包含在該行中的字體構(gòu)成要素越接近線段。而后,如后述,成本值大的行,即越接近線段的行越難以被放大。
以下,如圖6(a)所示,進(jìn)行考慮了空白(スペ一ス)的加權(quán)處理(步驟S23)。具體地說(shuō),對(duì)于各行,當(dāng)兩端的像素是空白(不存在字體構(gòu)成像素。在圖5以及圖6中用空白表示)的情況下,對(duì)成本值進(jìn)行“+2”。另外,當(dāng)兩端的像素的1像素內(nèi)側(cè)的像素是空白的情況下,對(duì)成本值進(jìn)行“+1”。該處理,考慮把作為文字的平衡以及文字在橫向上排列成文時(shí)的平衡的方面。例如平假名的“し”的文字等,如果是普通地放大則只是左右的空白部分被放大,構(gòu)成文字的中央的字體構(gòu)成像素不怎么被放大。
其結(jié)果,如果作為放大后的文章看,則其它的文字被放大,而只是文字“し”字體構(gòu)成部分未被充分放大,看起來(lái)仍然小。為了防止這樣的不良結(jié)果,進(jìn)行考慮空白的加權(quán)。該處理的結(jié)果,在上下端上具有空白的行成本值增大,難以被放大。
以下,進(jìn)行具有相同成本值的行的加權(quán)處理(步驟S24)。具體地說(shuō),對(duì)于某一行,比較相鄰的行和字體構(gòu)成像素的圖案,對(duì)于相鄰的行和字體構(gòu)成像素的圖案相同的行把成本值進(jìn)行“+2”。此處理也是考慮作為文字的平衡的方面進(jìn)行。
如果相鄰的行的字體構(gòu)成像素的圖案是相同的,則在此前的成本計(jì)算中成本值相同。因而,如果具有該成本值的行通過(guò)后述的放大處理成為放大對(duì)象,則相鄰的行兩方被放大。其結(jié)果,由于具有相同的像素圖案的行兩方都被放大,因而只是1個(gè)文字中的一部分被放大到超過(guò)需要。因而,當(dāng)相鄰的行具有相同的圖案的情況下,使成本值增加,通過(guò)使這些行難以被放大,防止只是1個(gè)文字中的特定位置偏頗地被放大。
這樣,如果成本計(jì)算處理結(jié)束,則處理返回圖3所示的行方向放大處理。而后,CPU1對(duì)于成為對(duì)象的字體的全部的行判定成本計(jì)算是否結(jié)束(步驟S13),當(dāng)未結(jié)束時(shí)進(jìn)行全部行的成本計(jì)算。當(dāng)對(duì)于全部行成本計(jì)算結(jié)束時(shí)(步驟S13Yes),CPU1如圖7(a)所示,按照成本低的順序?qū)⑿信判?步驟S14)。在7(a)中,從成本小的行開始順序地標(biāo)注A、B、C、…。進(jìn)而,在具有相同成本的行有多條的情況下,通過(guò)從接近文字中央的行開始順序地標(biāo)注上位順序,放大的方向在左右方向上沒(méi)有偏頗(偏向)。在圖7(a)的例子中,成本是“3”的列有6個(gè),對(duì)于它們?nèi)鐝闹醒腴_始順序在左右上分散那樣,排序?yàn)镃、D、E、F、G。這樣,如從文字的中央向左右方向平衡好地放大那樣,標(biāo)注成為放大對(duì)象的順序。
如果以成本低的順序,各行的排序結(jié)束,CPU1,確定根據(jù)放大率放大的行數(shù)(步驟S15)。在此,所謂放大率,通過(guò)此次的字體放大處理,指示放大點(diǎn)陣字體的原數(shù)據(jù)的比例。在步驟S1中當(dāng)進(jìn)行字體放大指示時(shí),在該指示中包含放大率的信息。例如,當(dāng)用戶為了容易看文字而指示文字的放大時(shí),選擇其放大率(例如,120%,150%等)。另外,無(wú)論是否是用戶的指示,即使在通過(guò)便攜終端裝置10的特定的處理自動(dòng)地進(jìn)行字體放大處理的情況下,也必須確定放大率。因而,根據(jù)其放大率,在成為對(duì)象的字體的行數(shù)中,確定放大幾行。例如,在成為放大對(duì)象的字體的行數(shù)是15行(15點(diǎn)),放大率被確定為120%(1.2倍)的情況下,放大的行的數(shù)量成為15×1.2=18(行),只放大3行。圖7(a)以及(b)的例子是此情況的例子。
這樣,如果確定放大的行的數(shù)量(數(shù)目),則CPU1執(zhí)行放大處理(步驟S16)。即,從成本小的行開始順序地以放大的行的數(shù)量進(jìn)行放大。這種情況下的放大,例如,通過(guò)在成為放大對(duì)象的行的傍邊插入和成為放大對(duì)象的行相同的字體像素圖案的行來(lái)進(jìn)行。在圖7(a)以及(b)的例子中,因?yàn)槿缟纤瞿菢臃糯蟮男械臄?shù)量是3行,所以從圖7(a)所示的成本小的行開始順序?qū)?行(成本順序是“A”、“B”、“C”的行),插入具有相同的字體構(gòu)成像素圖案的行。其結(jié)果,如圖7(b)所示,通過(guò)插入3行,作為整體在橫向得到18行(18點(diǎn))的放大文字。
這樣,如果行方向放大處理結(jié)束,則處理返回到圖2所示的主例程。而后,CPU1,進(jìn)行列方向放大處理(步驟S4)。進(jìn)而,在該列方向放大處理中成為對(duì)象的字體,成為對(duì)行方向的放大處理后的字體。因而,在圖7(a)以及(b)的例子中,對(duì)橫向成為了18行(點(diǎn))的字體進(jìn)行。
列方向放大處理,不是每行而是每列進(jìn)行基本上和圖3所示的行方向放大處理一樣的處理。即,每列地把成為放大對(duì)象的字體分割(步驟S11),對(duì)各列進(jìn)行成本計(jì)算(步驟S12),對(duì)各列按照成本低的順序排序(步驟S14),根據(jù)放大率確定成為放大對(duì)象的列的數(shù)量(步驟S15),對(duì)成為對(duì)象的列執(zhí)行放大處理(步驟S16)。進(jìn)而,在圖4所示的成本計(jì)算處理中,執(zhí)行在縱向上考慮了相鄰像素的成本的加權(quán)(步驟S22)、考慮了空白的加權(quán)(步驟S23),以及具有相同成本的列的加權(quán)(步驟S24)。另外,在本例子的放大處理中,因?yàn)樵诳v向以及橫向上以相同的放大率放大成為對(duì)象的字體,所以在步驟S15中使用的放大率和在行方向放大處理中使用的放大率相同。
這樣,如果在行方向以及列方向上放大處理結(jié)束,則CPU1把得到的字體,即處理字體存儲(chǔ)在處理字體存儲(chǔ)器14中(步驟S5),根據(jù)需要在顯示部12顯示。這樣,放大后的字體被顯示在便攜終端裝置10的顯示部12上。
如上所述,在本發(fā)明的字體放大處理中,根據(jù)成為對(duì)象的字體的構(gòu)成(字體構(gòu)成像素的圖案)對(duì)每行、每列計(jì)算成本,根據(jù)成本放大適宜的行、列。具體地說(shuō),通過(guò)使接近線段的行、列難以被放大,因而防止文字中的線段部分被放大為超過(guò)需要(步驟S22)。另外,對(duì)于在端部上空白多的文字,防止只放大空白部分,文字部分的放大不充分的情況(步驟S23)。進(jìn)而,當(dāng)具有相同圖案的行、列相鄰時(shí),使它們難以被放大,防止只有文字中的特定部分被放大到超過(guò)需要的情況(步驟S24)。通過(guò)這些處理,考慮構(gòu)成文字的像素圖案,放大后的文字平衡不會(huì)不自然,可以自然的放大。
進(jìn)而,上述說(shuō)明的字體放大處理,在確定應(yīng)該顯示在顯示部12上的文字串(字符串)的時(shí)刻可以每1文字地執(zhí)行。另外,當(dāng)用戶指定顯示字體的尺寸變更等時(shí),可以對(duì)于在字體ROM22內(nèi)預(yù)先準(zhǔn)備的全部的原數(shù)據(jù)進(jìn)行放大處理把其結(jié)果存儲(chǔ)在處理字體存儲(chǔ)器14內(nèi)。在任何情況下,因?yàn)槿缟纤鲎煮w放大處理自身以整數(shù)的簡(jiǎn)單運(yùn)算完成,所以處理所需要的時(shí)間非常短,不需要用戶感到不快的處理時(shí)間。
字體縮小處理以下,說(shuō)明字體縮小處理。圖8展示字體縮小處理。
字體縮小處理,基本上和字體放大處理一樣地進(jìn)行。即,CPU1,如果接收字體縮小指示(步驟S41),則從字體ROM22抽出成為對(duì)象的字體的原數(shù)據(jù),展開在作為工作存儲(chǔ)器的RAM24中(步驟S42)。接著,CPU1進(jìn)行行方向縮小處理(步驟S43),進(jìn)而進(jìn)行列方向縮小處理(步驟S44)。而后,如果制成處理字體,則CPU1,在把制作成的處理字體存儲(chǔ)在處理字體存儲(chǔ)器14中(步驟S45)的同時(shí),顯示在顯示部12上(步驟S46)。這樣進(jìn)行字體縮小處理。
以下,參照?qǐng)D9說(shuō)明在字體縮小處理中的行方向縮小處理。圖9是行方向縮小處理的流程圖。圖9所示的行方向縮小處理,基本上以和圖3所示的字體放大處理中的行方向放大處理同樣的順序進(jìn)行。即,CPU1,把成為對(duì)象的字體以行單位分割(步驟S51),為每行計(jì)算成本(步驟S52),如果對(duì)全部的行得到成本(步驟S53Yes),則按照成本低的順序?qū)π懈杜c順序(步驟S54)。接著,CPU1根據(jù)縮小率確定縮小的行的數(shù)量(步驟S55),對(duì)成為對(duì)象的行進(jìn)行縮小處理。
這樣,在字體縮小處理中的行方向縮小處理,基本流程和字體放大處理中的行方向放大處理一樣。但是,在字體縮小處理中的行方向縮小處理,在步驟S52中的成本計(jì)算方法以及步驟S56中的縮小方法中,和字體放大處理的情況不同。以下說(shuō)明該不同。
首先,說(shuō)明成本計(jì)算。字體放大處理中的成本,是表示線段量,即是表示包含在各行或者列中的像素是接近線段,還是接近點(diǎn)的值。與此相對(duì),在字體縮小處理中的成本,是表示相似度,即各行或者列與相鄰的行或者列的相似程度的值。具體地說(shuō),CPU1對(duì)各行,計(jì)算出與相鄰的行的“異”(XOR)。
“異”的值,如果相鄰的像素相同則是“0”,如果相鄰的像素不同則是“1”。因而,對(duì)于被包含在各行中的各字體構(gòu)成像素求“異”,把該值為“1”的字體構(gòu)成要素的數(shù)作為該行的成本。因而,成本越高,該行和相鄰行的字體像素圖案越不相似,成本越低,該行和相鄰行的字體像素圖案越類似。這樣,成本是表示和相鄰行的相似度(嚴(yán)格地說(shuō)是非相似度)的值。
即,某一行的成本低意味著該行的字體像素圖案和相鄰行的字體像素圖案相似。因而,通過(guò)把具有相似的像素圖案的行優(yōu)先作為縮小對(duì)象,刪除類似的行。這是基于在相鄰的行相互類似的情況下,即使優(yōu)先刪除它,對(duì)文字整體的影響、不協(xié)調(diào)感少的想法。由此,可以自然地縮小。
如果行方向縮小處理結(jié)束,則接著進(jìn)行列方向縮小處理(步驟S44),這基本上和行方向縮小處理一樣。把成為對(duì)象的字體以列單位分割(步驟S51),對(duì)每列計(jì)算成本(步驟S52),如果對(duì)于全部列得到成本(步驟S53Yes),則按照成本低的順序?qū)⒘信判?步驟S54)。而后,CPU1,確定根據(jù)縮小率縮小的列的數(shù)量(步驟S55),對(duì)成為對(duì)象的列進(jìn)行縮小處理。
圖10(a)~(c)中展示列方向縮小處理的狀態(tài)。首先,如圖10(a)所示對(duì)各列進(jìn)行成本計(jì)算,接著如圖10(b)所示按照成本低的順序進(jìn)行列的排序,從成本低的列開始順序地成為縮小的對(duì)象。在步驟S56的縮小處理中,例如如圖10(c)所示,從成本低的列開始順序地刪除該行。在圖10(c)的例子中,刪除成本低的3個(gè)列(A,B,C)。
如上所述,在本發(fā)明的字體縮小處理中,把成為對(duì)象的字體在行方向以及列方向上進(jìn)行分割,考慮分別相鄰的行或者列的相似度進(jìn)行縮小。因而,因?yàn)閮?yōu)先縮小(行或者列的刪除)字體像素圖案相似的行或者列相鄰的部分,所以縮小后的字體不自然少。
在圖11(a)以及(b)中,展示采用單純坐標(biāo)變換的字體放大·縮小處理、和通過(guò)本發(fā)明的字體放大·縮小處理得到的放大·縮小字體的例子。從圖可以知道,在采用單純坐標(biāo)變換處理的放大·縮小字體中縱和橫的筆畫(ストロ一ク)通過(guò)放大而成為2重(“本”這一字的橫線,“肌”這一字的右側(cè)的縱線等),或者斜線看到鋸齒。另外,通過(guò)縮小,文字的左右的平衡喪失(“本”這一字的左右的平衡),像素之間連結(jié)看起來(lái)成為另一文字(“肌”這一字的左側(cè)未看成“月”而看成“目”)。與此相反,在本發(fā)明的字體放大·縮小處理中,不產(chǎn)生這樣的問(wèn)題,可以得到自然的放大·縮小字體。
行方向處理和列方向處理的順序以下,研究字體放大/縮小處理中的行方向放大/縮小處理,和列方向放大/縮小處理的順序。在前面已說(shuō)明的字體放大/縮小處理中,首先進(jìn)行行方向的放大縮小處理,接著進(jìn)行列方向的放大/縮小處理(即,首先在橫向上放大/縮小,接著在縱向上放大/縮小)。但是,這是1個(gè)例子,也可以先進(jìn)行列方向的放大/縮小處理,再進(jìn)行行方向的放大/縮小處理。哪個(gè)理想呢,這依賴于成為處理對(duì)象的字體的構(gòu)成。
在圖12(a)以及(b)中展示相對(duì)相同的像素圖案用不同的順序進(jìn)行放大的情況下的例子。圖12(a)的例子,是首先進(jìn)行縱向放大,而后進(jìn)行橫向放大的例子。在圖12(a)中,在最左邊的原數(shù)據(jù)50a中如果計(jì)算水平方向的成本則從上開始第2行最小。因而,如果從上開始把第2行在縱向上放大1像素則可以得到正中的數(shù)據(jù)50b。接著,在數(shù)據(jù)50b中如果計(jì)算垂直方向的成本則從左開始第4行以及第5行的成本最小。因而,如果將該一方在橫向上放大1像素,則可以得到最右邊的放大后數(shù)據(jù)50c。
另一方面,圖12(b)的例子,是首先在橫向上進(jìn)行放大,而后在縱向上進(jìn)行放大的例子。在圖12(b)中,在最左邊的原數(shù)據(jù)60a中如果計(jì)算垂直方向的成本,則從左開始第4以及第5行最小。因而,如果把其一方在橫向上放大1像素則可以得到正中的數(shù)據(jù)60b。接著,在數(shù)據(jù)60b中如果計(jì)算水平方向的成本,則從上面開始第1行以及第3行的成本最小。因而,如果從上面開始把第1行在縱向上放大1像素,則可以得到最右邊的放大后數(shù)據(jù)60c。
這樣,即使原數(shù)據(jù)相同,通過(guò)按照縱→橫順序放大,或者按照橫→縱順序放大,作為結(jié)果得到的數(shù)據(jù)不同。在圖12(a)以及(b)的例子中,對(duì)原數(shù)據(jù)如圖12(a)所示以縱→橫順序放大的一方被自然放大。因而,為了對(duì)全部文字進(jìn)行自然的放大,優(yōu)選地對(duì)每個(gè)文字實(shí)驗(yàn)地進(jìn)行以縱→橫,以及橫→縱的順序進(jìn)行放大處理,預(yù)先確定以哪個(gè)順序進(jìn)行放大可以得到自然的處理字體。而后,如圖12(c)示意性地展示那樣,當(dāng)對(duì)各字體的原數(shù)據(jù)進(jìn)行放大/縮小處理時(shí),優(yōu)選地把表示縱→橫順序好,還是橫→縱順序好的處理順序信息(例如,標(biāo)志等)作為屬性數(shù)據(jù)附加。如果這樣,則CPU16,在字體放大/縮小處理的執(zhí)行時(shí)參照從字體ROM22讀出的字體上附屬的處理順序信息,用其上表示的順序進(jìn)行字體的放大·縮小即可。進(jìn)而,即使是相同的字體,因?yàn)檫€有在放大時(shí)理想的處理順序,和在縮小時(shí)理想的處理順序不同的情況,所以優(yōu)選地,對(duì)于放大/縮小處理,各自準(zhǔn)備處理順序信息。進(jìn)而,在由于放大率/縮小率理想的處理順序不同的情況下,只要對(duì)每個(gè)放大率/縮小率準(zhǔn)備處理順序信息即可。
進(jìn)而,在本實(shí)施方式中,雖然從成本小的行或者列順序地進(jìn)行像素的放大或者縮小,但本發(fā)明的適用范圍不限于此,例如如果把取在本實(shí)施方式中使用的成本的倒數(shù)的成本定義為新意義的成本,則通過(guò)從成本大的行或者列順序地進(jìn)行像素的放大或者縮小處理,可以得到和本實(shí)施方式同樣的效果。
實(shí)施方式2
以下,說(shuō)明本發(fā)明的實(shí)施方式2。實(shí)施方式2,涉及字體變形處理。
便攜終端裝置的構(gòu)成圖13展示適用了本發(fā)明的實(shí)施方式的點(diǎn)陣字體的變形處理的便攜終端裝置的概略構(gòu)成。在圖13中,便攜終端裝置100例如是便攜電話、PDA等的圖像顯示區(qū)域比較小的終端裝置。便攜終端裝置100具備顯示部112、變形字體存儲(chǔ)器114、CPU116、輸入部118、程序ROM120、字體ROM122、RAM124。
顯示部22,可以設(shè)置成例如LCD(Liquid Crystal Display液晶顯示裝置)等重量輕、薄型的顯示裝置,在顯示裝置內(nèi)顯示由點(diǎn)陣字體構(gòu)成的文字。
輸入部118,如果是便攜電話則可以由各種操作按鍵等構(gòu)成,如果是PDA則可以用檢測(cè)觸摸筆等的接觸的輸入板等構(gòu)成,可以在用戶進(jìn)行各種指示、選擇時(shí)使用。對(duì)輸入部118輸入的指示、選擇等,被變換為電氣信號(hào)送到CPU116。
程序ROM120,存儲(chǔ)用于執(zhí)行便攜終端裝置100的各種功能的各程序,特別地在本實(shí)施方式中存儲(chǔ)點(diǎn)陣字體的變形程序(以下,稱為“字體變形程序”),存儲(chǔ)利用點(diǎn)陣字體的文字的顯示程序等。
字體ROM122,存儲(chǔ)點(diǎn)陣字體的原數(shù)據(jù)(還稱為“字母數(shù)據(jù)”)。進(jìn)而,點(diǎn)陣字體的原數(shù)據(jù),一般是例如16×16點(diǎn)等的,縱橫筆相等的字體(還稱為“正方字體”)。
RAM124,在根據(jù)點(diǎn)陣字體的變形程序變形處理點(diǎn)陣字體的原數(shù)據(jù)時(shí)作為工作用存儲(chǔ)器使用。另一方面,變形字體存儲(chǔ)器114,是暫時(shí)存儲(chǔ)通過(guò)根據(jù)點(diǎn)陣字體的變形程序的放大或者縮小處理制作的字體(以下,還稱為“變形字體”)。變形字體存儲(chǔ)器114,通??梢杂蒖AM。閃存(フラッシユメモリ)等構(gòu)成,直至便攜終端裝置100被切斷電源保持存儲(chǔ)內(nèi)容。
CPU116,通過(guò)執(zhí)行被存儲(chǔ)在程序ROM120內(nèi)的各種程序,執(zhí)行便攜終端裝置100的各種功能。特別地在本實(shí)施方式中,通過(guò)讀出被存儲(chǔ)在程序ROM120內(nèi)的文字顯示程序進(jìn)行執(zhí)行,使文字顯示在顯示部112上。另外,同樣通過(guò)讀出被存儲(chǔ)在程序ROM120內(nèi)的字體變形程序進(jìn)行執(zhí)行,把被存儲(chǔ)在字體ROM122內(nèi)的點(diǎn)陣字體的原數(shù)據(jù)在縱向、橫向上放大、縮小,生成變形字體。進(jìn)而,CPU116,通過(guò)執(zhí)行此外各種程序?qū)崿F(xiàn)便攜終端裝置100的各種功能,這些因?yàn)楹捅景l(fā)明沒(méi)有直接關(guān)系,所以省略說(shuō)明。
放大的字體變形處理以下,說(shuō)明作為本發(fā)明的特征部分的字體變形處理。字體變形處理,如上所述通過(guò)CPU116執(zhí)行被存儲(chǔ)在程序ROM120內(nèi)的字體變形小程序進(jìn)行。字體的變形,實(shí)際上通過(guò)在縱向或者橫向上放大或者縮小字體數(shù)據(jù)實(shí)現(xiàn)。當(dāng)特定字體的縱向的放大率或者縮小率,和橫向的放大率或者縮小率一致時(shí),為字體的單純放大或者縮小,但當(dāng)縱向的放大率或者縮小率,和橫向的放大率或者縮小率不同時(shí)成為字體的變形。以下,作為字體變形處理,分為字體的放大的變形處理,和縮小的變形處理順序地進(jìn)行說(shuō)明。
首先,參照?qǐng)D4至圖7,圖14以及圖15說(shuō)明放大的字體變形處理。圖4、圖14以及圖15是放大的字體變形處理的主例程以及子例程的流程圖。圖5至圖7,是用于說(shuō)明放大的字體變形處理的各步驟的圖。
如果參照?qǐng)D14,首先CPU116接收字體變形指示(步驟S101)。字體變形指示,在例如用戶操作輸入部118進(jìn)行顯示字體的縱橫比的指定、選擇和顯示模式的指定、選擇時(shí),根據(jù)來(lái)自輸入部118的指示生成。進(jìn)而,即使在用戶的指示以外的情況下,也有根據(jù)對(duì)顯示部112的顯示內(nèi)容需要字體變形的情況。例如,在顯示區(qū)域內(nèi)顯示特定的文字?jǐn)?shù)據(jù)時(shí),也有文字顯示程序自動(dòng)地要求字體變形的情況。在字體變形指示中包含縱向的放大率和橫向的放大率。
如果進(jìn)行字體的變形指示,則CPU116從字體ROM122中讀出成為顯示對(duì)象的字體的原數(shù)據(jù),在作為工作存儲(chǔ)器的RAM124中展開(步驟S102)。接著,CPU116,判定在步驟S1中輸入的字體變形指示是否包含字體的橫向的放大(步驟S103)。當(dāng)包含字體的橫向的放大時(shí)(步驟S103Yes),CPU116執(zhí)行橫向放大處理,首先在橫向上放大成為對(duì)象的字體(步驟S104)。進(jìn)而,當(dāng)在步驟S3中判定為字體變形指示不包含橫向的放大時(shí)(S103No),處理直接進(jìn)入下一步驟。
接著,CPU116,判定在步驟S101中輸入的字體變形指示,是否包含字體的縱向的放大(步驟S105)。當(dāng)包含字體的縱向的放大時(shí)(步驟S105Yes),CPU116執(zhí)行縱向放大處理,在縱向上放大成為對(duì)象的字體(步驟S106)。進(jìn)而,在步驟S105中當(dāng)判定為字體變形指示不包含縱向的放大時(shí)(步驟S105No),處理直接進(jìn)入下一步驟。進(jìn)而,行方向的放大率和列方向的放大率,分別被設(shè)定為在步驟S101指定的比例,通常兩者不同。這樣,如果在橫向以及縱向上字體的放大結(jié)束,則CPU116把放大后的字體數(shù)據(jù)作為變形字體暫時(shí)保存在變形字體存儲(chǔ)器114中(步驟S107),進(jìn)而顯示在顯示部112上(步驟S108)。這樣,特定的字體被變形并被顯示在顯示部112上。以下,參照?qǐng)D15的流程圖說(shuō)明在步驟S104中進(jìn)行的橫向放大處理的詳細(xì)情況。在圖15中,首先CPU16把成為對(duì)象的字體分割為多個(gè)行(步驟S111)。而后,CPU116,對(duì)由分割得到的每行計(jì)算成本(步驟S112)。在此,所謂成本是根據(jù)構(gòu)成字體的像素?cái)?shù)以及相鄰的像素的有無(wú)等求得的值,在放大的字體變形處理中表示線段量。即,成本越大,意味著在該行上不是點(diǎn)和點(diǎn)的集合,而是包含線段的程度越高。進(jìn)而,成本計(jì)算處理,因?yàn)楹驮趯?shí)施方式1中參照?qǐng)D4至圖6說(shuō)明的處理相同,所以在此省略說(shuō)明。
如果成本計(jì)算處理結(jié)束,則處理返回圖15所示的橫向放大處理。而后,CPU116判定對(duì)成為對(duì)象的字體全體的行成本計(jì)算是否已結(jié)束(步驟S113),當(dāng)未結(jié)束時(shí)進(jìn)行全部行的成本計(jì)算。當(dāng)對(duì)全部行成本計(jì)算結(jié)束時(shí)(步驟S113Yes),CPU116如圖7(a)所示,按照成本的順序?qū)π信判?步驟S114)。在圖7(a)中,從成本小的行開始順序地付與A、B、C順序。進(jìn)而,當(dāng)具有同樣成本的行有多個(gè)時(shí),從接近文字中央的行開始順序地付與上位的順序,由此放大的方向在左右方向上沒(méi)有偏頗。在圖7(a)的例子中,成本是“3”的列有6個(gè),但對(duì)它們?nèi)鐝闹醒腴_始順序地在左右分散那樣排序?yàn)镃、D、E、F、G、H。這樣,如從文字的中央開始在左右上不失去平衡地進(jìn)行放大那樣,付與作為放大對(duì)象的順序。
如果按照成本低的順序各行的順序付與結(jié)束,則CPU116,根據(jù)在步驟S101中指定的橫向的放大率,確定放大的行的數(shù)量(步驟S115)。該放大率,指示通過(guò)此次的字體放大處理,把點(diǎn)陣字體的原數(shù)據(jù)在橫向上放大的比例。如上所述,在步驟S1中當(dāng)進(jìn)行字體變形指示時(shí),在該指示中,包含縱向以及橫向的放大率信息。例如,用戶為了容易看文字,當(dāng)指示把文字變形為縱長(zhǎng)時(shí),縱向的放大率比橫向的放大率大,當(dāng)指示把文字變形為橫長(zhǎng)時(shí),橫向的放大率比縱向的放大率大。放大率,例如,作為120%,150%等的比例得到。另外,不管是否有用戶的指示,在由便攜終端裝置100的特定的處理自動(dòng)地進(jìn)行字體變形處理的情況下,也必須確定縱向以及橫向的放大率。這樣,根據(jù)橫向的放大率,在成為對(duì)象的字體的行數(shù)中,確定放大幾行。例如,當(dāng)成為放大對(duì)象的字體的行數(shù)是15行(15點(diǎn)),確定為橫向的放大率是120%(1.2倍)的情況下,在橫向上放大的行的數(shù)量是15×1.2=18(行),放大3行。圖7(a)以及(b)的例子是此情況下的例子。
這樣,如果在橫向上放大的行的數(shù)量確定,則CPU116執(zhí)行放大處理(步驟S116)。即,從成本小的行開始順序地以放大的行的數(shù)量進(jìn)行放大。這種情況下的放大,例如,通過(guò)把和成為放大對(duì)象的行相同的字體像素圖案的行插入到成為放大對(duì)象的行的旁邊來(lái)進(jìn)行。在圖7(a)以及(b)的例子中,因?yàn)槿缟纤龇糯蟮男械臄?shù)量是3行,所以從圖7(a)所示的成本小的行開始順序?qū)?個(gè)行(成本順序是“A”、“B”、“C”的行),插入具有相同字體構(gòu)成像素圖案的行。其結(jié)果,如圖7(b)所示,插入3個(gè)行,作為整體得到橫向18行(18點(diǎn))的放大文字。這樣,如果橫向放大處理結(jié)束,則處理返回圖14所示的主例程。
以下,說(shuō)明圖14的步驟S6中的縱向放大處理。進(jìn)而,在該縱向放大處理中成為對(duì)象的字體,成為對(duì)橫向的放大處理后的字體。因而,在圖7(a)以及(b)的例子中,對(duì)橫向成為18行(點(diǎn))的字體進(jìn)行。
縱向放大處理,不是以每行,而是以每列進(jìn)行基本上和圖15所示的橫向放大處理相同的處理。即,把成為放大對(duì)象的字體每列地分割(步驟S111),對(duì)各列進(jìn)行成本計(jì)算(步驟S112),按照成本低的順序?qū)Ω髁羞M(jìn)行排序(步驟S114),根據(jù)縱向的放大率確定成為放大對(duì)象的列的數(shù)量(步驟S115),在成為對(duì)象的列上執(zhí)行放大處理(步驟S116)。進(jìn)而,在圖4所示的成本計(jì)算處理中,執(zhí)行考慮了在縱向上相鄰像素的成本的加權(quán)(步驟S22),考慮了空白的加權(quán)(步驟S23),以及具有相同成本的列的加權(quán)(步驟S24)。
如上所述,在放大的字體變形處理中,根據(jù)成為對(duì)象的字體的構(gòu)成(字體構(gòu)成像素的圖案)對(duì)每行、列計(jì)算成本,根據(jù)成本放大適宜的行、列。具體地說(shuō),通過(guò)使接近線段的行、列難以被放大,防止文字中的線段部分被放大到超過(guò)需要(步驟S22)。另外,對(duì)于端部上空白多的文字,防止只放大空白部分而文字部分的放大不充分的現(xiàn)象(步驟S23)。進(jìn)而,當(dāng)具有相同圖案的行、列相鄰時(shí),使它們難以被放大,防止只有文字中的特定部分被放大到需要以上的現(xiàn)象(步驟S24)。通過(guò)這些處理,考慮構(gòu)成文字的像素圖案,使得放大后的文字的平衡沒(méi)有不自然,可以進(jìn)行自然的字體變形。
縮小的字體變形處理以下,說(shuō)明縮小的字體變形處理。圖16展示縮小的字體變形處理??s小的字體變形處理,基本上和放大的字體變形處理同樣地進(jìn)行。即,CPU116,如果接收字體變形指示(步驟S141),從字體ROM122抽出成為對(duì)象的字體的原數(shù)據(jù),展開在作為工作存儲(chǔ)器的RAM124中(步驟S142)。
接著,CPU116,判定步驟S1中的字體變形指示是否伴隨橫向的縮小(步驟S143),當(dāng)伴隨橫向的縮小時(shí)進(jìn)行橫向縮小處理(步驟S144)。進(jìn)而,CPU116,判定在步驟S1中的字體變形指示是否伴隨縱向的縮小(步驟S145),當(dāng)伴隨縱向的縮小時(shí)進(jìn)行縱向縮小處理(步驟S146)。而后,如果制成變形字體,則CPU116,在把制成的變形字體存儲(chǔ)在變形字體存儲(chǔ)器114中(步驟S147)的同時(shí),顯示在顯示部112上(步驟S148)。這樣,進(jìn)行縮小的字體變形處理。
以下,參照?qǐng)D17說(shuō)明在縮小的字體變形處理中的橫向縮小處理。圖17是橫向縮小處理的流程圖。圖17所示的橫向縮小處理,基本上以和采用圖15所示的放大的字體變形處理中的橫向放大處理一樣的順序進(jìn)行。即,CPU116,把成為對(duì)象的字體以行單位分割(步驟S151),對(duì)每行計(jì)算成本(步驟S152),如果對(duì)于全部行得到成本(步驟S153Yes),則以成本低的順序?qū)π信判?步驟S154)。接著,CPU116,根據(jù)橫向的縮小率確定縮小的行的數(shù)量(步驟S155),對(duì)成為對(duì)象的行進(jìn)行縮小處理。
這樣,在縮小的字體變形處理中的橫向縮小處理,基本的流程和放大的字體變形處理中的橫向放大處理一樣。但是,在縮小的字體變形處理中的橫向縮小處理,在步驟S152中的成本計(jì)算方法以及在步驟S156中的縮小方法中,和放大的字體變形處理的情況不同。以下,說(shuō)明該不同。
首先,說(shuō)明成本計(jì)算。在放大的字體變形處理中的成本,是表示線段量,即表示包含在各行或者列中的像素是接近線段,還是接近點(diǎn)的值。與此相反,在縮小的字體變形處理中的成本,是表示相似度,即表示各行或者列,在相鄰的行或者列中相似程度如何的值。具體地說(shuō),CPU116對(duì)各行,計(jì)算和相鄰行的“異”(XOR)?!爱悺钡闹?,如果相鄰的像素是相同的則為“0”,如果相鄰的像素是不同的則為“1”。因而,對(duì)于包含在各行中的各字體構(gòu)成像素求“異”,把該值成為“1”的字體構(gòu)成要素的數(shù)量作為該行的成本。因而,成本越高,該行和相鄰的行的字體像素圖案越不相似,成本越低,該行和相鄰的行的字體像素越相似。這樣,成本變?yōu)楸硎鞠噜徯械南嗨贫?嚴(yán)格地說(shuō),是非相似度)的值。
即,所謂某一行的成本低,意味著該行的字體像素圖案和相鄰行的字體像素圖案相似。因而,通過(guò)把具有相似的像素圖案的行優(yōu)先作為縮小的對(duì)象,刪除相似的行。這是基于,在相鄰的行相互類似的情況下,即使優(yōu)先刪除它,對(duì)文字全體的影響、不協(xié)調(diào)感少的想法。由此,可以自然地縮小。
如果橫向縮小結(jié)束,則接著進(jìn)行縱向縮小處理(步驟S146),這和橫向縮小處理基本上相同。把成為對(duì)象的字體以列單位分割(步驟S151),為每列計(jì)算成本(步驟S152),如果對(duì)全部列都得到成本(步驟S153Yes),則按照成本低的順序?qū)α信判?步驟S154)。而后,CPU116,根據(jù)縱向縮小率確定縮小的列的數(shù)量(步驟S155),對(duì)成為對(duì)象的列進(jìn)行縮小處理。
圖10(a)~(c)展示縱向縮小處理的狀態(tài)。首先,如圖(a)所示對(duì)各列進(jìn)行成本計(jì)算,接著如圖10(b)所示以成本低的順序進(jìn)行列的排序,從成本低的列開始順序地成為縮小對(duì)象。在步驟S56的縮小處理中,例如圖10(c)所示,從成本低的列開始順序地刪除該行。在圖10(c)的例子,刪除成本低的3個(gè)列(A,B,C)。
如上所述,在本發(fā)明的縮小的字體變形處理中,把成為對(duì)象的字體在行方向以及列方向上分割,分別考慮相鄰的行或者列的相似度進(jìn)行縮小。因而,因?yàn)樽煮w像素圖案相似的行或者列相鄰的部分優(yōu)先進(jìn)行縮小(行或者列的刪除),所以減少變形后的字體的不自然。
在圖11(a)以及(b)中,展示采用單純的座標(biāo)變換的字體變形處理、和由本發(fā)明的字體變形處理得到的變形字體(放大例子和縮小例子)的例子。進(jìn)而,該例子,為了便于說(shuō)明,展示在縱向和橫向上以相同的放大率、縮小率變形的例子。從圖可知,在采用單純的座標(biāo)變換處理的變形字體中橫、縱的筆畫由于放大而成2重(“本”這個(gè)字的橫線,“肌”這個(gè)字右側(cè)的縱線等),斜線看到鋸齒狀。另外,由于縮小,文字的左右平衡被打破(“本”這個(gè)字的左右平衡),像素之間相聯(lián)結(jié)看起來(lái)像另一文字(“肌”這個(gè)字的左側(cè)不是“月”而看成“目”)。與此相反,在本發(fā)明的字體變形處理中,不產(chǎn)生那樣的問(wèn)題,得到自然的變形字體。
進(jìn)而,以上說(shuō)明的字體變形處理,可以在確定應(yīng)該顯示在顯示部112上的文字串的時(shí)刻每1文字地執(zhí)行。另外,當(dāng)用戶指定顯示字體的縱橫比變更等時(shí),也可以對(duì)于在字體ROM122內(nèi)預(yù)先準(zhǔn)備的全部的原數(shù)據(jù)進(jìn)行字體變形處理,把其結(jié)果存儲(chǔ)在變形字體存儲(chǔ)器114內(nèi)。無(wú)論在哪種情況下,如上所述因?yàn)樽煮w變形處理自身以整數(shù)的簡(jiǎn)單的計(jì)算完成,所以處理所需要的時(shí)間非常短,不需要使用戶感到不快的處理時(shí)間。
另外,在上述的說(shuō)明中,把字體的變形分為放大的變形和縮小的變形進(jìn)行了說(shuō)明,但也可以組合兩者生成變形字體。例如,可以把某一字體在縱向放大,在橫向縮小生成縱長(zhǎng)字體,或者在縱向縮小,在橫向放大生成橫長(zhǎng)字體。這種情況下,對(duì)放大的方向適用采用上述放大的字體變形處理,對(duì)于縮小方向適用采用縮小的字體變形處理即可。
進(jìn)而,從圖14以及圖16可知,只在縱向或者橫向的一方上放大或者縮小字體生成變形字體當(dāng)然也可以,這種情況下,只要在放大或者縮小的方向上進(jìn)行處理即可。
橫向處理和縱向處理的順序以下,研究在字體變形處理中的橫向放大/縮小處理,和縱向放大/縮小處理的順序。在前面說(shuō)明的字體變形處理中,首先進(jìn)行橫向的放大/縮小處理,而后進(jìn)行縱向的放縮大/小處理(即,首先在橫向上放大縮小,而后在縱向上放大縮小)。但是,這是1個(gè)例子,也可以先進(jìn)行縱向的放大/縮小處理,而后進(jìn)行橫向的放大/縮小處理。而后,哪個(gè)理想呢,這依賴于成為處理對(duì)象的字體的構(gòu)成。
在圖12(a)以及(b)中,展示對(duì)相同的像素圖案以不同的順序進(jìn)行放大情況的例子。圖12(a)的例子,是首先在縱向上進(jìn)行放大,接著在橫向上進(jìn)行放大的例子。在圖12(a)中,如果在最左邊的原數(shù)據(jù)50a中計(jì)算水平方向的成本則從上開始第2行最小。因而,如果把從上邊開始第2行在縱向上放大1像素則可以得到正中的數(shù)據(jù)50b。以下,如果在數(shù)據(jù)50b中計(jì)算垂直方向的成本則從左邊開始第4行以及第5行的成本最小。因而,如果將該一方在橫向上放大1像素,則可以得到最右邊的放大后數(shù)據(jù)50c。
另一方面,圖12(b)的例子,是首先進(jìn)行橫向放大,接著進(jìn)行縱向放大的例子。在圖12(b)的例子中,如果在最左邊的原數(shù)據(jù)60a中計(jì)算垂直方向的成本,則從左開始第4行以及第5行最小。因而,如果把其一方在橫向上放大1像素則可以得到正中的數(shù)據(jù)60b。接著,如果在數(shù)據(jù)60b中計(jì)算水平方向的成本,則從上邊開始第1行以及第3行的成本最小。因而,如果從上面開始把第1行在縱向上放大1像素,則可以得到最右的放大后數(shù)據(jù)60c。
這樣,即使原數(shù)據(jù)相同,由于以縱→橫的順序放大,或者以橫→縱的順序放大,作為結(jié)果得到的數(shù)據(jù)不同。在圖12(a)以及(b)的例子中,對(duì)原數(shù)據(jù)如圖12(a)所示以縱→橫的順序放大的一方被自然放大。因而,為了對(duì)全部的文字進(jìn)行自然的放大,優(yōu)選地,對(duì)每個(gè)文字試驗(yàn)地以縱→橫,以及橫→縱的順序進(jìn)行變形處理,預(yù)先確定以哪個(gè)順序進(jìn)行變形處理的一方可以得到自然的變形字體。而后,如圖12(c)示意性地展示那樣,在對(duì)各字體的原數(shù)據(jù),進(jìn)行字體變形處理的情況下,更理想的是把表示是縱→橫的順序好,還是橫→縱的順序好的處理順序信息(例如,標(biāo)志等)作為屬性數(shù)據(jù)附加。如果這樣,CPU116,在字體變形處理的執(zhí)行時(shí)參照從字體ROM122讀出的字體上附屬的處理順序信息,按照該信息表示的順序進(jìn)行字體的變形即可。進(jìn)而,即使是相同的字體,因?yàn)樵诜糯髸r(shí)理想的處理順序,和縮小時(shí)理想的順序有時(shí)也不同,所以優(yōu)選地對(duì)于伴隨放大的變形處理、和伴隨縮小的變形處理分別準(zhǔn)備處理順序信息。進(jìn)而,在由于放大率/縮小率不同而理想的處理順序不同的情況下,只要為每個(gè)放大率/縮小率準(zhǔn)備處理順序信息即可。
進(jìn)而,在本實(shí)施方式中,雖然從成本小的行或者列開始順序進(jìn)行像素的放大或者縮小處理,但本發(fā)明的適用范圍并不限于此,例如如果把得在本實(shí)施方式中使用的成本的倒數(shù)得到的值定義為新的意義的成本,則通過(guò)從成本大的行或者列開始順序地進(jìn)行像素的放大或者縮小處理,可以得到和本實(shí)施方式同樣的效果。
權(quán)利要求
1.一種字體處理裝置,其特征在于,具備取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;在縱向分析上述字體數(shù)據(jù)的像素構(gòu)成的縱向分析裝置;根據(jù)縱向的分析結(jié)果,在縱橫上放大或者縮小上述字體數(shù)據(jù)的橫向放大/縮小裝置;在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成的橫向分析裝置;以及根據(jù)橫向的分析結(jié)果,在縱向放大或者縮小上述字體數(shù)據(jù)的縱向上放大/縮小裝置。
2.根據(jù)權(quán)利要求1所述的字體處理裝置,其特征在于,上述縱向分析裝置具備把上述字體數(shù)據(jù)分割為多個(gè)行的分割裝置;以及對(duì)上述每行,計(jì)算表示像素構(gòu)成的特征的成本的計(jì)算裝置;其中,上述橫向放大/縮小裝置,從上述成本小的行開始依次對(duì)規(guī)定數(shù)量的行進(jìn)行像素的放大或者縮小處理。
3.根據(jù)權(quán)利要求1所述的字體處理裝置,其特征在于,上述縱向分析裝置具備把上述字體數(shù)據(jù)分割為多個(gè)行的分割裝置;以及對(duì)上述每行,計(jì)算表示像素構(gòu)成的特征的成本的計(jì)算裝置;其中,上述橫向放大/縮小裝置,從上述成本大的行開始依次對(duì)規(guī)定數(shù)量的行進(jìn)行像素的放大或者縮小處理。
4.根據(jù)權(quán)利要求1至3的任意一項(xiàng)所述的字體處理裝置,其特征在于,上述橫向分析裝置具備把上述字體數(shù)據(jù)分割為多個(gè)列的分割裝置;以及對(duì)上述每列,計(jì)算表示像素構(gòu)成的特征的成本的計(jì)算裝置;其中,上述縱向放大/縮小裝置,從上述成本小的列開始依次對(duì)規(guī)定數(shù)量的列進(jìn)行像素的放大或者縮小處理。
5.根據(jù)權(quán)利要求1至3所述的字體處理裝置,其特征在于,上述橫向分析裝置具備把上述字體數(shù)據(jù)分割為多個(gè)列的分割裝置;以及對(duì)上述每列,計(jì)算表示像素構(gòu)成的特征的成本的計(jì)算裝置;其中,上述縱向放大/縮小裝置,從上述成本大的列開始依次對(duì)規(guī)定數(shù)量的列進(jìn)行像素的放大或者縮小處理。
6.一種字體處理裝置,其特征在于,具備取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向放大處理的橫向放大處理裝置;以及進(jìn)行上述字體數(shù)據(jù)的縱向放大處理的縱向放大處理裝置;其中,上述橫向放大處理裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;以及從上述成本小的行開始依次在橫向上放大規(guī)定數(shù)量的行的裝置;其中,上述縱向放大處理裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;以及從上述成本小的列開始依次在橫向上放大規(guī)定數(shù)量的列的裝置。
7.一種字體處理裝置,其特征在于,具備取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向放大處理的橫向放大處理裝置;以及進(jìn)行上述字體數(shù)據(jù)的縱向放大處理的縱向放大處理裝置;其中,上述橫向放大處理裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;以及從上述成本大的行開始依次在橫向上放大規(guī)定數(shù)量的行的裝置;其中,上述縱向放大處理裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;以及從上述成本大的列開始依次在縱向上放大規(guī)定數(shù)量的列的裝置。
8.根據(jù)權(quán)利要求6或者7的任意一項(xiàng)所述的字體處理裝置,其特征在于上述規(guī)定數(shù)量,由上述字體數(shù)據(jù)的縱向以及橫向的像素?cái)?shù)和上述字體數(shù)據(jù)的放大率確定。
9.根據(jù)權(quán)利要求6至8的任意一項(xiàng)所述的字體處理裝置,其特征在于,上述成本計(jì)算裝置具備對(duì)上述每行或者列,把構(gòu)成該行或者列的像素?cái)?shù)作為成本進(jìn)行計(jì)算的裝置;以及在上述成本上加算在該行或者列的方向上具有相鄰像素的像素?cái)?shù)的裝置。
10.根據(jù)權(quán)利要求6至8的任意一項(xiàng)所述的字體處理裝置,其特征在于,上述成本計(jì)算裝置具備對(duì)上述每行或者列,計(jì)算該行或者列的像素?cái)?shù)的裝置;以及把在該行或者列的方向上具有相鄰像素的像素?cái)?shù)加算到構(gòu)成上述該行或者列的像素?cái)?shù)上,把加算結(jié)果的倒數(shù)作為成本進(jìn)行計(jì)算的裝置。
11.根據(jù)權(quán)利要求6至9的任意一項(xiàng)所述的字體處理裝置,其特征在于上述字體數(shù)據(jù),包含在該字體數(shù)據(jù)的放大處理中表示應(yīng)該執(zhí)行縱向放大處理和橫向放大處理的順序的處理順序信息;所述字體處理裝置進(jìn)一步具備,根據(jù)上述處理順序信息,控制上述橫向放大處理和上述縱向放大處理的執(zhí)行順序的順序控制裝置。
12.一種字體處理裝置,其特征在于,具備取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向縮小處理的橫向縮小處理裝置;以及進(jìn)行上述字體數(shù)據(jù)的縱向縮小處理的縱向縮小處理裝置;其中,上述橫向縮小處理裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示和相鄰行的像素構(gòu)成的相似度的成本的成本計(jì)算裝置;以及從上述成本小的行開始依次在橫向上縮小規(guī)定數(shù)量的行的裝置;其中,上述縱向縮小處理裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示和相鄰列的像素構(gòu)成的相似度的成本的成本計(jì)算裝置;以及從上述成本小的列開始依次在縱向上縮小規(guī)定數(shù)量的列的裝置。
13.一種字體處理裝置,其特征在于,具備取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向縮小處理的橫向縮小處理裝置;以及進(jìn)行上述字體數(shù)據(jù)的縱向縮小處理的縱向縮小處理裝置;其中,上述橫向縮小處理裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示和相鄰行的像素構(gòu)成的相似度的成本的成本計(jì)算裝置;以及從上述成本大的行開始依次在橫向上縮小規(guī)定數(shù)量的行的裝置;其中,上述縱向縮小處理裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示和相鄰列的像素構(gòu)成的相似度的成本的成本計(jì)算裝置;以及從上述成本大的列開始依次在縱向上縮小規(guī)定數(shù)量的列的裝置。
14.根據(jù)權(quán)利要求12或者13所述的字體處理裝置,其特征在于上述規(guī)定數(shù)量,由上述字體數(shù)據(jù)的縱向以及橫向的像素?cái)?shù),和上述字體數(shù)據(jù)的縮小率確定。
15.根據(jù)權(quán)利要求12至14的任意一項(xiàng)所述的字體處理裝置,其特征在于上述成本計(jì)算裝置,對(duì)上述每行或者列,根據(jù)該行或者列的像素構(gòu)成和與該行或者列相鄰的行或者列的像素構(gòu)成的“異”,計(jì)算成本。
16.根據(jù)權(quán)利要求12至15的任意一項(xiàng)所述的字體處理裝置,其特征在于上述字體數(shù)據(jù),包含在該字體數(shù)據(jù)的縮小處理中表示應(yīng)該執(zhí)行縱向縮小處理和橫向縮小處理的順序的處理順序信息;所述字體處理裝置進(jìn)一步具備根據(jù)上述處理順序信息,控制上述橫向縮小處理和上述縱向縮小處理的執(zhí)行順序的順序控制裝置。
17.一種終端裝置,其特征在于,具備上述根據(jù)權(quán)利要求1至16的任意一項(xiàng)的字體處理裝置;存儲(chǔ)由上述字體處理裝置生成的字體數(shù)據(jù)的存儲(chǔ)裝置;以及顯示由上述字體處理裝置生成的字體數(shù)據(jù)的顯示部。
18.一種字體處理方法,其特征在于,包括取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;在縱向上分析上述字體數(shù)據(jù)的像素構(gòu)成的縱向分析步驟;根據(jù)縱向的分析結(jié)果,在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向放大/縮小步驟;在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成的橫向分析步驟;以及根據(jù)橫向的分析結(jié)果,在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向放大/縮小步驟。
19.一種字體處理方法,其特征在于,包括取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;進(jìn)行上述字體數(shù)據(jù)的橫向放大處理的橫向放大處理步驟;以及進(jìn)行上述字體數(shù)據(jù)的縱向放大處理的縱向放大處理步驟;其中,上述橫向放大處理步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)行的步驟;對(duì)上述每行,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算步驟;以及從上述成本小的行開始依次在橫向上放大規(guī)定數(shù)量的行的步驟;其中,上述縱向放大處理步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)列的步驟;對(duì)上述每列,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算步驟;以及從上述成本小的列開始依次在縱向上放大規(guī)定數(shù)量的列的步驟。
20.一種字體處理方法,其特征在于,包括取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;進(jìn)行上述字體數(shù)據(jù)的橫向放大處理的橫向放大處理步驟;以及進(jìn)行上述字體數(shù)據(jù)的縱向放大處理的縱向放大處理步驟;其中,上述橫向放大處理步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)行的步驟;對(duì)上述每行,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算步驟;以及從上述成本大的行開始依次在橫向上放大規(guī)定數(shù)量的行的步驟;其中,上述縱向放大處理步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)列的步驟;對(duì)上述每列,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算步驟;以及從上述成本大的列開始依次在縱向上放大規(guī)定數(shù)量的列的步驟。
21.一種字體處理方法,其特征在于,包括取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;進(jìn)行上述字體數(shù)據(jù)的橫向縮小處理的橫向縮小處理步驟;以及進(jìn)行上述字體數(shù)據(jù)的縱向縮小處理的縱向縮小處理步驟;其中,上述橫向縮小處理步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)行的步驟;對(duì)上述每行,計(jì)算表示與相鄰行的像素構(gòu)成的相似度的成本的成本計(jì)算步驟;以及從上述成本小的行開始依次在橫向上縮小規(guī)定數(shù)量的行的步驟;其中,上述縱向縮小處理步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)列的步驟;對(duì)上述每列,計(jì)算表示和相鄰的列的像素構(gòu)成的相似度的成本的成本計(jì)算步驟;以及從上述成本小的列開始依次在縱向上縮小規(guī)定數(shù)量的列的步驟。
22.一種字體處理方法,其特征在于,包括取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;進(jìn)行上述字體數(shù)據(jù)的橫向縮小處理的橫向縮小處理步驟;以及進(jìn)行上述字體數(shù)據(jù)的縱向縮小處理的縱向縮小處理步驟;其中,上述橫向縮小處理步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)行的步驟;對(duì)上述每行,計(jì)算表示和相鄰行的像素構(gòu)成的相似度的成本的成本計(jì)算步驟;以及從上述成本大的行開始依次在橫向上縮小規(guī)定數(shù)量的行的步驟;其中,上述縱向縮小處理步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)列的步驟;對(duì)上述每列,計(jì)算表示和相鄰列的像素構(gòu)成的相似度的成本的成本計(jì)算步驟;以及從上述成本大的列開始依次在縱向上縮小規(guī)定數(shù)量的列的步驟。
23.一種字體處理程序,是在具備計(jì)算機(jī)的終端裝置中執(zhí)行的字體處理程序,其特征在于,使上述計(jì)算機(jī)具有作為以下裝置的功能取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;在縱向上分析上述字體數(shù)據(jù)的像素構(gòu)成的縱向分析裝置;根據(jù)縱向的分析結(jié)果,在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向放大/縮小裝置,在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成的橫向分析裝置;以及根據(jù)橫向的分析結(jié)果,在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向放大/縮小裝置。
24.一種字體處理程序,是在具備計(jì)算機(jī)的終端裝置中執(zhí)行的字體處理程序,其特征在于,使上述計(jì)算機(jī)具有作為以下裝置的功能取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向放大處理的橫向放大處理裝置;以及進(jìn)行上述字體數(shù)據(jù)的縱向放大處理的縱向放大處理裝置;其中,上述橫向放大處理裝置,具備把上述字體數(shù)據(jù)分為割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;以及從上述成本小的行開始依次在橫向上放大規(guī)定數(shù)量的行的裝置;其中,上述縱向放大處理裝置,具備把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;以及從上述成本小的列開始依次在縱向上放大規(guī)定數(shù)量的列的裝置。
25.一種字體處理程序,是在具備計(jì)算機(jī)的終端裝置中執(zhí)行的字體處理程序,其特征在于,使上述計(jì)算機(jī)具有作為以下裝置的功能取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向放大處理的橫向放大處理裝置;以及進(jìn)行上述字體數(shù)據(jù)的縱向放大處理的縱向放大處理裝置;其中,上述橫向放大處理裝置,具備把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;以及從上述成本大的行開始依次在橫向上放大規(guī)定數(shù)量的行的裝置;其中,上述縱向放大處理裝置,具備把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示像素構(gòu)成的線段量的成本的成本計(jì)算裝置;以及從上述成本大的列開始依次在縱向上放大規(guī)定數(shù)量的列的裝置。
26.一種字體處理程序,是在具備計(jì)算機(jī)的終端裝置中執(zhí)行的字體處理程序,其特征在于,使所述計(jì)算機(jī)具有作為以下裝置的功能取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向縮小處理的橫向縮小處理裝置;以及進(jìn)行上述字體數(shù)據(jù)的縱向縮小處理的縱向縮小處理裝置;其中,上述橫向縮小處理裝置,具備把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示和相鄰行的像素構(gòu)成的相似度的成本的成本計(jì)算裝置;以及從上述成本小的行開始依次在橫向上縮小規(guī)定數(shù)量的行的裝置;其中,上述縱向縮小處理裝置,具備把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示和相鄰列的像素構(gòu)成的相似度的成本的成本計(jì)算裝置;以及從上述成本小的列開始依次在縱向上縮小規(guī)定數(shù)量的列的裝置。
27.一種字體處理程序,是在具備計(jì)算機(jī)的終端裝置中執(zhí)行的字體處理程序,其特征在于,使上述計(jì)算機(jī)具有作為以下裝置的功能取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;進(jìn)行上述字體數(shù)據(jù)的橫向縮小處理的橫向縮小處理裝置;以及進(jìn)行上述字體數(shù)據(jù)的縱向縮小處理的縱向縮小處理裝置;其中,上述橫向縮小處理裝置,具備把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示和相鄰行的像素構(gòu)成的相似度的成本的成本計(jì)算裝置;以及從上述成本大的行開始依次在橫向上縮小規(guī)定數(shù)量的行的裝置;其中,上述縱向縮小處理裝置,具備把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示和相鄰列的像素構(gòu)成的相似度的成本的成本計(jì)算裝置;以及從上述成本大的列開始依次在縱向上縮小規(guī)定數(shù)量的列的裝置。
28.一種字體處理裝置,其特征在于,具備接收字體變形指示的裝置;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;當(dāng)上述字體變形指示包含字體的橫向變形時(shí),在縱向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)分析結(jié)果在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向變形裝置;以及當(dāng)上述字體變形指示包含字體的縱向變形時(shí),在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)分析結(jié)果在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向變形裝置。
29.根據(jù)權(quán)利要求28所述的字體處理裝置,其特征在于,上述橫向變形裝置具備把上述字體數(shù)據(jù)分割為多個(gè)行的分割裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的特征的成本的計(jì)算裝置;以及從上述成本小的行開始依次對(duì)規(guī)定數(shù)量的行進(jìn)行像素的放大或者縮小處理的裝置。
30.根據(jù)權(quán)利要求28所述的字體處理裝置,其特征在于,上述橫向變形裝置具備把上述字體數(shù)據(jù)分割為多個(gè)行的分割裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的特征的成本的計(jì)算裝置;以及從上述成本大的行開始依次對(duì)規(guī)定數(shù)量的行進(jìn)行像素的放大或者縮小處理的裝置。
31.根據(jù)權(quán)利要求28至30的任意一項(xiàng)所述的字體處理裝置,其特征在于,上述縱向變形裝置具備把上述字體數(shù)據(jù)分割為多個(gè)列的分割裝置;對(duì)上述每列,計(jì)算表示像素構(gòu)成的特征的成本的計(jì)算裝置;以及從上述成本小的列開始依次對(duì)規(guī)定數(shù)量的列進(jìn)行像素的放大或者縮小處理的裝置。
32.根據(jù)權(quán)利要求28至30的任意一項(xiàng)所述的字體處理裝置,其特征在于,上述縱向變形裝置具備把上述字體數(shù)據(jù)分割為多個(gè)列的分割裝置;對(duì)上述每列,計(jì)算表示像素構(gòu)成的特征的成本的計(jì)算裝置;以及從上述成本大的列開始依次對(duì)規(guī)定數(shù)量的列進(jìn)行像素的放大或者縮小處理的裝置。
33.一種字體處理裝置,其特征在于,具備接收包含縱向以及橫向的變形率的字體變形指示的裝置;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;根據(jù)上述橫向的變形率,進(jìn)行上述字體數(shù)據(jù)的橫向的變形處理的橫向變形裝置;以及根據(jù)上述縱向的變形率,進(jìn)行上述字體數(shù)據(jù)的縱向的變形處理的縱向變形裝置;其中,上述橫向變形裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的特征的成本的第1成本計(jì)算裝置;以及從上述成本小的行開始依次在橫向上放大或者縮小第1規(guī)定數(shù)量的列的裝置;其中,上述縱向變形裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示像素構(gòu)成的特征的成本的第2成本計(jì)算裝置;以及從上述成本小的行開始依次在縱向上放大或者縮小第2規(guī)定數(shù)量的列的裝置。
34.一種字體處理裝置,其特征在于,具備接收包含縱向以及橫向的變形率的字體變形指示的裝置;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;根據(jù)上述橫向的變形率,進(jìn)行上述字體數(shù)據(jù)的橫向的變形處理的橫向變形裝置;以及根據(jù)上述縱向的變形率,進(jìn)行上述字體數(shù)據(jù)的縱向的變形處理的縱向變形裝置;其中,上述橫向變形裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的特征的成本的第1成本計(jì)算裝置;以及從上述成本大的行開始依次在橫向上放大或者縮小第1規(guī)定數(shù)量的行的裝置;其中,上述縱向變形裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示像素構(gòu)成的特征的成本的第2成本計(jì)算裝置;以及從上述成本大的列開始依次在縱向上放大或者縮小第2規(guī)定數(shù)量的列的裝置。
35.根據(jù)權(quán)利要求33或者34所述的字體處理裝置,其特征在于上述第1規(guī)定數(shù)量,由上述字體數(shù)據(jù)的縱向以及橫向的像素?cái)?shù)和上述橫向的變形率確定;上述第2規(guī)定數(shù)量,由上述字體數(shù)據(jù)的縱向以及橫向的像素?cái)?shù)和上述縱向的變形率確定。
36.根據(jù)權(quán)利要求33至35的任意一項(xiàng)所述的字體處理裝置,其特征在于上述成本計(jì)算裝置,當(dāng)上述變形處理是放大時(shí),對(duì)上述每行或者列計(jì)算表示上述像素構(gòu)成的線段量的成本,當(dāng)上述變形處理是縮小時(shí),對(duì)上述每行或者列計(jì)算表示該行或者列的像素構(gòu)成和相鄰的行或者列的像素構(gòu)成的相似度的成本。
37.根據(jù)權(quán)利要求36所述的字體處理裝置,其特征在于上述成本計(jì)算裝置,當(dāng)計(jì)算表示上述線段量的成本時(shí),對(duì)上述每行或者每列,把構(gòu)成該行或者列的像素?cái)?shù)作為成本進(jìn)行計(jì)算,進(jìn)而,把在該行或者列方向上具有相鄰像素的像素?cái)?shù)加算到上述成本中。
38.根據(jù)權(quán)利要求36所述的字體處理裝置,其特征在于上述成本計(jì)算裝置,當(dāng)計(jì)算表示上述線段量的成本時(shí),對(duì)上述每行或者每列,計(jì)算構(gòu)成該行或者列的像素?cái)?shù),進(jìn)而,把在該行或者列方向上具有相鄰像素的像素?cái)?shù)加算到構(gòu)成上述該行或者列的像素?cái)?shù)中,把加算的結(jié)果的倒數(shù)作為成本進(jìn)行計(jì)算。
39.根據(jù)權(quán)利要求36所述的字體處理裝置,其特征在于上述成本計(jì)算裝置,當(dāng)計(jì)算表示上述相似度的成本時(shí),對(duì)上述每行或者列,根據(jù)該行或者列的像素構(gòu)成,和與該行或者列相鄰的行或者列的像素構(gòu)成的“異”,計(jì)算成本。
40.根據(jù)權(quán)利要求33至39的任意一項(xiàng)所述的字體處理裝置,其特征在于上述字體數(shù)據(jù)包含表示在該字體數(shù)據(jù)的變形處理中應(yīng)該執(zhí)行縱向的變形處理和橫向的變形處理的順序的處理順序信息;所述字體處理裝置,進(jìn)一步具備根據(jù)上述處理順序信息,控制上述橫向的變形處理和上述縱向的變形處理的執(zhí)行順序的順序控制裝置。
41.一種終端裝置,其特征在于,具備根據(jù)權(quán)利要求28至40的任意一項(xiàng)的字體處理裝置;存儲(chǔ)由上述字體處理裝置生成的字體數(shù)據(jù)的存儲(chǔ)裝置;以及顯示由上述字體處理裝置生成的字體數(shù)據(jù)的顯示部。
42.一種字體處理方法,其特征在于,包括接收字體變形指示的步驟;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;當(dāng)上述字體變形指示包含字體的橫向的變形時(shí),在縱向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)分析結(jié)果在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向變形步驟;當(dāng)上述字體變形指示包含字體的橫向的變形時(shí),在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)分析結(jié)果在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向變形步驟。
43.一種字體處理方法,其特征在于,包括接收包含縱向以及橫向的變形率的字體變形指示的步驟;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;根據(jù)上述橫向的變形率,進(jìn)行上述字體數(shù)據(jù)的橫向的變形處理的橫向變形步驟;以及根據(jù)上述縱向的變形率,進(jìn)行上述字體數(shù)據(jù)的縱向的變形處理的縱向變形步驟;其中,上述橫向變形步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)行的步驟;對(duì)上述每行,計(jì)算表示像素構(gòu)成的特征的成本的第1成本計(jì)算步驟;以及從上述成本小的行開始依次在橫向上放大或者縮小第1規(guī)定數(shù)量的行的步驟;其中,上述縱向變形步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)列的步驟;對(duì)上述每列,計(jì)算表示像素構(gòu)成的特征的成本的第2成本計(jì)算步驟;以及從上述成本小的列開始依次在縱向上放大或者縮小第2規(guī)定數(shù)量的列的步驟。
44.一種字體處理方法,其特征在于,包括接收包含縱向以及橫向的變形率的字體變形指示的步驟;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得步驟;根據(jù)上述橫向的變形率,進(jìn)行上述字體數(shù)據(jù)的橫向的變形處理的橫向變形步驟;以及根據(jù)上述縱向的變形率,進(jìn)行上述字體數(shù)據(jù)的縱向的變形處理的縱向變形步驟;其中,上述橫向變形步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)行的步驟;對(duì)上述每行,計(jì)算表示像素構(gòu)成的特征的成本的第1成本計(jì)算步驟;以及從上述成本大的行開始依次在橫向上放大或者縮小第1規(guī)定數(shù)量的行的步驟其中,上述縱向變形步驟,包含把上述字體數(shù)據(jù)分割為多個(gè)列的步驟;對(duì)上述每列,計(jì)算表示像素構(gòu)成的特征的成本的第2成本計(jì)算步驟;以及從上述成本大的列開始依次在縱向上放大或者縮小第2規(guī)定數(shù)量的列的步驟。
45.一種字體處理程序,是由具有計(jì)算機(jī)的終端裝置執(zhí)行的字體處理程序,其特征在于,使上述計(jì)算機(jī)具有作為以下裝置的功能接收字體變形指示的裝置;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;當(dāng)上述字體變形指示包含字體的橫向的變形時(shí),在縱向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)該分析結(jié)果在橫向上放大或者縮小上述字體數(shù)據(jù)的橫向變形裝置;以及當(dāng)上述字體變形指示包含字體的橫向的變形時(shí),在橫向上分析上述字體數(shù)據(jù)的像素構(gòu)成,根據(jù)該分析結(jié)果在縱向上放大或者縮小上述字體數(shù)據(jù)的縱向變形裝置。
46.一種字體處理程序,是由具有計(jì)算機(jī)的終端裝置執(zhí)行的字體處理程序,其特征在于,使上述計(jì)算機(jī)具有作為以下裝置的功能接收包含縱向以及橫向變形率的字體變形指示的裝置;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;根據(jù)上述橫向的變形率,進(jìn)行上述字體數(shù)據(jù)的橫向的變形處理的橫向變形裝置;以及根據(jù)上述縱向的變形率,進(jìn)行上述字體數(shù)據(jù)的縱向的變形處理的縱向變形裝置;其中,上述橫向變形裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的特征的成本的第1成本計(jì)算裝置;以及從上述成本小的行開始依次在橫向上放大或者縮小第1規(guī)定數(shù)量的行的裝置;其中,上述縱向變形裝置,包含;把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示像素構(gòu)成的特征的成本的第2成本計(jì)算裝置;以及從上述成本小的列開始依次在縱向上放大或者縮小第2規(guī)定數(shù)量的列的裝置。
47.一種字體處理程序,是由具有計(jì)算機(jī)的終端裝置執(zhí)行的字體處理程序,其特征在于,使上述計(jì)算機(jī)具有作為以下裝置的功能接收包含縱向以及橫向的變形率的字體變形指示的裝置;取得點(diǎn)陣字體的字體數(shù)據(jù)的數(shù)據(jù)取得裝置;根據(jù)上述橫向的變形率,進(jìn)行上述字體數(shù)據(jù)的橫向的變形處理的橫向變形裝置;以及根據(jù)上述縱向的變形率,進(jìn)行上述字體數(shù)據(jù)的縱向的變形處理的縱向變形裝置;其中,上述橫向變形裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)行的裝置;對(duì)上述每行,計(jì)算表示像素構(gòu)成的特征的成本的第1成本計(jì)算裝置;以及從上述成本大的行開始依次在橫向上放大或者縮小第1規(guī)定數(shù)量的行的裝置;其中,上述縱向變形裝置,包含把上述字體數(shù)據(jù)分割為多個(gè)列的裝置;對(duì)上述每列,計(jì)算表示像素構(gòu)成的特征的成本的第2成本計(jì)算裝置;以及從上述成本大的列開始依次在縱向上放大或者縮小第2規(guī)定數(shù)量的列的裝置。
全文摘要
在字體的放大中,把成為放大·縮小對(duì)象的字體以行、列分割,根據(jù)每行、列的構(gòu)成像素圖案計(jì)算成本,在放大處理中成本表示線段量,成本小的行或者列,即具有接近線段的像素排列的行或者列難以被放大。另外,在縮小處理中成本表示和相鄰的行、列的相似度,在附近有類似的像素圖案的行或者列優(yōu)先成為縮小的對(duì)象。因?yàn)楦鶕?jù)實(shí)際成為放大、縮小對(duì)象的字體的像素構(gòu)成,確定設(shè)為放大、縮小對(duì)象的行、列,所以可以得到自然的放大·縮小字體。另外,利用字體的放大、縮小進(jìn)行字體的變形處理。
文檔編號(hào)G06F17/21GK1489128SQ03156008
公開日2004年4月14日 申請(qǐng)日期2003年8月28日 優(yōu)先權(quán)日2002年8月30日
發(fā)明者桃薗幸信, 胡桃澤孝, 孝, 桃 幸信 申請(qǐng)人:精工愛(ài)普生株式會(huì)社