CN100578604C - 字符/图形显示装置、字符/图形显示方法 - Google Patents
字符/图形显示装置、字符/图形显示方法 Download PDFInfo
- Publication number
- CN100578604C CN100578604C CN200480016728A CN200480016728A CN100578604C CN 100578604 C CN100578604 C CN 100578604C CN 200480016728 A CN200480016728 A CN 200480016728A CN 200480016728 A CN200480016728 A CN 200480016728A CN 100578604 C CN100578604 C CN 100578604C
- Authority
- CN
- China
- Prior art keywords
- distance
- reference point
- stroke
- character
- coordinate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/22—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
- G09G5/24—Generation of individual character patterns
- G09G5/246—Generation of individual character patterns of ideographic or arabic-like characters
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/04—Changes in size, position or resolution of an image
- G09G2340/0407—Resolution change, inclusive of the use of different resolutions for different screen areas
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Digital Computer Display Output (AREA)
Abstract
提供了一种用于通过使用矢量数据在显示设备上显示字符或图形的字符图形显示方法。该方法包括:在调整组成字符或图形的笔划的位置同时,缩放要量化的矢量数据,由此生成与笔划中包括的每个参考点相对应的缩放参考点的步骤(S301);计算缩放参考点之间的距离的总和,并且利用第一方法量化该总和的步骤(S302);利用第二方法量化缩放参考点之间的每个距离的步骤(S303);以及调整由第二方法量化的距离中至少一个距离,从而由第二方法量化的每个距离的总和等于由第一方法量化的总和的步骤(S304)。
Description
技术领域
本发明涉及一种用于显示缩放字符或图形的字符/图形显示装置、字符/图形显示方法、程序、以及记录介质。
背景技术
用于显示字符的字符数据例如可以以位图数据和矢量数据的形式获得。
位图数据包括固定的坐标值。通过将固定坐标值输出到显示设备,可以由诸如彩色液晶显示设备之类的显示设备来显示字符。然而,因为根据字符尺寸来固定位图数据,所以需要为每种尺寸的必要字符准备位图数据。
矢量数据包括例如代表字符轮廓的数据或代表形成字符的笔划的数据。为了向诸如彩色液晶显示设备之类的显示设备输出矢量数据,需要根据要由显示设备显示的字符的尺寸来按比例缩放矢量数据。然而,即使需要多种字符尺寸,也只需要一种类型的矢量数据。原因在于,不是根据字符尺寸来固定矢量数据。因此,只需要较小容量的存储设备来存储字符数据。
按比例缩放矢量数据,然后利用预定方法(例如,通过四舍五入,即,对大于等于5的数字向上进位,而对小于等于4的数字向下舍去)来量化缩放后的矢量数据。结果,生成了量化误差。量化误差是利用预定方法对数据进行量化之前的数字与利用预定方法对数据进行量化之后的数字之间的误差。例如,四舍五入之前的数字4.6与四舍五入之后的数字5之间的误差是0.4。
图19示出了在对代表笔划的坐标值进行四舍五入前后所获得的笔划。图19包括坐标系统A和坐标系统B。坐标系统A示出了在对坐标值进行四舍五入之前的笔划,而坐标系统B示出了在对坐标值进行四舍五入之后的笔划。对代表笔划的坐标值进行四舍五入的结果是反转了笔划之间的距离。
在对坐标值四舍五入之前,坐标系统A中所示的四个笔划由坐标值0.3(笔划a)、坐标值4.5(笔划b)、坐标值8.3(笔划c)、以及坐标值11.5(笔划d)代表。作为对代表笔划的坐标值进行四舍五入的结果,坐标值0.3(笔划a)变为坐标值0(笔划a’),坐标值4.5(笔划b)变为坐标值5(笔划b’),坐标值8.3(笔划c)变为坐标值8(笔划c’),并且标值11.5(笔划d)变为坐标值12(笔划d’)。
笔划a与笔划b之间的距离(距离ab)是4.2,笔划b与笔划c之间的距离(距离bc)是3.8,并且笔划c与笔划d之间的距离(距离cd)是3.2。作为对代表笔划的坐标值进行四舍五入的结果,笔划a’与笔划b’之间的距离(距离a’b’)是5,笔划b’与笔划c’之间的距离(距离b’c’)是3,并且笔划c’与笔划d’之间的距离(距离c’d’)是4。
在对代表笔划的坐标值进行四舍五入之前,距离ab>距离bc>距离cd。在对代表笔划的坐标值进行四舍五入之后,距离a’b’>距离c’d’>距离b’c’。作为对代表笔划的坐标值进行四舍五入的结果,距离bc与距离cd的大小顺序的位置反转。
在日本早期公开No.6-175638中公开了一种用于防止大小顺序反转的技术。下面参考图19,描述这种技术。
在对代表笔划的坐标值进行四舍五入之前,得出笔划之间的距离(四舍五入之前的距离)。在对代表笔划的坐标值进行四舍五入之后,得出笔划之间的距离(四舍五入之后的距离)。计算四舍五入之前的距离与四舍五入之后的距离之间的比值。如此移动笔划:使最大比值与最小比值之间的差在所获得的差当中最小。
体20示出了坐标系统C。图20所示的笔划是使用日本早期公开No.6-175638中所公开的技术来移动坐标系统A中所示的笔划得到的。
具体地说,如下移动笔划。
作为对代表笔划的坐标值进行四舍五入的结果,坐标值0.3(笔划a)变为坐标值0(笔划a’),坐标值4.5(笔划b)变为坐标值5(笔划b’),坐标值8.3(笔划c)变为坐标值8(笔划c’),并且标值11.5(笔划d)变为坐标值12(笔划d’)。四舍五入之后的距离与四舍五入之前的距离之间的比值是:距离a’b’/距离ab=5/4.2=1.19;距离b’c’/距离bc=3/3.8=0.79;并且距离c’d’/距离cd=4/3.2=1.25。
最大比值1.25(距离c’d’/距离cd)与最小比值0.79(距离b’c’/距离bc)之间的差是0.46。为了最小化最大比值与最小比值之间的差,得出从距离c’d’减去1所获得的值与距离cd之间的比值。该比值是0.94((距离c’d’-1)/距离cd=3/3.2=0.94)。同样,为了最小化最大比值与最小比值之间的差,得出向距离b’c’加1所获得的值与距离bc之间的比值。该比值是1.05((距离b’c’+1)/距离bc=4/3.8=1.05)。
结果,这些比值变为比值1.19(距离a’b’/距离ab)、比值1.05(距离b’c’+1/距离bc)、以及比值0.94(距离c’d’-1/距离cd)。最大比值1.19(距离a’b’/距离ab)与最小比值0.94(距离c’d’-1/距离cd)之间的差是0.25。这样,最大比值与最小比值之间的差变小。为了实现这些比值,移动笔划。在这种情形中,向远离笔划b’的方向移动笔划c’。
图21示出了坐标系统D和坐标系统E。坐标系统D示出了四个笔划。坐标系统E示出了通过使用日本早期公开No.6-175638中所公开的技术来移动坐标系统D中所示的笔划得到的笔划。
坐标系统D中所示的四个笔划由坐标值0.2(笔划a)、坐标值4.4(笔划b)、坐标值8.2(笔划c)、以及坐标值11.4(笔划d)代表。作为对代表笔划的坐标值进行四舍五入的结果,坐标值0.2(笔划a)变为坐标值0(笔划a’),坐标值4.4(笔划b)变为坐标值4(笔划b’),坐标值8.2(笔划c)变为坐标值8(笔划c’),并且标值11.4(笔划d)变为坐标值11(笔划d’)。
四舍五入之后的距离与四舍五入之前的距离之间的比值是:距离a’b’/距离ab=4/4.2=0.95;距离b’c’/距离bc=4/3.8=1.05;并且距离c’d’/距离cd=3.2/3.4=0.94。最大比值是1.05(距离b’c’/距离bc),并且最小比值是0.94(距离c’d’/距离cd)。为了最小化最大比值与最小比值之间的差,得出从距离b’c’减去1所获得的值与距离bc之间的比值。该比值是0.79((距离b’c’-1)/距离bc)。同样,为了最小化最大比值与最小比值之间的差,得出向距离c’d’加1所获得的值与距离cd之间的比值。该比值是1.25((距离c’d’+1)/距离cd)。最大比值与最小比值之间的差没有变小。在对代表笔划的坐标值进行四舍五入之前,距离ab>距离bc>距离cd。作为对代表笔划的坐标值进行四舍五入的结果,获得了距离a’b’=距离c’d’>距离b’c’的关系。因为距离ab、距离bc和距离cd的大小顺序的位置没有反转,所以维持了相邻笔划之间距离的平衡。
坐标系统C中所示的笔划是通过使用日本早期公开No.6-175638中所公开的技术来移动坐标系统A中所示的笔划得到的。坐标系统E中所示的笔划是通过使用日本早期公开No.6-175638中所公开的技术来移动坐标系统D中所示的笔划得到的。
坐标系统D中所示的笔划是通过将坐标系统A中所示的笔划向下移动0.1得到的。因此,坐标系统D中所示的笔划与坐标系统A中所示的笔划具有相同的形状和尺寸。然而,因为坐标系统D中所示的笔划和坐标系统A中所示的笔划被表示在不同的位置,所以坐标系统C中所示的笔划和坐标系统E中所示的笔划具有不同的形状和尺寸。
具体地说,坐标系统C中所示的笔划之间的距离a’d’是12。坐标系统E中所示的笔划之间的距离a’d’是11。
图22示出了坐标系统F和坐标系统G。坐标系统F示出了六个笔划。坐标系统G示出了通过使用日本早期公开No.6-175638中所公开的技术来移动坐标系统F中所示的笔划得到的笔划。
坐标系统F中所示的六个笔划由坐标值0.3(笔划a)、坐标值4.5(笔划b)、坐标值8.3(笔划c)、坐标值11.5(笔划d)、坐标值15.2(笔划e)、以及坐标值18.6(笔划f)代表。作为对代表笔划的坐标值进行四舍五入的结果,坐标值0.3(笔划a)变为坐标值0(笔划a’),坐标值4.5(笔划b)变为坐标值5(笔划b’),坐标值8.3(笔划c)变为坐标值8(笔划c’),标值11.5(笔划d)变为坐标值12(笔划d’),坐标值15.2(笔划e)变为坐标值15(笔划e’),并且坐标值18.6(笔划f)变为坐标值19(笔划f’)。
四舍五入之后的距离与四舍五入之前的距离之间的比值是:距离a’b’/距离ab=5/4.2=1.19;距离b’c’/距离bc=3/3.8=0.79;距离c’d’/距离cd=4/3.2=1.25;距离d’e’/距离de=3/3.7=0.81;并且距离e’f’/距离ef=4/3.4=1.18。最大比值是1.25(距离c’d’/距离cd),并且最小比值是0.79(距离b’c’/距离bc)。为了最小化最大比值与最小比值之间的差,得出从距离c’d’减去1所获得的值与距离cd之间的比值。该比值是0.94((距离c’d’-1)/距离cd)。同样,为了最小化最大比值与最小比值之间的差,得出向距离b’c’加1所获得的值与距离bc之间的比值。该比值是1.05((距离b’c’+1)/距离bc)。
因为最大比值与最小比值之间的差变小,所以笔划c’移向笔划b’。虽然坐标系统G中所示的笔划之间的某些距离被校正,但是距离de和距离ef仍然被反转。
图23示出了坐标系统H、坐标系统I、以及坐标系统J。坐标系统H示出了两个笔划。坐标系统I示出了对代表坐标系统H中所示笔划的坐标值进行四舍五入获得的笔划。坐标系统J示出了显示设备所显示的笔划。
坐标系统H中所示的两个笔划由坐标值0.6(笔划a)和坐标值2.4(笔划b)代表。作为对代表笔划的坐标值进行四舍五入的结果,坐标值0.6(笔划a)变为坐标值1(笔划a’)并且坐标值2.4(笔划b)变为坐标值2(笔划b’)
在这两个笔划之间只有1的距离,不能使用日本早期公开No.6-175638中所公开的技术来移动笔划。如果根据关于坐标系统I中所示笔划的数据来生成绘制数据,并且由显示设备来显示该绘制数据,则这两个笔划看起来被挤压在一起。
如上所述,使用日本早期公开No.6-175638中所公开的技术来移动笔划包括如下问题(1)至(3)。
(1)坐标系统D中所示的笔划与坐标系统A中所示的笔划具有相同的形状和相同的尺寸。然而,在使用日本早期公开No.6-175638中所公开的技术来调整笔划的位置之后,坐标系统E中所示的调整后笔划与坐标系统C中所示的调整之前笔划具有不同的形状和不同的尺寸。
(2)虽然坐标系统G中所示笔划之间的某些距离被校正,但是距离de和距离ef仍然被反转。这样,不是校正了笔划之间的所有距离。因此,在调整笔划位置之前的笔划平衡在调整笔划位置之后就不能保持。
(3)作为调整笔划位置的结果,两个平行笔划彼此接触,并由此挤压在一起。结果,这两个笔划看起来是一个笔划。
本发明的目的是提供一种字符/图形显示装置、字符/图形显示方法、程序、以及记录介质,用于解决问题(1)至(3)中至少一个问题。
发明内容
根据本发明的字符/图形显示装置包括:用于显示字符或图形的显示设备;和用于控制所述显示设备的控制部分。所述控制部分执行字符/图形显示处理。所述字符/图形显示处理包括如下步骤:(a)对包括沿着特定轴方向的参考点在内的字符或图形进行按比例缩放,从而生成缩放参考点;(b)利用第一方法对所述缩放参考点之间的距离的总和进行量化,从而生成由所述第一方法量化的总和;(c)利用第二方法对所述缩放参考点之间的距离进行量化,从而生成由所述第二方法量化的距离;(d)如此调整由所述第二方法量化的距离中至少一个距离,使由所述第二方法量化的距离的总和等于由所述第一方法量化的总和;以及(e)基于带有所述至少一个调整距离的缩放参考点,显示缩放字符或图形。这样,达到了上述目的。
在利用所述第二方法执行量化时可以考虑距离标记,所述距离标记代表由所述第二方法量化的距离的最小必要距离。
在执行步骤(d)时可以考虑距离标记,所述距离标记代表由所述第二方法量化的距离的最小必要距离。
步骤(d)可以包括延长由所述第二方法量化的距离中至少一个距离的步骤。
步骤(d)可以包括缩短由所述第二方法量化的距离中至少一个距离的步骤。
步骤(d)可以包括使由所述第二方法量化的距离中至少一个距离变为零的步骤。
步骤(e)可以包括如下步骤:如此显示作为缩放字符上指定点的第一点,使距离a/距离b的值最接近距离A/距离B的值,其中:缩放之前的字符上与所述第一点相对应的第二点处于缩放之前的参考点中彼此相邻的第一参考点与第二参考点之间;距离A是所述第二点与所述第一参考点之间的距离;距离B是所述第二点与所述第二参考点之间的距离;距离a是所述第一点与缩放第一参考点之间的距离;并且距离b是所述第一点与缩放第二参考点之间的距离。
所述字符可以由多个块组成。所述字符/图形显示处理还可以包括对所述多个块中每一块执行步骤(b)至(d)的步骤。
在执行使由所述第二方法量化的距离中至少一个距离变为零的步骤时可以考虑如下标记:该标记代表要变为零的距离在使所述距离中至少一个距离变为零的顺序中所处的位置。
根据本发明的字符/图形显示方法包括如下步骤:对包括沿着特定轴方向的参考点在内的字符或图形进行按比例缩放,从而生成缩放参考点;利用第一方法对所述缩放参考点之间的距离的总和进行量化,从而生成由所述第一方法量化的总和;利用第二方法对所述缩放参考点之间的距离进行量化,从而生成由所述第二方法量化的距离;如此调整由所述第二方法量化的距离中至少一个距离,使由所述第二方法量化的距离的总和等于由所述第一方法量化的总和;以及基于带有所述至少一个调整距离的缩放参考点,显示缩放字符或图形。这样,达到了上述目的。
根据本发明的用于使字符/图形显示装置执行字符/图形显示处理的程序,其中所述字符/图形显示装置包括用于显示字符或图形的显示设备和用于控制所述显示设备的控制部分,所述字符/图形显示处理包括如下步骤:对包括沿着特定轴方向的参考点在内的字符或图形进行按比例缩放,从而生成缩放参考点;利用第一方法对所述缩放参考点之间的距离的总和进行量化,从而生成由所述第一方法量化的总和;利用第二方法对所述缩放参考点之间的距离进行量化,从而生成由所述第二方法量化的距离;如此调整由所述第二方法量化的距离中至少一个距离,使由所述第二方法量化的距离的总和等于由所述第一方法量化的总和;以及基于带有所述至少一个调整距离的缩放参考点,显示缩放字符或图形。这样,达到了上述目的。
根据本发明的字符/图形显示装置(包括用于显示字符或图形的显示设备和用于控制所述显示设备的控制部分)可读的记录介质具有用于使所述控制部分执行字符/图形显示处理的程序,所述字符/图形显示处理包括如下步骤:对包括沿着特定轴方向的参考点在内的字符或图形进行按比例缩放,从而生成缩放参考点;利用第一方法对所述缩放参考点之间的距离的总和进行量化,从而生成由所述第一方法量化的总和;利用第二方法对所述缩放参考点之间的距离进行量化,从而生成由所述第二方法量化的距离;如此调整由所述第二方法量化的距离中至少一个距离,使由所述第二方法量化的距离的总和等于由所述第一方法量化的总和;以及基于带有所述至少一个调整距离的缩放参考点,显示缩放字符或图形。这样,达到了上述目的。
附图说明
图1示出了根据本发明示例的字符显示装置100的结构。
图2示出了字符“葦”的笔划。
图3示出了图2所示的笔划形成的字符数据142。
图4示出了字符“明”的字符数据。
图5示出了Y轴方向参考点之间的距离以及X轴方向参考点之间的距离。
图6是图示了字符显示程序141的处理过程的流程图。
图7是图示了步骤S103中所执行的网格对齐过程(程序141b)的处理的流程图。
图8是图示了步骤S201和S203中所执行的特定轴方向中的块处理的详细过程的流程图。
图9示出了缩放之前的坐标数据以及缩放之后的坐标数据。
图10示出了在Y轴方向对字符数据进行网格对齐所获得的数据。
图11示出了网格对齐之后的坐标值。
图12示出了在X轴方向对字符数据进行网格对齐所获得的数据。
图13示出了显示设备显示的尺寸为30点的字符“葦”。
图14示出了缩放之前的坐标数据以及缩放之后的坐标数据。
图15示出了在Y轴方向对字符数据进行网格对齐所获得的数据。
图16示出了网格对齐之后的坐标值。
图17示出了在X轴方向对字符数据进行网格对齐所获得的数据。
图18示出了显示设备显示的尺寸为14点的字符“葦”。
图19示出了在对代表笔划的坐标值进行四舍五入前后所获得的笔划。
图20示出了坐标系统C。
图21示出了坐标系统D和坐标系统E。
图22示出了坐标系统F和坐标系统G。
图23示出了坐标系统H、坐标系统I以及坐标系统J。
具体实施方式
这里,“字符”例如包括“平假名”日本表音字母、“片假名”日本表音字母、汉字、拉丁字母、象形文字、以及数字,但是不限于这些。
这里,“图形”例如包括字符的一部分、图案、以及符号,但是不限于这些。
后文将参考附图通过示例来描述本发明。
图1示出了根据本发明示例的字符显示装置100的结构。字符显示装置100例如可以是个人计算机。作为个人计算机,可以使用台式机、膝上型计算机、或者任何其他类型计算机。字符显示装置100可以是字处理器。
字符显示装置100可以是任何信息显示装置,例如,包括显示设备的电子设备或信息设备。例如,字符显示装置100可以是包括液晶显示设备的电子设备、用作移动信息工具的移动信息终端、蜂窝电话或PHS终端、或诸如通用电话/传真机之类的通信设备。
字符显示装置100包括输入设备110、用于显示字符的显示设备130、用于控制显示设备130的控制部分120、以及辅助存储设备140。控制部分120连接到输入设备120、显示设备130以及辅助存储设备140。
输入设备110用于向显示设备130输入字符信息(代表要由显示设备130显示的字符)。字符信息例如包括用于标识字符的字符代码以及代表字符尺寸的尺寸信息。输入设备110可以是能够输入字符代码和尺寸信息的任何类型输入设备。例如,优选地,可以使用诸如键盘、鼠标、笔输入设备之类的输入设备作为输入设备110。
如果字符显示装置100是蜂窝电话,则用于指定被呼叫方的电话号码的数字键可以用来输入字符代码或尺寸信息。如果字符显示装置100包括与电话通信线路(包括因特网)连接的装置,则通过电话线路接收到的电子邮件中所包括的消息可以由显示设备130显示。在这种情形中,用于连接的装置充当输入设备100。
辅助存储设备140存储字符显示程序141以及执行字符显示程序141所必需的字符数据142。字符数据142包括坐标数据。
字符显示程序141包括用于按比例缩放字符数据142中包括的坐标数据以便坐标数据与要输出到显示设备130的字符尺寸相匹配并由此生成缩放坐标数据的程序141a、用于对缩放坐标数据进行网格对齐(grid-fitting)并由此生成网格对齐坐标数据的程序141b、以及用于基于网格对齐坐标数据生成由显示设备130显示的绘制数据的绘制数据生成程序141c。
稍后将详细描述程序141a至141c的功能。
字符数据142例如是矢量数据。在该示例中,矢量数据具有256网格的分辨率。然而,矢量数据的分辨率不限于256网格,并且可以是32网格或14网格。
辅助存储设备140可以是能够存储字符显示程序141和字符数据142的任何类型存储设备。辅助存储设备140使用任何类型的记录介质来存储字符显示程序141和字符数据142。例如,优选地使用诸如硬盘、CD-ROM、MO、MD、DVD、IC卡、光卡之类的记录介质。
字符显示程序141和字符数据142不限于存储在辅助存储设备140中所包括的记录介质中。例如,字符显示程序141和字符数据142可以存储在控制部分120中所包括的主存储器122或者ROM(未示出)中。ROM例如可以是掩模ROM、EPROM、EEPROM、或闪速ROM。在将信息存储在ROM中的ROM系统中,可以简单地通过交换ROM来实现各种类型的处理。例如当字符显示装置100是移动终端或蜂窝电话时,优选地适用ROM系统。
用于存储字符显示程序141和字符数据142的记录介质可以是诸如盘、卡之类的介质、其他存储设备或半导体存储器,用于固定地携带程序或数据。或者,记录介质可以是用于流动地携带程序或数据的介质,例如,用于在通信网络中携带程序或数据的通信介质。如果字符显示装置100包括用于与电话通信线路(包括因特网)连接的装置,则字符显示程序141和字符数据142中的至少一部分可以从电话通信线路下载。在这种情形中,下载所必需的载入程序可以预先存储在ROM(未示出)中,或者从辅助存储设备140安装到控制部分120中。
控制部分120包括CPU 121和主存储器122。
CPU 121控制并监视整个字符显示装置100,并且执行辅助存储设备140中存储的字符显示程序141。
主存储器122临时存储从输入设备110输入到主存储器122的数据、要由显示设备130显示的数据、以及执行字符显示程序141所必需的数据。主存储器122由CPU 121控制。
CPU 121基于主存储器122中存储的各种数据,执行字符显示程序141,以生成绘制数据。所生成的绘制数据暂时存储在主存储器122中,然后输出到显示设备130。向显示设备130输出绘制数据的定时由CPU 121控制。
显示设备130例如是彩色液晶显示设备。作为彩色液晶显示设备,可以使用广泛用于个人计算机的透射型液晶显示设备、反射型液晶显示设备、或者背投类型液晶显示设备。显示设备130不限于彩色液晶显示设备。可以使用在X和Y轴方向布置有多个像素的任何彩色显示设备(所谓的XY矩阵显示设备)作为显示设备130。
图2示出了形成字符“葦”的笔划。字符“葦”由笔划L01至L15所代表的15个笔划组成。
图3示出关于字符“葦”的字符数据142。
如图3所示,关于字符“葦”的字符数据142包括笔划L01至L15中每一个的坐标数据、Y轴方向的块号码、X轴方向的块号码、Y轴方向参考点数据、X轴方向参考点数据、Y轴方向距离标记、X轴方向距离标记、Y轴方向省略标记、以及X轴方向省略标记。
后文将描述图3所示的坐标数据、Y轴方向的块号码、X轴方向的块号码、Y轴方向参考点数据、X轴方向参考点数据、Y轴方向距离标记、X轴方向距离标记、Y轴方向省略标记、以及X轴方向省略标记。
坐标数据代表笔划上的一个点。坐标数据包括一组X坐标值和Y坐标值。坐标数据可以包括多组X坐标值和Y坐标值。笔划L01至L15每一个由包括两组X坐标值和Y坐标值的坐标数据代表。X坐标值是0至255中一个值。Y坐标值是0至255中一个值。
笔划L01是连接坐标数据为(0,231)的第一点和坐标数据为(255,231)的第二点的直线。笔划L02是连接坐标数据为(79,255)的第一点和坐标数据为(79,210)的第二点的直线。笔划L03是连接坐标数据为(176,255)的第一点和坐标数据为(176,210)的第二点的直线。笔划L04是连接坐标数据为(19,194)的第一点和坐标数据为(218,194)的第二点的直线。笔划L05是连接坐标数据为(218,194)的第一点和坐标数据为(218,162)的第二点的直线。笔划L06是连接坐标数据为(118,213)的第一点和坐标数据为(113,162)的第二点的直线。笔划L07是连接坐标数据为(0,162)的第一点和坐标数据为(255,162)的第二点的直线。笔划L08是连接坐标数据为(37,131)的第一点和坐标数据为(37,99)的第二点的直线。笔划L09是连接坐标数据为(37,131)的第一点和坐标数据为(218,131)的第二点的直线。笔划L10是连接坐标数据为(218,131)的第一点和坐标数据为(218,99)的第二点的直线。笔划L11是连接坐标数据为(37,99)的第一点和坐标数据为(218,99)的第二点的直线。笔划L12是连接坐标数据为(37,64)的第一点和坐标数据为(247,64)的第二点的直线。笔划L13是连接坐标数据为(37,64)的第一点和坐标数据为(37,30)的第二点的直线。笔划L14是连接坐标数据为(0,30)的第一点和坐标数据为(255,30)的第二点的直线。笔划L15是连接坐标数据为(145,97)的第一点和坐标数据为(145,0)的第二点的直线。
块号码代表形成字符的块的数目。一块包括字符的偏旁或一部分。字符不一定由多个块形成。字符可以由一个块形成。如图3所示,所有笔划的Y轴的块号码都是1,并且所有笔划的X轴的块号码都是1。这表明字符“葦”由一块形成。
图4示出了关于字符“明”的字符数据。
参考图4,将描述包括多个块的字符。
如图4所示,笔划L01至L05中每一个笔划的Y轴的块号码都是1。笔划L06至L11中每一个的Y轴的块号码是2。所有笔划的X轴的块号码都是1。这表明字符“明”由两块形成。左侧偏旁“日”由第一块形成。由此偏旁“月”由第二块形成。
参考图4描述了包括多个块的字符。
再参考图3,描述字符数据142中所包括的数据。
参考点数据代表笔划是否包括参考点。当笔划包括参考点时,参考点数据以坐标数据指示参考点的位置。
指示笔划L01是否包括Y轴方向参考点的参考点数据是1。这表明笔划L01包括Y轴方向参考点,并且笔划L01的参考点是坐标数据为(0,231)的第一点。
类似地,指示笔划L04、L07、L09、L11、L12以及L14中每一个是否包括Y轴方向参考点的参考点数据是1。笔划L04的参考点是坐标数据为(19,194)的第一点。笔划L07的参考点是坐标数据为(0,162)的第一点。笔划L09的参考点是坐标数据为(37,131)的第一点。笔划L11的参考点是坐标数据为(13,99)的第一点。笔划L12的参考点是坐标数据为(37,64)的第一点。笔划L14的参考点是坐标数据为(0,30)的第一点。
指示笔划L02是否包括Y轴方向参考点的参考点数据是×。这表明笔划L02不包括Y轴方向参考点。
类似地,指示笔划L03、L05、L06、L08、L10以及L13中每一个是否包括Y轴方向参考点的参考点数据是×。这表明笔划L03、L05、L06、L08、L10以及L13都不包括Y轴方向参考点。
指示笔划L15是否包括Y轴方向参考点的参考点数据是2。这表明笔划L15包括Y轴方向参考点,并且笔划L15的参考点是坐标数据为(145,0)的第二点。
指示笔划L01、L04、L05、L06、L07、L09以及L11至L15中每一个是否包括X轴方向参考点的参考点数据是×。这表明笔划L01、L04、L05、L06、L07、L09以及L11至L15都不包括X轴方向参考点。
指示笔划L02、L02、L08、以及L10中每一个是否包括X轴方向参考点的参考点数据是1。笔划L02的参考点是坐标数据为(79,255)的第一点。笔划L03的参考点是坐标数据为(176,255)的第一点。笔划L08的参考点是坐标数据为(37,131)的第一点。笔划L10的参考点是坐标数据为(218,131)的第一点。
参考点是形成字符的块中所包括的点。可以将参考点设置在沿X轴方向延伸的笔划上或沿Y轴方向延伸的笔划上。例如,沿Y轴方向延伸的笔划L15的参考点是坐标数据的第二点。
不必一定在沿Y轴方向延伸的笔划或沿X轴方向延伸的笔划上设置参考点。
例如,参考点可以是笔划外的一点。可以根据字符的类型来固有地给出参考点,或者通过计算字符数据142来获得参考点。
图5示出了Y轴方向参考点之间的距离以及X轴方向参考点之间的距离。
图5示出了Y轴方向参考点之间的八个距离。这八个距离由距离YY1、距离YY2、距离YY3、距离YY4、距离YY5、距离YY6、距离YY7、以及距离YY8代表。
距离YY1是Y轴方向参考点(0,231)与具有最大Y坐标(0,255)的点之间的距离24。距离YY2是Y轴方向参考点(0,194)与Y轴方向参考点(0,231)之间的距离37。距离YY3是Y轴方向参考点(0,162)与Y轴方向参考点(0,194)之间的距离32。距离YY4是Y轴方向参考点(0,131)与Y轴方向参考点(0,162)之间的距离31。距离YY5是Y轴方向参考点(0,99)与Y轴方向参考点(0,131)之间的距离32。距离YY6是Y轴方向参考点(0,64)与Y轴方向参考点(0,99)之间的距离35。距离YY7是Y轴方向参考点(0,30)与Y轴方向参考点(0,64)之间的距离34。距离YY8是具有最小Y坐标(0,0)的点与Y轴方向参考点(0,30)之间的距离30。
图5示出了X轴方向参考点之间的五个距离。这五个距离由距离XX1、距离XX2、距离XX3、距离XX4、以及距离XX5代表。
距离XX1是具有最小X坐标(0,0)的点与X轴方向参考点(37,0)之间的距离37。距离XX2是X轴方向参考点(79,0)与X轴方向参考点(37,0)之间的距离42。距离XX3是X轴方向参考点(716,0)与X轴方向参考点(79,0)之间的距离97。距离XX4是X轴方向参考点(218,0)与X轴方向参考点(176,0)之间的距离42。距离XX5是具有最大X坐标(255,0)的点与X轴方向参考点(218,0)之间的距离37。
距离标记代表距离标记是否具有最小的必要距离。距离标记还指示沿着特定轴方向参考点之间的距离的最小必要距离是多少。例如,距离标记可能是X。这表明该距离标记不具有最小必要距离。例如,距离标记可以是数字M。这表明该距离标记具有最小必要距离,并且该距离标记要求沿着特定轴方向参考点之间的距离的最小必要距离是M。
笔划L01在Y轴方向的距离标记是1。这表明笔划L01在Y轴方向的距离标记具有最小必要距离,并且笔划L01的距离标记要求Y轴方向参考点之间的距离的最小必要距离是1。
笔划L02在Y轴方向的距离标记是×。这表明笔划L02在Y轴方向的距离标记不具有最小必要距离。
类似地,笔划L03、L05、L06、L08、L10以及L13中每一个在Y轴方向的距离标记是×。这表明笔划L03、L05、L06、L08、L10以及L13在Y轴方向的距离标记都不具有最小必要距离。
笔划L04在Y轴方向的距离标记是2。这表明笔划L04在Y轴方向的距离标记具有最小必要距离,并且笔划L04的距离标记要求Y轴方向参考点之间的距离的最小必要距离是2。
类似地,笔划L07、L09、L11、L12、以及L14中每一个在Y轴方向的距离标记是2。这表明笔划L07、L09、L11、L12、以及L14中每一个在Y轴方向的距离标记具有最小必要距离,并且笔划L07、L09、L11、L12、以及L14中每一个的距离标记要求Y轴方向参考点之间的距离的最小必要距离是2。
笔划L15在Y轴方向的距离标记是1。这表明笔划L15在Y轴方向的距离标记具有最小必要距离,并且笔划L15的距离标记要求Y轴方向参考点之间的距离的最小必要距离是1。
笔划L01、L04、L05、L06、L09以及L11至L15中每一个在X轴方向的距离标记是×。这表明笔划L01、L04、L05、L06、L09以及L11至L15中每一个在X轴方向的距离标记不具有最小必要距离。
笔划L02在X轴方向的距离标记是3。这表明笔划L02在X轴方向的距离标记具有最小必要距离,并且笔划L02的距离标记要求X轴方向参考点之间的距离的最小必要距离是3。
笔划L03和L08中每一个在X轴方向的距离标记是2。这表明笔划L03和L08中每一个在X轴方向的距离标记具有最小必要距离,并且笔划L03和L08中每一个的距离标记要求X轴方向参考点之间的距离的最小必要距离是2。
笔划L07和L10中每一个在X轴方向的距离标记是1。这表明笔划L07和L10中每一个在X轴方向的距离标记具有最小必要距离,并且笔划L07和L10中每一个的距离标记要求X轴方向参考点之间的距离的最小必要距离是1。
省略标记代表是否可以使要由网格对齐过程进行调整的沿着特定轴的参考点之间的距离变为0。当用于调整的某一距离可以是0时,省略标记代表这一距离在使多个用于调整的距离变为0的顺序中所处的位置。
例如,省略标记可以是×。这表明用于调整的距离不能是0。例如,省略标记可以是整数N。这表明用于调整的距离可以为0,并且这一特定距离是要变为0的第N个距离。
笔划L01在Y轴方向的省略标记是×。这表明用于调整的距离不能为0。
类似地,笔划L01至L08、L10、以及L13至L15中每一个在Y轴方向的省略标记是×。这表明用于调整的距离不能为0。
笔划L09在Y轴方向的省略标记是1。这表明用于调整的距离可以是0,并且这一特定距离是要变为0的第一个距离。
笔划L11在Y轴方向的省略标记是2。这表明用于调整的距离可以是0,并且这一特定距离是要变为0的第二个距离。
笔划L12在Y轴方向的省略标记是3。这表明用于调整的距离可以是0,并且这一特定距离是要变为0的第三个距离。
笔划L01至L15中每一个在X轴方向的省略标记都是×。这表明用于调整的距离不能为0。
图6是图示了字符显示程序141的处理过程的流程图。字符显示程序141由CPU 121执行。
后文将逐步描述字符显示程序141的处理。
步骤S101:将字符信息(代表要由显示设备130显示的字符)通过输入设备110输入到主存储器122。根据输入的字符信息,CPU 121读取辅助存储设备140中存储的字符数据142。所读取的字符数据142例如是图3所示的字符数据142。字符数据142包括坐标数据以及代表参考点的数据。
步骤S102:CPU 121根据要输出到显示设备130的字符尺寸,按比例缩放字符数据142中所包括的坐标数据以及代表参考点的数据,并由此生成缩放坐标数据以及代表参考点的缩放数据。CPU 121执行字符显示程序141中包括的程序141a,从而执行步骤S102。
缩放坐标数据存储在主存储器122中。
当要输出的字符尺寸是n点时,缩放坐标数据(X,Y)例如是((n-1)×X/255,(n-1)×Y/255)。
在图6所示的示例中,步骤S102对应于“对包括沿着特定轴方向的参考点在内的字符或图形进行按比例缩放从而生成缩放参考点的步骤”,但是本发明并不局限于此。
步骤S103:CPU 121对缩放坐标数据进行网格对齐,并由此生成网格对齐坐标数据。CPU 121执行字符显示程序141中包括的程序141b,从而执行步骤S103。网格对齐坐标数据存储在主存储器122中。
稍后将描述网格对齐过程的详情。
步骤S104:CPU 121基于网格对齐坐标数据,生成由显示设备130显示的绘制数据。例如,CPU 121使用直线绘制或诸如样条(spline)之类的曲线绘制,来从网格对齐坐标数据生成绘制数据。CPU 121执行字符显示程序141中包括的程序141c,从而执行步骤S104。所生成的绘制数据存储在主存储器122中。
步骤S105:CPU 121利用显示设备130来显示步骤S104中生成的绘制数据。
图7是图示了步骤S103中执行的网格对齐(程序141b)的详细过程的流程图。程序141b由CPU 121执行。
后文将逐步描述步骤S103中执行的网格对齐(程序141b)的详细过程。
步骤S201:CPU 121按照块号码的顺序,处理Y轴方向中的块。
稍后将描述步骤S201中所执行的Y轴方向的块处理过程的详情。
步骤S202:CPU 121基于字符数据142,确定Y轴方向的块处理是否完成。
CPU 121例如通过比较步骤S201已经重复的次数与Y轴方向中块号码的最大值,来进行如上的确定。
当步骤S201已经重复的次数等于Y轴方向中块号码的最大值时,步骤S202中的确定是“是”。这种情形中,处理前进到步骤S203。
当步骤S201已经重复的次数小于Y轴方向中块号码的最大值时,步骤S202中的确定是“否”。这种情形中,处理进入到步骤S201。
步骤S203:CPU 121按照块号码的顺序,处理X轴方向中的块。
稍后将描述步骤S203中所执行的X轴方向的块处理过程的详情。
步骤S204:CPU 121基于字符数据142,确定X轴方向的块处理是否完成。
CPU 121例如通过比较步骤S203已经重复的次数与X轴方向中块号码的最大值,来进行如上的确定。
当步骤S203已经重复的次数等于X轴方向中块号码的最大值时,步骤S204中的确定是“是”。这种情形中,终止网格对齐的过程(程序141b)。
当步骤S203已经重复的次数小于X轴方向中块号码的最大值时,步骤S204中的确定是“否”。这种情形中,处理进入到步骤S203。
图8是图示了在步骤S201和S203中所执行的特定轴方向中的块处理的详细过程的流程图。程序141由CPU 121执行。
后文将逐步描述步骤S201和S203中所执行的特定轴方向中的块处理。
步骤S301:CPU 121基于缩放坐标数据,生成缩放参考点的坐标值。基于该坐标值,CPU 121获得缩放参考点之间的距离。
步骤S302:CPU 121获得缩放参考点之间的距离的总和。CPU 121使用第一方法将距离的总和量化,并由此生成由第一方法量化的总和。
通过从缩放参考点的坐标值中的最大Y坐标值减去最小Y坐标值,可以得出Y轴方向参考点之间的距离总和。
通过从缩放参考点的坐标值中的最大X坐标值减去最小X坐标值,可以得出X轴方向参考点之间的距离总和。
例如,CPU 121使用四舍五入作为用于量化距离总和的第一方法。
通过利用四舍五入生成量化总和,可以对字符尺寸进行一致化。例如,图19中所示的坐标系统A中的距离ad以及图21中所示的坐标系统D中的距离ad都是11.2。在这两种情形中,利用四舍五入进行量化后的总和是11。
这里使用四舍五入作为用于量化距离总和的第一方法,但是第一方法不限于此。当希望字符看起来尽可能大时,可以使用向上进位作为用于量化距离总和的第一方法。当希望字符看起来尽可能小时,可以使用向下舍去作为用于量化距离总和的第一方法。可以在用于量化距离总和的第一方法中使用预定阈值。
在图8所示的示例中,步骤S302对应于“利用第一方法来对缩放参考点之间的距离总和进行量化从而生成由第一方法量化的总和的步骤”,但是本发明并不局限于此。
步骤S303:CPU 121利用第二方法来量化缩放参考点之间的每一距离,并由此生成由第二方法量化的距离总和。对于第二方法,在执行量化时考虑距离标记。
距离标记代表由第二方法量化的距离的最小必要距离。例如,当两个缩放参考点之间的距离是2.4时,在没有距离标记时,利用四舍五入量化的距离是2。当距离标记是1时,利用四舍五入量化的距离是1。然而,当距离标记是3时,考虑距离标记,利用四舍五入量化的距离是3。
这里使用四舍五入作为用于量化距离的第二方法,但是第二方法并不局限于此。作为用于量化距离的第二方法,可以使用向上进位或向下舍去。也可以使用预定阈值。
用于量化总和的第一方法和用于量化距离的第二方法可以相同,也可以不同。例如,可以使用四舍五入作为用于量化总和的第一方法以及用于量化距离的第二方法。当希望字符看起来尽可能大时,可以使用向上进位作为用于量化总和的第一方法,而可以使用向下舍去作为用于量化距离的第二方法。
在图8所示的示例中,步骤S303对应于“利用第二方法对缩放参考点之间的距离进行量化从而生成由第二方法量化的距离的步骤”,但是本发明不限于此。
步骤S304:CPU 121确定由第二方法量化的距离的总和是否小于由第一方法量化的总和。当步骤S304中的确定是“是”时,处理前进到步骤S305。当步骤S304中的确定是“否”时,处理前进到步骤S306。
步骤S305:CPU 121将由第二方法量化的距离中量化误差最大的距离延长。因为优先延长量化误差较大的距离,所以量化前后的距离大小顺序不会反转。处理进入步骤S304。在执行步骤S305中的处理时可以考虑距离标记。例如,可以优先延长具有较大的距离标记值的距离。
步骤S306:CPU 121确定由第二方法量化的距离的总和是否大于由第一方法量化的总和。当步骤S306中的确定是“是”时,处理前进到步骤S307。当步骤S306中的确定是“否”时,处理前进到步骤S310。
步骤S307:CPU 121确定距离标记的总和是否大于由第一方法量化的总和。当步骤S307中的确定是“是”时,处理前进到步骤S308。当步骤S307中的确定是“否”时,处理前进到步骤S309。
步骤S308:考虑省略标记,以使由第二方法量化的距离变为0。然后,处理进入步骤S304。
在步骤S308中,考虑到省略标记,可以省略笔划。使由第二方法量化的距离变为0等价于省略笔划。
步骤S309:CPU 121将由第二方法量化的距离中量化误差最大的距离缩短。因为优先缩短量化误差较大的距离,所以量化前后的距离大小顺序不会反转。处理进入步骤S304。执行步骤S309中的处理时可以考虑距离标记。例如,可以优选缩短没有距离标记或距离标记值较小的距离。
在图8所示的示例中,步骤S305、S308或S309对应于“调整由第二方法量化的至少一个距离从而由第二方法量化的距离的总和等于由第一方法量化的总和的步骤”,但是本发明不限于此。
步骤S310:确定形成字符的块的最大坐标值和最小坐标值。具体地说,将由于对缩放参考点的最大坐标值进行四舍五入而生成的量化误差与由于对缩放参考点的最小坐标值进行四舍五入而生成的量化误差相比较。基于具有较小量化误差的坐标误差,确定块的坐标值。形成字符的块的尺寸是由第一方法量化的总和。
例如,当由于对缩放参考点的最大坐标值进行四舍五入而生成的量化误差小于由于对缩放参考点的最小坐标值进行四舍五入而生成的量化误差时,缩放参考点的最大坐标值是块的最大坐标值。通过从块的最大坐标值减去由第一方法量化的总和(形成字符的块的尺寸),得到块的最小坐标值。
例如,当由于对缩放参考点的最小坐标值进行四舍五入而生成的量化误差小于由于对缩放参考点的最大坐标值进行四舍五入而生成的量化误差时,缩放参考点的最小坐标值是块的最小坐标值。通过向块的最小坐标值加上由第一方法量化的总和(形成字符的块的尺寸),得到块的最大坐标值。
步骤S311:基于形成字符的块的最大坐标值、形成字符的块的最小坐标值、以及由第二方法量化的距离,获得网格对齐之后的参考点的坐标值。
步骤S312:确定非参考点的坐标值。如此确定缩放字符上指定的点:距离a/距离b的值最接近距离A/距离B的值。这里,在缩放之前的字符上与要确定的指定点相对应的点处于缩放之前的参考点中彼此相邻的第一参考点和第二参考点之间。距离A是缩放之前的字符上的点与第一参考点之间的距离。距离B是缩放之前的字符上的点与第二参考点之间的距离。距离a是要确定的指定点与缩放后的第一参考点之间的距离。距离b是确定的指定点与缩放后的第二参考点之间的距离。
在图6和8所示的示例中,步骤S310、S311、S312、S104以及S105对应于“基于带有至少一个调整距离的缩放参考点来显示缩放字符或图形的步骤”,但是本发明不限于此。
在图6和8所示的示例中,步骤S102、S104、S105、S302、S303、S305以及S308至S312对应于“字符/图形显示处理”,但是本发明不限于此。
包括CPU 121在内的控制部分120执行字符/图形显示处理,但是本发明不限于此。
在上述示例中,对字符进行缩放,并且显示缩放后的字符。本发明并不局限于此。不是用于字符,或者除了用于字符之外,本发明还可用于对图形进行缩放并显示缩放后的图形。在这种情形中,不是使用字符显示程序141或者除了字符显示程序141之外,还可使用图形显示程序。不是使用字符数据142或者除了字符数据142之外,还可以使用图形数据。图形显示程序还可以包括与字符显示程序141实质上相同的步骤。图形数据与字符数据一样,可以包括至少一个参考点。
根据本发明的字符/图形显示装置,调整由第二方法量化的至少一个距离,从而由第二方法量化的距离的总和等于由第一方法量化的总和。当由第二方法量化的距离的总和大于由第一方法量化的总和时,如此执行调整:缩短由第二方法量化的至少一个距离。当由第二方法量化的距离的总和小于由第一方法量化的总和时,如此执行调整:延长由第二方法量化的至少一个距离。结果,由第二方法量化的距离的总和等于由第一方法量化的总和。这样,位置调整之后字符和/或图形的形状和尺寸可以与调整之前相同。因为由第二方法量化的距离的大小顺序没有反转,所以可以维持显示设备130所显示的字符和/或图形的平衡。
根据本发明的字符/图形显示装置,在调整由第二方法量化的至少一个距离时考虑代表由第二方法量化的距离的最小必要距离的标记。因此,由第二方法量化的距离可以保持最小必要距离。结果,防止字符和/或图形在显示器130显示时被挤压。
作为具体示例,将描述用于显示尺寸为30点的字符“葦”的字符显示程序141的处理过程。
步骤S101:将代表要由显示设备130显示的字符“葦”的字符信息通过输入设备110输入到主存储器122。根据输入的字符信息,CPU121读取辅助存储设备140中存储的字符数据142。所读取的字符数据142例如是图3所示的字符数据142。字符数据142包括坐标数据。
步骤S102:CPU 121根据要输出到显示设备130的字符尺寸(30点),按比例缩放字符数据142中所包括的坐标数据,并由此生成缩放坐标数据。缩放坐标数据(X,Y)是((30-1)×X/255,(30-1)×Y/255)。缩放坐标数据计算到第二个小数位。
图9示出了缩放之前的坐标数据以及缩放之后的坐标数据。
步骤S103:CPU 121对缩放坐标数据进行网格对齐,并由此生成网格对齐坐标数据。
后文将逐步描述步骤S103中所执行的网格对齐(程序141b)的过程。
步骤S201:CPU 121对在Y轴方向的块号码为1的笔划进行Y轴方向的块处理。
后文将逐步描述在步骤S201中执行的Y轴方向的块处理。
步骤S301:CPU 121基于缩放坐标数据,生成缩放参考点的坐标值。基于坐标值,CPU 121获得缩放参考点之间的距离。在参考点之间有八个距离。距离号为Y1的第一距离是2.73。距离号为Y2的第二距离是4.21。距离号为Y3的第三距离是3.64。距离号为Y4的第四距离是3.52。距离号为Y5的第五距离是3.64。距离号为Y6的第六距离是3.98。距离号为Y7的第七距离是3.87。距离号为Y8的第八距离是3.41。
图10示出了在Y轴方向对字符数据进行网格对齐所获得的数据。
这八个距离被表示在图10中“距离”之下。
步骤S302:CPU 121获得距离Y1至Y8的总和。距离的总和是29.00。CPU 121利用四舍五入对总和进行量化。由四舍五入量化的总和是29。
步骤S303:CPU 121考虑距离标记,对距离Y1至Y8中每一个利用四舍五入进行量化。由四舍五入量化的每个距离被表示在图10中“量化”之下。
步骤S304:CPU 121确定由四舍五入量化的距离的总和是否小于由四舍五入量化的总和。由四舍五入量化的距离的总和是30,并且由四舍五入量化的总和是29。因此,步骤S304中的确定是“否”,并且处理前进到步骤S306。
步骤S306:CPU 121确定由四舍五入量化的距离的总和是否大于由四舍五入量化的总和。步骤S306中的确定是“是”,并且处理前进到步骤S307。
步骤S307:CPU 121确定距离标记的总和是否大于由四舍五入量化的总和。距离标记的总和是14。因为距离标记的总和不大于由四舍五入量化的总和,所以步骤S307中的确定是“否”,并且处理前进到步骤S309。
步骤S309:CPU 121将由第二方法量化的距离中量化误差最大的距离缩短。参考图10,距离Y4的量化误差最大。因此,将距离Y4的值4调整为3。处理进入步骤S304。
这里,由四舍五入量化的距离的总和是29,这等于由四舍五入量化的总和。因此,处理从步骤S304通过步骤S306前进到步骤S310。
步骤S310:确定形成字符“葦”的块在Y轴方向的最大坐标值和最小坐标值。块在Y轴方向的最大坐标值是29。块在Y轴方向的最小坐标值是0。
步骤S311:获得网格对齐之后参考点的Y坐标值。因为距离Y3的值是3,所以确定距离Y1的参考点的Y坐标值是29-3=26。以实质上相同的方式来确定其他参考点。
步骤S312:确定非参考点的坐标值。图11示出了网格对齐之后的坐标值。
因为Y轴方向中块号码为1的块的处理已经完成,所以处理前进到步骤S202。
步骤S202:步骤S201的重复次数(一次)等于Y轴方向中块号码的最大值(1)。因此,确定Y轴方向中的处理完成。处理前进到步骤S203。
步骤S203:对X轴方向中块号码为1的块执行处理。如上所述,执行实质上与Y轴方向中块号码为1的块相同的处理。图12示出了对字符数据在X轴方向中进行网格对齐所获得的数据。
步骤S204:步骤S203的重复次数(一次)等于X轴方向中块号码的最大值(1)。因此,确定X轴方向中的处理完成。网格对齐处理完成。
步骤S104:生成绘制数据。
步骤S105:CPU 121利用显示设备130来显示步骤S104中生成的绘制数据。图13示出了由显示设备130显示的尺寸为30点的字符“葦”。
作为具体示例,下面将描述用于显示尺寸为14点的字符“葦”的字符显示程序141的处理过程。
步骤S101:将代表要由显示设备130显示的字符“葦”的字符信息通过输入设备110输入到主存储器122。根据输入的字符信息,CPU
121读取辅助存储设备140中存储的字符数据142。所读取的字符数据142例如是图3所示的字符数据142。字符数据142包括坐标数据。
步骤S102:CPU 121根据要输出到显示设备130的字符尺寸(14点),按比例缩放字符数据142中所包括的坐标数据,并由此生成缩放坐标数据。缩放坐标数据(X,Y)是((14-1)×X/255,(14-1)×Y/255)。缩放坐标数据计算到第二个小数位。
图14示出了缩放之前的坐标数据以及缩放之后的坐标数据。
步骤S103:CPU 121对缩放坐标数据进行网格对齐,并由此生成网格对齐坐标数据。
后文将逐步描述步骤S103中所执行的网格对齐(程序141b)的过程。
步骤S201:CPU 121对在Y轴方向的块号码为1的笔划进行Y轴方向的块处理。
后文将逐步描述在步骤S201中执行的Y轴方向的块处理。
步骤S301:CPU 121基于缩放坐标数据,生成缩放参考点的坐标值。基于坐标值,CPU 121获得缩放参考点之间的距离。在参考点之间有八个距离。距离号为y1的第一距离是1.22。距离号为y2的第二距离是1.89。距离号为y3的第三距离是1.63。距离号为y4的第四距离是1.58。距离号为y5的第五距离是1.63。距离号为y6的第六距离是1.79。距离号为y7的第七距离是1.73。距离号为y8的第八距离是1.53。
图15示出了在Y轴方向对字符数据进行网格对齐所获得的数据。
这八个距离被表示在图13中“距离”之下。
步骤S302:CPU 121获得距离y1至y8的总和。距离的总和是13.00。CPU 121利用四舍五入对总和进行量化。由四舍五入量化的总和是13。
步骤S303:CPU 121考虑距离标记,对距离y1至y8中每一个利用四舍五入进行量化。由四舍五入量化的每个距离被表示在图15中“量化”之下。
步骤S304:CPU 121确定由四舍五入量化的距离的总和是否小于由四舍五入量化的总和。由四舍五入量化的距离的总和是13,并且由四舍五入量化的总和是15。因此,步骤S304中的确定是“否”,并且处理前进到步骤S306。
步骤S306:CPU 121确定由四舍五入量化的距离的总和是否大于由四舍五入量化的总和。步骤S306中的确定是“是”,并且处理前进到步骤S307。
步骤S307:CPU 121确定距离标记的总和是否大于由四舍五入量化的总和。距离标记的总和是14。因为距离标记的总和大于由四舍五入量化的总和,所以步骤S307中的确定是“是”,并且处理前进到步骤S308。
步骤S308:考虑省略标记,以使由四舍五入量化的距离y4变为0。处理进入步骤S304。
这里,由四舍五入量化的距离的总和是13,这等于由四舍五入量化的总和。因此,处理从步骤S304通过步骤S306前进到步骤S310。
步骤S310:确定形成字符“葦”的块在Y轴方向的最大坐标值和最小坐标值。块在Y轴方向的最大坐标值是13。块在Y轴方向的最小坐标值是0。
步骤S311:获得网格对齐之后参考点的Y坐标值。因为距离y1的值是1,所以确定距离y1的参考点的Y坐标值是13一1=12。以实质上相同的方式来确定其他参考点。
步骤S312:确定非参考点的坐标值。图16示出了网格对齐之后的坐标值。
因为Y轴方向中块号码为1的块的处理已经完成,所以处理前进到步骤S202。
步骤S202:步骤S201的重复次数(一次)等于Y轴方向中块号码的最大值(1)。因此,确定Y轴方向中的处理完成。处理前进到步骤S203。
步骤S203:对X轴方向中块号码为1的块执行处理。如上所述,执行实质上与Y轴方向中块号码为1的块相同的处理。图17示出了对字符数据在X轴方向中进行网格对齐所获得的数据。
步骤S204:步骤S203的重复次数(一次)等于X轴方向中块号码的最大值(1)。因此,确定X轴方向中的处理完成。网格对齐处理完成。
步骤S104:生成绘制数据。
步骤S105:CPU 121利用显示设备130来显示步骤S104中生成的绘制数据。图18示出了由显示设备130显示的尺寸为14点的字符“葦”。
通过优选实施例描述了本发明。但是这并不意味着本发明局限于这些示例。应该理解,本发明的范围仅仅由所附权利要求限定。应该理解,本领域的技术人员基于本发明的描述以及技术常识,可以做出本发明的等同物。本说明书中所引用的专利、专利申请以及文献结合于此用作参考,并且应该理解为在本说明书中进行了具体描述。
工业实用性
根据本发明的字符/图形显示装置,调整由第二方法量化的至少一个距离,从而由第二方法量化的距离的总和等于由第一方法量化的总和。当由第二方法量化的距离的总和大于由第一方法量化的总和时,如此执行调整:缩短由第二方法量化的至少一个距离。当由第二方法量化的距离的总和小于由第一方法量化的总和时,如此执行调整:延长由第二方法量化的至少一个距离。结果,由第二方法量化的距离的总和等于由第一方法量化的总和。这样,位置调整之后字符和/或图形的形状和尺寸可以与调整之前相同。因为由第二方法量化的距离的大小顺序没有反转,所以可以维持显示设备所显示的字符和/或图形的平衡。
根据本发明的字符/图形显示装置,在调整由第二方法量化的至少一个距离时考虑代表由第二方法量化的距离的最小必要距离的标记。因此,由第二方法量化的距离可以保持最小必要距离。结果,防止字符和/或图形在显示设备进行显示时被挤压。
Claims (10)
1、一种字符/图形显示装置,包括:
用于显示字符或图形的显示设备;和
用于控制所述显示设备的控制部分;
其中:
所述控制部分执行字符/图形显示处理;并且
所述字符/图形显示处理包括如下步骤:
(a)对包括沿着特定轴方向的参考点在内的字符或图形进行按比例缩放,从而生成缩放参考点;
(b)利用第一方法对所述缩放参考点之间的距离的总和进行量化,从而生成由所述第一方法量化的总和;
(c)利用第二方法对所述缩放参考点之间的距离进行量化,从而生成由所述第二方法量化的距离;
(d)如此调整由所述第二方法量化的距离中至少一个距离,使由所述第二方法量化的距离的总和等于由所述第一方法量化的总和;以及
(e)基于带有调整的所述至少一个距离的缩放参考点,显示缩放字符或图形;其中
步骤(d)包括优先调整由所述第二方法量化的距离中具有由所述第二方法引起的较大量化误差的距离。
2、根据权利要求1所述的字符/图形显示装置,其中在利用所述第二方法执行量化时考虑距离标记,所述距离标记代表由所述第二方法量化的距离的最小必要距离。
3、根据权利要求1所述的字符/图形显示装置,其中在执行步骤(d)时考虑距离标记,所述距离标记代表由所述第二方法量化的距离的最小必要距离。
4、根据权利要求1所述的字符/图形显示装置,其中步骤(d)包括延长由所述第二方法量化的距离中至少一个距离的步骤。
5、根据权利要求1所述的字符/图形显示装置,其中步骤(d)包括缩短由所述第二方法量化的距离中至少一个距离的步骤。
6、根据权利要求1所述的字符/图形显示装置,其中步骤(d)包括使由所述第二方法量化的距离中至少一个距离变为零的步骤。
7、根据权利要求1所述的字符/图形显示装置,其中步骤(e)包括如下步骤:如此显示作为缩放字符上指定点的第一点,使距离a/距离b的值最接近距离A/距离B的值,其中:
缩放之前的字符上与所述第一点相对应的第二点处于缩放之前的参考点中彼此相邻的第一参考点与第二参考点之间;
距离A是所述第二点与所述第一参考点之间的距离;
距离B是所述第二点与所述第二参考点之间的距离;
距离a是所述第一点与缩放第一参考点之间的距离;
距离b是所述第一点与缩放第二参考点之间的距离。
8、根据权利要求1所述的字符/图形显示装置,其中:
所述字符由多个块组成;并且
所述字符/图形显示处理还包括对所述多个块中每一块执行步骤(b)至(d)的步骤。
9、根据权利要求6所述的字符/图形显示装置,其中在执行使由所述第二方法量化的距离中至少一个距离变为零的步骤时考虑如下标记:该标记代表要变为零的距离在使所述距离中至少一个距离变为零的顺序中所处的位置。
10、一种字符/图形显示方法,包括如下步骤:
对包括沿着特定轴方向的参考点在内的字符或图形进行按比例缩放,从而生成缩放参考点;
利用第一方法对所述缩放参考点之间的距离的总和进行量化,从而生成由所述第一方法量化的总和;
利用第二方法对所述缩放参考点之间的距离进行量化,从而生成由所述第二方法量化的距离;
如此调整由所述第二方法量化的距离中至少一个距离,使由所述第二方法量化的距离的总和等于由所述第一方法量化的总和;以及
基于带有调整的所述至少一个距离的缩放参考点,显示缩放字符或图形,
其中,调整步骤包括优先调整由所述第二方法量化的距离中具有由所述第二方法引起的较大量化误差的距离。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP137918/2003 | 2003-05-15 | ||
JP2003137918A JP4662412B2 (ja) | 2003-05-15 | 2003-05-15 | 文字図形表示装置、文字図形表示方法、プログラムおよび記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1806276A CN1806276A (zh) | 2006-07-19 |
CN100578604C true CN100578604C (zh) | 2010-01-06 |
Family
ID=33447276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200480016728A Expired - Fee Related CN100578604C (zh) | 2003-05-15 | 2004-05-14 | 字符/图形显示装置、字符/图形显示方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20080062180A1 (zh) |
EP (1) | EP1624442A1 (zh) |
JP (1) | JP4662412B2 (zh) |
CN (1) | CN100578604C (zh) |
TW (1) | TWI261804B (zh) |
WO (1) | WO2004102524A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3883554B2 (ja) * | 2005-01-19 | 2007-02-21 | シャープ株式会社 | 文字図形表示装置、プログラムおよび記録媒体 |
US7868888B2 (en) * | 2006-02-10 | 2011-01-11 | Adobe Systems Incorporated | Course grid aligned counters |
CN100498927C (zh) * | 2006-07-28 | 2009-06-10 | 中国科学院声学研究所 | 二维图形引擎中的点阵字符的缩进方法与中文处理方法 |
US8102397B2 (en) * | 2009-01-26 | 2012-01-24 | Mitsubishi Electric Research Laboratories Inc. | Method for improving uniform width character strokes using multiple alignment zones |
CN102132324A (zh) * | 2009-06-24 | 2011-07-20 | 松下电器产业株式会社 | 图形描绘装置、图形描绘方法、图形描绘程序、记录图形描绘程序的记录介质、集成电路 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0471482A2 (en) * | 1990-08-03 | 1992-02-19 | Canon Kabushiki Kaisha | Character processing method |
JP2618528B2 (ja) * | 1990-11-22 | 1997-06-11 | 株式会社日立製作所 | 文字描画装置と文字出力補正方法並びに文字出力装置 |
CN1045835C (zh) * | 1992-12-07 | 1999-10-20 | 富士通株式会社 | 产生字符的方法和装置 |
JP3038691B2 (ja) * | 1992-12-07 | 2000-05-08 | 松下電器産業株式会社 | ウインドウ移動装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2895512B2 (ja) * | 1989-07-05 | 1999-05-24 | 株式会社日立製作所 | 文字出力方式 |
JPH0392897A (ja) * | 1989-09-05 | 1991-04-18 | Nec Off Syst Ltd | パターン発生装置 |
JP3057935B2 (ja) * | 1992-11-16 | 2000-07-04 | ブラザー工業株式会社 | 文字出力装置 |
JP3034140B2 (ja) * | 1992-12-07 | 2000-04-17 | 富士通株式会社 | 文字生成方法及びその装置 |
JP2964841B2 (ja) * | 1993-07-15 | 1999-10-18 | ブラザー工業株式会社 | データ変換装置 |
JPH0736434A (ja) * | 1993-07-23 | 1995-02-07 | Hitachi Ltd | 文字出力装置 |
-
2003
- 2003-05-15 JP JP2003137918A patent/JP4662412B2/ja not_active Expired - Fee Related
-
2004
- 2004-05-14 US US10/556,820 patent/US20080062180A1/en not_active Abandoned
- 2004-05-14 CN CN200480016728A patent/CN100578604C/zh not_active Expired - Fee Related
- 2004-05-14 WO PCT/JP2004/006923 patent/WO2004102524A1/ja active Application Filing
- 2004-05-14 EP EP04733180A patent/EP1624442A1/en not_active Withdrawn
- 2004-05-14 TW TW093113720A patent/TWI261804B/zh not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0471482A2 (en) * | 1990-08-03 | 1992-02-19 | Canon Kabushiki Kaisha | Character processing method |
JP2618528B2 (ja) * | 1990-11-22 | 1997-06-11 | 株式会社日立製作所 | 文字描画装置と文字出力補正方法並びに文字出力装置 |
CN1045835C (zh) * | 1992-12-07 | 1999-10-20 | 富士通株式会社 | 产生字符的方法和装置 |
JP3038691B2 (ja) * | 1992-12-07 | 2000-05-08 | 松下電器産業株式会社 | ウインドウ移動装置 |
Also Published As
Publication number | Publication date |
---|---|
CN1806276A (zh) | 2006-07-19 |
EP1624442A1 (en) | 2006-02-08 |
JP2004341253A (ja) | 2004-12-02 |
JP4662412B2 (ja) | 2011-03-30 |
US20080062180A1 (en) | 2008-03-13 |
TW200509060A (en) | 2005-03-01 |
WO2004102524A1 (ja) | 2004-11-25 |
TWI261804B (en) | 2006-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101536037B (zh) | 绘制和编码字形 | |
CN102227752A (zh) | 使用三维图形硬件的二维图形渲染期间的顶点丢弃 | |
US20060181532A1 (en) | Method and system for pixel based rendering of multi-lingual characters from a combination of glyphs | |
CN1702734B (zh) | 当对应轮廓缺少控制点时对图形对象的适当呈现 | |
CN100578604C (zh) | 字符/图形显示装置、字符/图形显示方法 | |
CN109375962A (zh) | 基于嵌入式操作系统的汉字字符混合输出显示的实现方法 | |
CN100397480C (zh) | 字符图形产生器和字符产生方法 | |
JP2008054271A (ja) | 画像処理装置、及び、プログラム | |
CN107767327B (zh) | 图像渲染方法及装置、计算设备、显示设备 | |
US8035619B2 (en) | Image drawing method, portable terminal, and computer program | |
KR100918890B1 (ko) | 처리 장치 및 기록 매체 | |
EP1282108A1 (en) | Image half-tone processor and method thereof | |
JP2002116729A (ja) | データ変換方法、画像表示方法、画像処理装置、画像表示装置、画像表示システムおよび画像処理システム | |
CN113160126A (zh) | 硬件木马检测方法、装置、计算机设备和存储介质 | |
WO2006077800A1 (ja) | 文字図形表示装置、プログラムおよび記録媒体 | |
CN112256176A (zh) | 文字显示方法、装置、电子设备以及计算机可读存储介质 | |
US20060209075A1 (en) | Method for generating a dot-based image of a character by scaling strokes of the character | |
JP2898974B2 (ja) | 文字処理装置 | |
JP2691559B2 (ja) | 画素密度変換装置及びその方法 | |
KR100866362B1 (ko) | 표시장치, 프로그램 및 기록매체 | |
CN113806278A (zh) | 可以任意更改矢量字库的字库芯片处理方法及字库芯片 | |
KR910002799B1 (ko) | 컴퓨터시스템용 문자 발생방법과 그 장치 | |
CN102654920B (zh) | 用于向量图形的线段溢位修正方法 | |
JP4726087B2 (ja) | データ処理装置、データ処理方法、電子情報機器、制御プログラムおよび可読記録媒体 | |
CN100426371C (zh) | 动态图样索引的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100106 Termination date: 20140514 |