快速生成矢量图的方法及装置的制作方法

文档序号:6337030阅读:611来源:国知局
专利名称:快速生成矢量图的方法及装置的制作方法
技术领域
本发明涉及计算机绘图技术领域,特别涉及一种快速生成矢量图的方法及装置。
背景技术
随着科技的日益发展,计算机的应用也越来越普及,计算机在教学、教育、消防等 行业的应用也越来越广泛,在这些行业的计算机的应用中,会需要涉及到很多矢量图的应 用,这些矢量图包括规则矢量图、不规则矢量图,例如消防行业中使用的矢量图标消防车、 洒水车、飞机,教育行业中的基本的几何图形和教育过程中使用的一些不规则图形等等。如 何能快速制作出能改变颜色且能放大不失真的矢量图,软件开发人员需要针对不同的图形 进行设计编程,随着图量的增加,编码的代价也越高,成本也就越高。在现有的绘制或者生成矢量图的方式中,其中一种方式是直接采用绘图软件来绘 制出矢量图,然而,尽管这种绘制过程绘制方便、快捷,但是却需要专业制作人员来制作,而 且不能改变线条颜色、粗细和封闭区域填充颜色,现有的另外一种方式是由软件设计和开 发人员通过编程来生成矢量图,其能够改变线条颜色、粗细和封闭区域填充颜色,但是工作 量大、成本高,且不便于扩展。

发明内容
针对上述现有技术中存在的问题,本发明的目的在于提供一种快速生成矢量图的 方法及装置,其可以快速地生成矢量图,且工作量小,成本低。为达到上述目的,本发明采用以下技术方案一种快速生成矢量图的方法,包括步骤导入已画好图形的图片,获取所述图片的数据信息,所述数据信息包括该图片的 图片大小;扫描查找所述图片大小区域内的符合预设条件的像素;根据所述符合预设条件的像素的位置信息生成路径对象,并绘制生成的该路径对象。一种快速生成矢量图的装置,包括图片导入单元,用于导入已画好图形的图片;图片信息获取单元,用于获取所述图片的数据信息,所述数据信息包括该图片的 图片大小;像素查找单元,用于扫描查找所述图片大小区域内的符合预设条件的像素;路径对象生成单元,用于根据所述符合预设条件的像素的位置信息生成路径对 象;绘制单元,用于绘制生成的所述路径对象。根据上述本发明的方案,其是通过导入已绘制好的图片,通过查找出该图片区域 中符合预设条件的像素,并根据这些像素的位置信息来生成路径对象,然后绘制这些生成的路径对象,从而生成与该绘制好的图片对应的矢量图,这种矢量图的生成方式,可以无需 专业的绘制人员来绘制,只需导入已绘制好的图片即可生成与其对应的矢量图,无需专业 的矢量图绘制经验,矢量图的生成速度快,且工作量小,成本低。


