首页> 中国专利> 在任意定向、放大和分辨率情况下打印伪粗体字符的方法

在任意定向、放大和分辨率情况下打印伪粗体字符的方法

摘要

一种从基本字符产生粗体字符的系统和方法。该方法包括非正交、不对称或者两者同时采用重打基本字符来产生该粗体字符。以CTM为基准的重打变换的字符优选包括:A、确定多次打击的次数,即偏移重打的次数;B、根据多次打击次数,相对于固定基准点,确定一个水平矢量和一个垂直矢量;C、使用CTM,变水平矢量为变换的水平矢量和垂直矢量为变换的垂直矢量;D、沿变换水平矢量和变换垂直矢量的点重打变换字符产生粗体字符。

著录项

  • 公开/公告号CN1170902A

    专利类型发明专利

  • 公开/公告日1998-01-21

    原文格式PDF

  • 申请/专利权人 惠普公司;

    申请/专利号CN97111450.1

  • 发明设计人 R·G·克里斯;K·沙恩;

    申请日1997-05-19

  • 分类号G06F3/09;

  • 代理机构72001 中国专利代理(香港)有限公司;

  • 代理人王勇;王忠忠

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-17 12:56:30

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2009-07-22

    专利权的终止(未缴年费专利权终止)

    专利权的终止(未缴年费专利权终止)

  • 2004-03-24

    授权

    授权

  • 1998-08-26

    实质审查请求的生效

    实质审查请求的生效

  • 1998-01-21

    公开

    公开

说明书

本发明与成像技术有关,更准确地说与在任意定向和大小时产生粗体字符有关。

东方字体与西方的比要大好多。在日文、朝鲜文、繁体汉字或者简体汉字中可以具有比包括1组、2组和5组拉丁字符集的字体多达30倍的字体。包括西方文字的计算机产品如操作系统和打印机,通常有一个完整的字库,有基本字符、斜体、粗体、和粗斜体。然而,包括东方文字的产品通常只有基本字体,而没有完整的字库。因为制作这些字体要占用大量的空间,花费大量的时间与金钱。这些产品通常使用增强算法(例如剪切,双打)来产生斜体与粗体。这种方法产生的字体刻板从印刷上来说不合格,但对这些产品的绝大多数用户来说足够了。在本文的讨论中,算法产生的粗体刻板称为伪粗体(pseudo-bold)字符。

现有技术中产生伪粗体的方法包括对基本字符进行双打和多次击打。双打时,一个字被打印两次,1次在正常位置,1次在右侧偏置一个像素。这种方法在低分辨率装置,如点阵打印机,视频显示器中使用广泛。它的缺点是无法根据点的大小和分辨率进行调整。因此,在高分辨率的显示装置或多点字符时,双打字符与基本字符的区别不很明显。

多次打击就是字符在纵向(X)与横向(Y)上以不同偏移重打。在每个方向上字符被重打的次数是根据点的大小和装置分辨率按比例来定的。例如,如果一个10点字符在一个每英寸300点(300dpi)的装置上在X,Y轴方向上各被击打2次,那么一个20点字符在300dpi的装置上要被击打4次(双点大小),一个10点字符在600dpi装置上要被击打4次(双分辨率)。

在打印机典型的多次打击法中,伪粗体字符在被打印前,在RAM中形成一个位图。产生伪粗体字符的过程开始是形成原始(基字符)字符的位图。再分配一个足以存储将基本字符在X轴方向进行N次打击(N是多次打击的次数)的临时内存块。然后,基本字符被复制到临时内存块N次,每次向右偏移1个像素。这样的效果是将字符向右打击了N次。然后分配一个足以存储伪粗体字符的新的内存块。然后临时内存块中的映象被复制到新的内存块N次,每次向上偏移1个像素。现在新的内存块存储伪粗体字符等待打印,临时内存块被收回。

换种说法,假设在(0,0)点打印基本字符,例如,使用X轴向右延伸,Y轴向向上延伸的像素坐标。常规的多次打击法沿X轴方向打击基本字符N次,每次击打向右移动字符1个像素,形成了一个中间的位图。也就是说,字符在(1,0),(2,0),…,(n,0)被多次打击。然后常规的多次打击法重复形成中间位图的处理,在Y轴方向,对该中间映象打击N次,这样就形成了伪粗体字符。也就是说,中间映象在(0,1),(0,2),…(0,n)被多次击打。

常规多次打击法有局限性。对于非垂直定向或者不对称比例的基本字符,常规多次打击法形成的伪粗体字符的形状与基本字符不同。

因此,本发明就是提供一种新的系统和方法来在任意定向(包括非垂直定向),放大(包括不对称比例),点大小,和装置分辨率的情况下产生伪粗体字符。

