一种颜色获取方法及装置的制造方法_2

文档序号:9865012阅读:来源:国知局
序、系统或装置中,其执行主体可以是安装有WPF的Windows设备,如图1所示,
[0057]步骤SlOl,在使用WPF中的目标显示控件显示目标颜色背景图像时,获取当前移动点在目标颜色背景图像中的第一当前坐标;
[0058]目标显示控件可以是Image控件,目标颜色背景图像包含了各种可供选择的颜色,图像中不同区域的颜色会有所不同,且当前移动点可以是鼠标、触摸笔、画笔等设备与该目标颜色背景图像相接触的点,也可以是用户指尖与该目标颜色背景图像的接触点。
[0059]步骤S102,获取使用目标显示控件显示目标颜色背景图像时,第一当前坐标处的颜色;
[0060]由于目标颜色背景图像中不同位置对应的颜色可能有所不同,因而,在获取到使用该目标显示控件显示该目标颜色背景图像时,当前移动点在该目标颜色背景图像的第一当前坐标之后,可以对该第一当前坐标处的图像进行识别,以自动识别出该第一当前坐标处的颜色。
[0061 ]步骤S103,将颜色进行保存,确定颜色为当前移动点的选中颜色。
[0062]通过将该第一当前坐标处的颜色进行保存,并作为该当前移动点的选中颜色,可以实现将该当前移动点移动位置之处的颜色(即该当前移动点的选中颜色)自动作为用户选中的颜色,从而在WPF中方便地实现调色板颜色的选取功能。
[0063]如图2所示,在一个实施例中,在步骤SlOl之前,方法还包括:
[0064]步骤S201,获取包含多种颜色的预设颜色背景图像;
[0065]步骤S202,为目标显示控件设置目标显示属性,以对预设颜色背景图像的显示属性进行调整,得到目标颜色背景图像,其中,显示属性包括:预设颜色背景图像的尺寸大小、形状中的一项或多项。
[0066]在获取该第一当前坐标之前,目标显示控件中最初显示的图像通常不是目标颜色背景图像,而是包含多种颜色的一张正方形或长方形的预设颜色背景图像,而为了使目标显示控件显示出的图像即该目标颜色背景图像更加美观,可以为该目标显示控件设置目标显示属性,具体过程如下:
[0067]当该目标显示控件为Image控件时,可以将Image控件中的目标显示属性即Clip属性(其中,Clip属性允许规定元素的可见尺寸,以及元素被裁剪和显示的形状)设置为ElIipseGeometry对象,其中,EllipseGeometry对象是用来绘制一个椭圆或者圆形的图形的类,表示圆或椭圆的几何图形,因而,通过将目标显示属性Clip属性的目标显示属性Clip属性设置为EllipseGeometry对象,可以对该预设颜色背景图像的尺寸大小、形状等进行调整,使得目标颜色背景图像的中心点为Image控件的中心点,半径属性RadiusX和RadiusY均为Image控件宽度的1/2,即通过将Clip属性设置为EllipseGeometry对象,使得该目标颜色背景图像是以Image控件的中心点为中心、以Image控件宽度的1/2为半径的圆形颜色背景图像,进而使得使用该目标显示控件显示出的图像更加美观。
[0068]另外,显示第一坐标处的颜色时,可以通过Image控件中的El IipseGeometry对象显示的。
[0069]如图3所示,在一个实施例中,上述步骤S102可被执行为:
[0070]步骤Al,调用Winform;
[0071 ] 步骤A2,在Winf orm中创建目标显示对象,根据目标显示对象的尺寸、目标显示控件的尺寸和第一当前坐标,确定使用目标显示对象显示目标颜色背景图像时,当前移动点在目标颜色背景图像中的第二当前坐标;
[0072]由于目标显示控件Image控件并不能直接获取目标颜色背景图像中的颜色,因而,需要调用Winform,并创建目标显示对象即Bitmap对象(Bitmap为位图文件,扩展名可以是.bmp或者.dib),进而使用该Bitmap对象获取第一坐标处的颜色,另外,由于目标显示对象的尺寸和目标显示控件的尺寸是不同的,因而,目标颜色背景图像中同一位置在目标显示控件中的第一当前坐标和在目标显示对象中的坐标即下文的该第二当前坐标可能是不同的,因而,为了准确地获取当前移动点所在处的第一当前坐标处的颜色,需要根据目标显示对象的尺寸和目标显示控件的尺寸,将该第一当前坐标转换为使用目标显示对象显示该目标颜色背景图像时,该当前移动点在该目标颜色背景图像中的第二当前坐标,具体地,
[0073]第二当前坐标中的X坐标等于第一当前坐标中的X坐标*Bitmap对象宽度/Image控件的显示宽度,同样地,第二当前坐标中的Y坐标等于第一当前坐标中的Y坐标*Bi tmap对象宽度/Imagefe件的显不宽度。
[0074]步骤A3,获取使用目标显示对象显示目标颜色背景图像时,第二当前坐标处的颜色;
[0075]在自动确定出该第二当前坐标之后,可以在使用Bitmap对象显示该目标颜色背景图像时,使用Bitmap对象中的GetPixel获取第二当前坐标处的RGB颜色值,以得到该第二当前坐标处的颜色。
[0076]步骤A4,确定第二当前坐标处的颜色为第一当前坐标的颜色。
[0077]第一当前坐标和第二当前坐标可能是不同的,但第二当前坐标处的颜色却是用户期望选取的第一当前坐标的颜色,因而通过自动确定第二当前坐标处的颜色为第一当前坐标的颜色,可以自动选取用户选择的颜色,避免使用ColorDialog控件来选取颜色,而带来的层显示、灵活性等问题。
[0078]在一个实施例中,上述步骤A3可被执行为:
[0079]通过目标显示对象,获取Winform的第一颜色对象获取到的第二当前坐标处的颜色;
[0080]上述步骤A4可被执行为:
[0081]调用WPF中的第二颜色对象获取第一颜色对象获取的第二当前坐标处的颜色;
[0082]确定第二当前坐标的颜色为第一当前坐标处的颜色。
[0083]由于Winform中颜色值的直接保存对象与WPF中颜色值的直接保存对象不同,SPWinform中颜色值的直接保存对象为System.Drawing.Color对象(即第一颜色对象),WPF中颜色值的直接保存对象为System.Windows.Media.Co1r对象(即第二颜色对象),因而在获取第二当前坐标处的颜色时,可以调用Sy stem.Windows.Media.Color对象中的FromArgb方法将此 Sy stem.Drawing.Co I or 对象保存的颜色值转给 Sy stem.Windows.Media.Co I or 对象保存,从而使WPF方便、快速地获取到目标显示控件中该第一坐标处的颜色,并将System.Windows.Media.Color对象获取到的第一坐标处的颜色赋值给El I ipse对象保存并显不O
[0084]在一个实施例中,方法还包括:
[0085]当当前移动点离开目标颜色背景图像时,确定当前移动点离开目标颜色背景图像时的目标坐标处的颜色为选中颜色。
[0086]在不断获取当前移动点的第一当前坐标处的颜色时,可以使用户不断看到选中颜色,而当该当前移动点离开目标颜色背景图像时,说明用户已确定最终选中颜色,不期望再进行颜色修改,则可以自动确定当前移动点离开目标颜色背景图像时的目标坐标(即鼠标、触摸笔、画笔等设备,或者指尖离开该目标颜色背景图像的位置)处的颜色即为用户最终的选中颜色。
[0087]如图4所示,本发明还提供一种颜色获取装置,包括:
[0088]第一获取模块401,被配置为在使用WPF中的目标显示控件显示目标颜色背景图像时,获取当前移动点在所述目标颜色背景图像中的第一当前坐标;
[0089]第二获取模块402,被配置为获取使用所述目标显示控件显示所述目标颜色背景图像时,所述第一当前坐标处的颜色;
[0090]第一确定模块403,被配置为将所述颜色进行保存,确定所述颜色为所述当前移动点的选中颜色。
[0091]如图5所示,在一个实施例中,所述装置还包括:
[0092]第三获取模块501,被配置为在使用WPF中的目标显示控件显示颜色背景图像时,获取当前移动点在所述颜色背景图像中的第一当前坐标之前,获取包含多种颜色的预设颜色背景图像;
[0093]处理模块502,被配置为为所述目标显示控件设置目标显示属性,以对所述预设颜色背景图像的显示属性进行调整,得到所述目标颜色背景图像,其中,所述显示属性包括:所述预设颜色背景图像的尺寸大小、形状中的一项或多项。
[0094]如图6所示,在一个实施例中,所述第二获取模块402包括:
[0095]调用子模块4021,被配置为调用Winf orm;
[0096]第一确定子模块4022,被配置为在所述Winform中创建目标显示对象,根据所
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1