图1是本发明的快速生成矢量图的方法实施例的流程示意图;图2是图1中的方法在扫描查找符合预设条件的像素的实施例的流程示意图;图3是本发明的快速生成矢量图的装置实施例的结构示意图。
具体实施例方式以下以具体实施例的方式对本发明方案进行详细阐述。如图1所示,是本发明的快速生成矢量图的方法实施例的流程示意图,其包括步 骤步骤SlOl 导入已画好图形的图片,进入步骤S102 ;步骤S102 获取所述图片的数据信息,这里的数据信息包括该图片的图片大小, 进入步骤S103 ;步骤S103:扫描查找所述图片大小区域内的符合预设条件的像素,进入步骤 S104 ;步骤S104 根据所述符合预设条件的像素的位置信息生成路径对象,并绘制生成 的该路径对象。根据上述本发明方法,其是通过导入已绘制好的图片,通过查找出该图片区域中 符合预设条件的像素,并根据这些像素的位置信息来生成路径对象,然后绘制这些生成的 路径对象,从而生成与该绘制好的图片对应的矢量图,这种矢量图的生成方式,可以无需专 业的绘制人员来绘制,只需导入已绘制好的图片即可生成与其对应的矢量图,无需专业的 矢量图绘制经验,矢量图的生成速度快,且工作量小,成本低。其中,上述导入的已画好的图形的图片,可以是采用画图软件绘制的图片,绘制图 片时,可以是采用任意规则绘制,但是画笔颜色与背景颜色应当有所不同。在其中一种绘制 方式中,画图的画笔的颜色可以为任意颜色,而其他不画的地方(即背景部分)的透明度为 0,采用这种方式绘制的图片可以保存为PNG格式的图片。在另外一种绘制方式中,可以是 将图片的背景颜色设定为某种颜色,优选情况下可设定为无色或者透明度为0,而画图的画 笔的颜色则采用除了背景颜色的其他任意颜色,在此情况下,所绘制的图片可以保存为任 意格式,例如BMP格式等等。在绘制好了图形之后,可根据该图形的图片的路径将该图片导入,具体可将其导 入内存予以存储,在一个具体的示例中,可根据图片的路径创建一个Bitmap将该图片导入 内存中,并对其命名为m_pBitmap。随后即可获取该图片的数据信息。以上述命名为m_Pbitmap的图片为例,具体的 实现方式可以是根据获取的图片指针m_pBitmap通过函数GetObject获取相关的数据信 息,并写入到结构体BITMAP对象中,可将该BITMAP对象命名为m_BmpInf0,这里的图片的数 据信息,具体可包括图片的图片高度、图片宽度等表示图片大小的信息。
随后,即可进入扫描查找所述图片大小区域内的符合预设条件的像素的步骤,该 查找图片大小区域内的符合预设条件的像素的根本目的,是要查找出组成该具体的图形的 各像素,而去除其他的例如背景颜色的像素,从而便于在后续过程中能够根据具体图形的 像素绘制出具体的对应的矢量图。依据上述生成图片的图形的方式,以上述生成PNG格式图片为例,可直接根据图 片中的各像素的透明度来扫描判定,即,此时生成的图片为PNG格式图片,所述预设条件为 透明度不为0。此时,据此预设条件来查找符合预设条件的像素的方法可如图2所示,其具体包 括步骤步骤S201 根据图片大小扫描整张图片,根据像素的位置坐标从对象数据的指针 中获取该位置坐标的像素值,这里的像素值包括透明度、颜色值(即R、G、B值),进入步骤 S202 ;步骤S202 判断获取的该像素的透明度是否为0,若是,则说明该像素是背景部分 的像素,进入步骤S203,若否,则说明该像素是图形部分的像素,进入步骤S204 ;步骤S203 不保存该像素的信息;步骤S204 保存该像素的位置坐标和颜色值的信息。相应地,在上述生成其他格式图片时,由于图片的背景颜色的透明度不为0,无法 直接采用图2中所示的通过判断像素的透明度是否为0的方式进行判定,因此,在进入扫描 查找符合预设条件的像素的步骤之前,可先将图片的背景颜色的透明度设为0,从而,上述 预设条件仍可设置为透明度不为0,在将背景部分的透明度设为0之后,随后即可采用上述 方式扫描查找出符合该预设条件的各像素。其中,在对图片中的各像素进行扫描时,具体的扫描顺序可以依据需要进行自由 设定,例如横向扫描、纵向扫描、螺旋方式扫描或者其他的扫描方式,只要能够扫描图片中 的所有像素点、能够对各像素点进行是否符合预设条件的判断即可。以横向扫描为例,假设需要处理的图片的区域矩形为(xl,yl,x2, y2),其中(xl, yl)为矩形左上角顶点坐标,(x2,y2)为矩形右下角顶点坐标,即xl < x2,yl < y2,设当前 正在处理的像素的坐标为(χ,y),起始点为χ = xl,y = yl,其具体的扫描方式可以是Sl 初始状态下,令 χ = xl,y = yl ;S2:判断当前像素坐标的y值是否小于或等于y2,若是,则说明当前一行处于图片 的区域范围之内,进入步骤S3,否则,则说明图片中所有的像素均已扫描完毕,进入后续的 生成路径对象的步骤;S3、判断当前像素坐标的χ值是否小于或等于x2,若是,则说明当前像素处于图片 的区域范围之内,可以对该像素进行处理,进入步骤S4;否则,说明当前一行的像素已处理 完毕,需进入对下一行像素的处理,令χ = xl, y = y+Ι,并返回上述步骤S2 ;S4、根据需处理像素的坐标,从图片对象数据的指针中获取该像素的颜色值和透 明度,完成该位置坐标像素的处理操作;进入步骤S5 ;S5、进入当前行的下一像素的处理,即令χ = x+1,并返回上述步骤S3。在查找出了图片中所有满足预设条件的各像素之后,即可根据这些像素的位置信 息生成路径对象,生成路径对象的方式可以是采用现有技术中已有的方式,在一个具体的示例中,其生成方式可以是创建一个路径Graphicsl^ath,并将其命名为m_bornpath ;将保存的坐标信息加入到该路径m_b0rnpath中,这可以采用AddEllipse方式来 实现;根据路径m_b0rnpath获取路径的外围矩形,这可以通过GetBounds函数来获取, 并可以提供选择、移动、旋转等应用。在生成了路径对象之后,即可以对这些路径对象进行绘制,将这些路径对象绘制 在屏幕上进行显示,在一个具体的示例中,绘制路径对象的方式可以是将颜色值保存到该对象中,以供后续过程中改变颜色值使用,然后根据获取的对 象的颜色值、初始笔宽创建笔Pen,再根据该笔Pen将路径绘制在屏幕上,采用笔Pen将路径 绘制在屏幕上的过程可以采用Drawlmage等方式来完成。在将各路径对象进行绘制显示后,还可以对该路径对象的颜色、透明度、线条粗 细、填充色等参数进行修改,在进行修改时,首先选中该对象,修改该对象的颜色值、透明 度、线宽等参数,然后刷新图片区域,重新绘制该对象。对于各对象而言,若其有封闭区域, 则可以为其提供颜色填充,并可以对填充色进行修改,若无封闭区域,则可以不进行填充。 具体的修改路径对象的方式在此不予赘述。根据上述本发明的快速生成矢量图的方法,本发明还提供一种快速生成矢量图的 装置,如图3所示,是本发明的快速生成矢量图的装置实施例的结构示意图,其包括有图片导入单元301,用于导入已画好图形的图片;图片信息获取单元302,用于获取所述图片的数据信息、图片大小;像素查找单元303,用于扫描查找所述图片大小区域内的符合预设条件的像素;路径对象生成单元304,用于根据所述符合预设条件的像素的位置信息生成路径 对象;绘制单元305,用于绘制生成的所述路径对象。其中,图片导入单元301导入的已画好的图形的图片,可以是采用画图软件绘制 的图片,绘制图片时,可以是采用任意规则绘制,但是画笔颜色与背景颜色应当有所不同。 在其中一种绘制方式中,画图的画笔的颜色可以为任意颜色,而其他不画的地方(即背景 部分)的透明度为0,采用这种方式绘制的图片可以保存为PNG格式的图片。在另外一种绘 制方式中,可以是将图片的背景颜色设定为某种颜色,优选情况下可设定为无色或者透明 度为0,而画图的画笔的颜色则采用除了背景颜色的其他任意颜色,在此情况下,所绘制的 图片可以保存为任意格式,例如BMP格式等等。在绘制好了图形之后,图片导入单元301可根据该图形的图片的路径将该图片导 入,图片信息获取单元302获取该图片的数据信息,这里的图片的数据信息,具体可包括图 片的图片高度、图片宽度等表示图片大小的信息。随后,像素查找单元303扫描查找所述图片大小区域内的符合预设条件的像素的 步骤,该查找图片大小区域内的符合预设条件的像素的根本目的,是要查找出组成该具体 的图形的各像素,而去除其他的例如背景颜色的像素,从而便于在后续过程中能够根据具 体图形的像素绘制出具体的对应的矢量图。依据上述生成图片的图形的方式,以上述生成PNG格式图片为例,可直接根据图片中的各像素的透明度来扫描判定,即,此时,该生成的图片为PNG格式图片,所述预设条 件为透明度不为0,具体的扫描判定的方式可如图2所示,在此不予赘述。相应地,在上述生成其他格式图片时,由于图片的背景颜色的透明度不为0,无法 直接采用图2中所示的方式进行判定,因此,在进入扫描查找符合预设条件的像素的步骤 之前,可先将图片的背景颜色的透明度设为0,从而,上述预设条件仍可设置为透明度不为 0,在此情况下,随后即可采用上述方式扫描查找出符合该预设条件的各像素。S卩,在上述图片信息获取单元302与像素查找单元303之间,还可以包括有透明 度设定单元3023,用于将所述图片的背景颜色的透明度设为0,此时,所述预设条件为透明 度不为0。本发明快速生成矢量图的装置获取图片信息、查找符合预设条件的像素、生成路 径对象以及绘制路径对象的具体实现方式,可如上述本发明的快速生成矢量图的方法相 同,在此不予赘述。此外,在上述对本发明的具体实施例的说明中,是以将预设条件设置为透明度不 为0、将背景颜色的透明度设为0、通过判断像素点的透明度是否为0来判断像素是否为符 合预设条件的像素,基于此,在实际应用中,也可以是在获得背景部分的透明度后,通过判 断当前像素的透明度与背景部分的透明度的差值是否为0来进行判定,若差值为0,在说明 是背景部分的像素点,若差值不为0,则可以判定是背景部分的像素点,只要能够将具体图 形的像素与背景部分的像素区分开来即可,在此不予多加赘述。以上所述的本发明实施方式,仅仅是对本发明的最佳实施例的详细说明,并不构 成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改 进等,均应包含在本发明的权利要求保护范围之内。
权利要求
1.一种快速生成矢量图的方法,其特征在于,包括步骤导入已画好图形的图片,获取所述图片的数据信息,所述数据信息包括该图片的图片 大小;扫描查找所述图片大小区域内的符合预设条件的像素;根据所述符合预设条件的像素的位置信息生成路径对象,并绘制生成的该路径对象。
2.根据权利要求1所述的快速生成矢量图的方法,其特征在于,所述图片为PNG格式图 片,所述预设条件为透明度不为0。
3.根据权利要求1所述的快速生成矢量图的方法,其特征在于在扫描查找所述图片大小区域内的符合预设条件的像素之前,还包括步骤将所述图 片的背景颜色的透明度设为0 ; 所述预设条件为透明度不为0。
4.根据权利要求1或2或3所述的快速生成矢量图的方法,其特征在于根据获取的 图片指针110^^!11即通过函数GetObject获取所述数据信息,所述图片大小包括图片宽度、 图片高度。
5.根据权利要求1或2或3所述的快速生成矢量图的方法,其特征在于,所述像素值包 括透明度值、颜色值。
6.根据权利要求1或2或3所述的快速生成矢量图的方法,其特征在于 所述根据保存的位置信息生成路径对象的方式包括创建一个路径 GraphicsPath,命名为 m_bornpath ; 采用AddEllipse方式将保存的坐标信息加入到该路gm_b0rnpath中; 根据路径m_bornpath通过函数GetBoimds函数获取路径的外围矩形,并提供选择、移 动、旋转等应用; 和/或在绘制生成的该路径对象时,具体包括将颜色值保存到该对象中,根据获取的对象的颜色值、初始笔宽创建笔Pen ; 根据所述笔Pen采用Drawlmage将路径绘制在屏幕上。
7.一种快速生成矢量图的装置,其特征在于,包括 图片导入单元,用于导入已画好图形的图片;图片信息获取单元,用于获取所述图片的数据信息,所述数据信息包括该图片的图片 大小;像素查找单元,用于扫描查找所述图片大小区域内的符合预设条件的像素; 路径对象生成单元,用于根据所述符合预设条件的像素的位置信息生成路径对象; 绘制单元,用于绘制生成的所述路径对象。
8.根据权利要求7所述的快速生成矢量图的装置,其特征在于,所述图片为PNG格式图 片,所述预设条件为透明度不为0。
9.根据权利要求7所述的快速生成矢量图的装置,其特征在于,还包括透明度设定单 元,用于将所述图片的背景颜色的透明度设为0 ;所述预设条件为透明度不为0。
10.根据权利要求7或8或9所述的快速生成矢量图的装置,其特征在于,所述像素值包括透明度值、颜色值。
全文摘要
快速生成矢量图的方法及装置,该方法包括步骤导入已画好图形的图片,获取所述图片的数据信息,所述数据信息包括该图片的图片大小;扫描查找所述图片大小区域内的符合预设条件的像素;根据所述符合预设条件的像素的位置信息生成路径对象,并绘制生成的该路径对象。本发明方案是通过导入已绘制好的图片,通过查找出该图片区域中符合预设条件的像素,并根据这些像素的位置信息来生成路径对象,然后绘制这些生成的路径对象,从而生成与该绘制好的图片对应的矢量图,这种矢量图的生成方式,可以无需专业的绘制人员来绘制,只需导入已绘制好的图片即可生成与其对应的矢量图,无需专业的矢量图绘制经验,矢量图的生成速度快,且工作量小,成本低。
文档编号G06T11/00GK102054280SQ20101056467
公开日2011年5月11日 申请日期2010年11月29日 优先权日2010年11月29日
发明者陈先志 申请人:广东威创视讯科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1