根据在本发明中的一个优选实施例中的原则,公开了一种从一个在方向、大小或者两者同时变换过的基本字符产生粗体字符的系统和方法。该方法包括非正交、不对称、或者两者同时采用重打所变换的字符来产生粗体字符。非正交、不对称、或者两者同时采用重打所变换的字符的优选实施例包括相对于一个预定坐标变换矩阵(CTM)重打该变换的字符。另外,相对于该CTM重打变换的字符的方法优选包括(a)确定表示偏移打击数目的多次击打次数,(b)根据这一多次击打次数确定相对于一个固定参考点的一个水平矢量和一个垂直矢量,(c)使用CTM变换水平矢量为所变换的水平矢量和变换垂直矢量为变换的垂直矢量,(d)在沿所变换的水平矢量和沿所变换的垂直矢量上的点重打所变换的字符产生粗体字符。

本发明的其它目的、优点和能力在叙述过程中将变得很明显。

图1-2表示一个说明本发明产生一个伪粗体字符的优选方法的流程图;

图3A-E说明一个放大的字母“H”,其方向经过改变,然后使用常规的多次打击方法变为粗体;

图4A-E说明一个放大的字母“H”,其方向经过改变,然后使用本发明的方法变为粗体。

任何二维图象,例如一个字符Q的放大、旋转和平移的组合,都可以由3×3的坐标变换矩阵(CTM)来表示。例如,以下的CTM产生一个双宽度字符,即,将其延伸成原始字符宽度的2倍: > > >2> >0> >0> > >0> >1> >0> > >0> >0> >1> > >s>下列CTM将一个字符顺时针旋转θ度: > > >cos>θ> >->sin>θ> >0> > >sin>θ> >cos>θ> >0> > >0> >0> >1> > >s>任何没有平移的放大和旋转的结合可以由以下的CTM来表示: > > >a> >c> >0> > >b> >d> >0> > >0> >0> >1> > >s>

任意点(X,Y)可以用一个矢量(XY1)来表示并由前面的CTM按照下式变为(X’,Y’): >>>[>>x>′>>>y>′>>1>]>=>[>xy>1>]>> > >a> >c> >0> > >b> >d> >0> > >0> >0> >1> > >>s>

       =[ax+by cx+dy 1]

该结果被用来实现本发明的多次打击法。

图1-2是显示本发明产生一个在方位、大小,或二者同时相对于基本字符变换过的伪粗体字符的较佳实施例的流程图。首先,在步骤5,使用预定的CTM,把基本字符在方位,大小,或二者同时进行变换产生一个变换字符。基本字符相对一个固定的基准点如(0,0)变换。在步骤10,确定多次打击次数“N”。多次打击次数是基本字符在常规的多次打击法中被多次打击的次数。一些因素,如点大小和分辨率被用来确定多次打击次数。如每英寸600点(600dpi)的10点字符通常的多次打击次数是4到6次。

然后,在步骤15,确定水平矢量。水平矢量是固定基准点(即,本例中的(0,0))和沿X轴上偏移n个像素的点(n,0)之间的矢量。然后,在步骤10用CTM变换水平矢量来产生一个变换的水平矢量。变换过的水平矢量的终点是(an,cn)。接着在步骤25确定沿变换的水平矢量用来重打的区间的点。尽管沿变换的水平矢量的点可以用多种方法来计算,然而,在较佳实施例中,使用简单的数字微分分析仪(DDA)。布莱森哈姆(Bresenham)的算法制造了和现有技术中通常使用的DDA一样简单的DDA。

中间位图在步骤30通过在沿变换的水平矢量确定的点以一个重打位图字符重打变换字符而产生。每个重打字符以沿着变换水平矢量的相应点为基准点,这与基本字符以固定基准点为基准一样。

然后,在步骤45确定垂直矢量。垂直矢量是在固定基准点(0,0)和沿Y轴偏移n个像素的点(0,n)之间的矢量。垂直矢量然后在步骤40被CTM变换来产生一个变换的垂直矢量。变换后的垂直矢量的终点是(bn,dn)。然后,在步骤45确定沿变换后的垂直矢量用来重打的区间的点。沿着变换的垂直矢量的点最好用同计算水平矢量同样的方法计算。

最后,在步骤50通过在沿变换的垂直矢量确定的点以一个重打位图重打中间位图产生变换后的粗体字符。每个重打位图以沿着变换垂直矢量的相应点为基准点,这与基本字符以固定基准点为基准一样。

应该指出,有可能改变实施本方法各步骤的顺序,以获得同样的结果。如,水平和垂直矢量都可以在它们被变换之前确定。而且,中间位图可以通过在沿变换的垂直矢量确定的点重打变换字符而产生,而粗体字符通过在沿变换的水平矢量确定的点重打中间位图而产生。

图3A-E和4A-E代表放大的字母H,它的定位方向改变,然后变成粗体。图3A-E显示了产生伪粗体字符的常规技术,为与现有发明比较用。图4A-E显示了使用本发明产生的伪粗体字符。这些图显示了每种技术产生正确映象的相对能力。

参考图3A,竖直的“H”105代表了放大了的字母H以显示细节。图3B中的斜"H”110显示了一个非正交“H”,它可能通过使用常规CTM从“H”105产生。在图3C中,“H”115代表一个从"H”110产生的中间位图并显示了常规技术如何把一个非正交字符(亦即斜“H”110)通过每次在水平方向从原来的斜“H”110向右移动一个像素重打"H”110而使非正交字符变粗。水平方向正交于相对于原来的基本字符105有关的一个固定的坐标/参考系统的右面。在本例中,斜的“H”110被击打4次产生了中间位图115。注意图3B中的基准像素125如何变换成图3C中的水平线145。

一个进一步放大的图3C的“H”115的局部细节显示在图3D中。只显示了“H”115的右脚下部。为了更清楚,图3D没有按比例显示,只是简单地显示了以变换字符110为基准的重打135、140的总体趋势(只显示了两次重打135、140)。然而,可以清楚地看到,变换后的“H”110是如何沿着正交的X轴以两次重打135、140变粗来产生“H”115的。

然后,中间位图115每次从原始的中间位图115沿着垂直方向(竖直朝向纸页顶部)偏移重打,如图3E的“H”120所示。本例中,中间位图115在垂直方向重打4次产生完全粗体字符120。完全粗体“H”120显示了使用常规技术产生非正交伪粗体字符的结果。注意在正交方向上显示变粗的粗体参考像素155。还请注意伪粗体字符120的部分150,它们显示出在正交方向上成方形。这些显示了常规重打技术的明显缺点。

参考图4A,向上的“H”205再次代表放大了的字母“H”以显示细节。图4B的斜“H”210再次显示了一个非正交“H”,它可以通过使用常规CTM从“H”205产生。图4C中的中间位图215表示本发明的方法如何通过从原始斜“H”210每次在变换的水平方向上非正交偏移重打斜“H”210而使非正交字符变粗。变换过的水平方向以斜“H”210为基准,这与水平方向以竖直“H”205为基准一样。在本例中,斜“H”210被重打4次产生了中间位图215。注意图4B中的基准像素225如何变换成图4C中的对角线245。对角线245对水平方向的角度与向上的“H”205为产生“H”210旋转的角度相同。此线与图3C中的水平线145对比,明显显示了本发明对现有技术的优越性。

一个进一步放大的图4C的局部细节“H”215显示在图4D中。只显示了“H”215的右脚下部。为了更清楚,图4D没有按比例显示,只是简单地显示了以变换字符210为基准的重打235、240的总体趋势(只显示了两次重打235、240)。然而,可以清楚地看到,变换的“H”210是如何用两次重打235、240沿非正交变换的水平方向来产生“H”215的。

然后,中间位图215从原始的中间位图215每次沿变换的垂直方向非正交偏移重打,如图4E的“H”220。变换的垂直方向以“H”210为基准,这与垂直方向与向上的“H”205为基准一样。本例中,中间位图215被非正交垂直方向重打4次产生完全粗体字符220。完全粗体“H”220显示了使用本发明产生非正交伪粗体字符的结果。注意粗体基准像素255角度与粗体“H”220同样方向。并注意伪粗体字符220的250部分,它在变换的水平和垂直方向成方形,它相应于伪粗体字符220的旋转角度。此字符与图3的现有技术比有明显的改进。

本发明的多次打击法从使用任何CTM变换的基本字符产生伪粗体字符。这包括不对称变换一个基本字符的CTM,即,被变换字符的高度与宽度并不与以基本字符为基准点的高度与宽度成比例。水平方向重打的次数与变换字符的宽度成比例,垂直方向重打的次数与变换字符的高度成比例。这与垂直、水平方向重打次数相同的常规多次打击法不同。如果基本字符在非对称放大后被旋转时,水平方向和垂直方向的重打以旋转的字符为基准。

总之,以上叙述了一种新的系统和方法的较佳实施例,来在任意定向、放大的情况下产生伪粗体字符。也就是说,本发明在原始字符被非正交旋转或不对称放大时,产生一个与原始字符形状更接近的伪粗体字符。本发明适用与各种图象产生装置,包括打印机和视频显示装置。这样,很明显,本发明很容易使用各种现有的硬件和软件实现。进一步说,虽然本发明是通过较佳实施例进行叙述的,很明显,其他实施例、实施方法或修改可以在不背离本发明精神的前提下应用。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号