发明内容
有鉴于此,本发明实施例提供一种配置图片中文字颜色的方法、装置及电子设备,用于解决现有技术中更换带文字的图片时时需要人工调整图片或文字的颜色,工作效率低且容易出错的问题。
第一方面,本发明实施例提供一种配置图片中文字颜色的方法,包括:
获取图片的色彩信息;
根据所述色彩信息,确定文字颜色;
按照所述文字颜色,在所述图片中显示所述文字。
结合第一方面,在第一方面的第一种实施方式中,所述根据所述色彩信息,确定文字颜色,包括:
计算备选颜色与所述色彩信息之间的颜色对比度;
将所述颜色对比度中大于预定阈值的备选颜色确定为所述文字颜色。
结合第一方面,在第一方面的第二种实施方式中,
所述获取图片的色彩信息,包括:
确定所述图片中所述文字的待输入区域所对应的区域;
计算所述区域的颜色平均值,将计算得到的所述颜色平均值对应的颜色作为所述色彩信息。
结合第一方面,在第一方面的第三种实施方式中,
所述获取图片的色彩信息,包括:
确定所述图片中的所述文字所占据的文字图层;
确定所述文字图层在其下方的第一个图层中所对应的区域;
计算所述区域的颜色平均值,将计算得到的所述颜色平均值对应的颜色作为所述色彩信息。
结合第一方面的第一种实施方式,在第一方面的第四种实施方式中,在根据所述色彩信息,确定文字颜色之前,所述方法还包括:
根据所述文字的字体大小,确定颜色对比度的预定阈值。
第二方面,本发明实施例提供一种配置图片中文字颜色的装置,包括:
获取模块,用于获取图片的色彩信息;
颜色确定模块,用于根据所述色彩信息,确定文字颜色;
显示模块,用于按照所述文字颜色,在所述图片中显示所述文字。
结合第二方面,在第二方面的第一种实施方式中,所述颜色确定模块,包括:
对比度计算子模块,用于计算备选颜色与所述色彩信息之间的颜色对比度;
第一确定子模块,用于将所述对比度计算子模块计算得到的颜色对比度中大于预定阈值的备选颜色确定为所述文字颜色。
结合第二方面,在第二方面的第二种实施方式中,所述获取模块,包括:
第二确定子模块,用于确定所述图片中所述文字的待输入区域所对应的区域;
第一计算子模块,用于计算所述第二确定子模块确定的区域的颜色平均值,将计算得到的所述颜色平均值对应的颜色作为所述色彩信息。
结合第二方面,在第二方面的第三种实施方式中,所述获取模块,包括:
第三确定子模块,用于确定所述图片中的所述文字所占据的文字图层;
第四确定子模块,用于确定所述文字图层在其下方的第一个图层中所对应的区域;
第二计算子模块,用于计算所述第四确定子模块确定的区域的颜色平均值,将计算得到的所述颜色平均值对应的颜色作为所述色彩信息。
结合第二方面的第一种实施方式,在第二方面的第四种实施方式中,所述装置还包括:
阈值确定模块,用于根据所述文字的字体大小,确定颜色对比度的预定阈值。
第三方面,本发明实施例提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实施例所述的配置图片中文字颜色的方法。
本发明实施例提供的一种配置图片中文字颜色的方法、装置及电子设备,通过获取图片的色彩信息,并根据所述色彩信息确定文字颜色并以确定出的文字颜色显示所述文字。整个过程可根据图片的色彩信息实现文字颜色的自动适配,不需要人工干预,能够有效解决人工设计图片和文字颜色配置效率低的,人为疏忽容易造成的图片文字不清晰的问题,使设计人员可以专注于设计图片和文字内容而不是文字颜色这种小事,提高设计人员的工作效率,同时降低图片文字颜色的适配错误率,提供颜色对比度较好的图片和文字。
具体实施方式
下面结合附图对本发明实施例一种配置图片中文字颜色的方法及装置进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一种配置图片中文字颜色的方法流程图,如图1所示,本实施例的方法可以包括:
步骤101、获取图片的色彩信息;
优选地,可以将文字的背景图片的颜色平均值对应的颜色作为所述色彩信息(背景色)。当然,也可以获取文字的背景图片的其他色彩信息,例如在图片中获取预先指定的几种颜色所占区域,然后计算这几种颜色的加权平均值对应的颜色作为所述色彩信息。
步骤102、根据所述色彩信息,确定文字颜色。
本实施例中,根据文字的背景图片的色彩信息,将文字颜色确定为与所述色彩信息有明显肉眼区别的颜色,以便文字能够清晰地显示于背景图片中。
在一可选实施例中,步骤102的实施方法如图2所示,可包括以下步骤:
步骤201、计算备选颜色与所述色彩信息之间的颜色对比度。
优选地,本步骤201可以从备选的颜色系中,按照预定的优先级顺序,计算各备选颜色与所述色彩信息之间的颜色对比度。
进一步地,可以预先设置标准4096种备选颜色,将4096种颜色划分为无彩色系、中性色系、浅色系、深色系、常用色系;其中,无彩色系包括白色、银色、灰色、暗灰色、黑色;所述中性色系包括珊瑚红、燃橙色、铜色、赭色、深褐色、碧绿、樱桃色,浅色系包括鲑肉色、桃色、奶油色、米色、薰衣草色、兰花色、粉红色,深色系包括栗色、橙黄色、橄榄色、春绿色、鸭绿色、海军蓝、靛色,4096种颜色中除了无彩色系、中性色系、浅色系、深色系外其余颜色划分为常用色系。将所述无彩色系、中性色系、浅色系、深色系、常用色系的优先权从高到低排列为:无彩色系、中性色系、浅色系、深色系、常用色系,并将同一色系中的多种颜色按照颜色值由高到低的顺序设置优先权,同一色系中颜色值越高的优先权越高,最终得到这4096种备选颜色的优先级顺序。例如按照以下网址提供的4096种颜色计算各种颜色值并确定其优先级顺序:https://zh.wikipedia.org/wiki/%E9%A2%9C%E8%89%B2%E5%88%97%E8%A1%A8#%E4%B8%AD%E6%80%A7%E8%89%B2%E7%B3%BB。
步骤202、将颜色对比度中大于预定阈值的备选颜色确定为所述文字颜色。
本步骤中,将步骤201中计算得到的与所述色彩信息之间的颜色对比度大于预定阈值的备选颜色,确定为所述文字颜色。
优选地,从备选的颜色系中,按照预定的优先级顺序,计算各备选颜色与所述色彩信息之间的颜色对比度,一旦计算出某种备选颜色与所述色彩信息之间的颜色对比度大于预定阈值,则停止计算,将该备选颜色确定为所述文字颜色。
其中,可以按照任一种现有的计算颜色对比度的方法计算备选颜色与色彩信息之间的对比度。例如,若采用RGB值计算颜色对比度,可以根据网址https://contrast-ratio.com/#rgb%2864%2C%2064%2C%2064%29-on-rgb%28131%2C%20170%2C%2085%29提供的接口直接计算两种颜色之间的对比度。
在一可选实施例中,在上述步骤101之前,还可以包括根据所述文字的字体大小,确定颜色对比度的预定阈值的步骤。优选地,当图片中的文字为小型文字时,确定颜色对比度的预定阈值为4.5:1;当所述文字为大型文字时,确定颜色对比度的预定阈值为3.0:1;其中,预先定义所述小型文字为小于18点的标准文字或小于14点的祖粗体文字,所述大型文字为大于18点的标准文字或大于14点的祖粗体文字。
步骤103、按照所述文字颜色,在所述图片中显示所述文字。
本步骤中,若在执行此本方法前图片中已有文字,则直接将所述图片中的文字显示为步骤102中确定的文字颜色;若在执行此本方法前图片中还未输入文字,则在输入文字时,直接按照所述文字颜色在所述图片中显示当前输入的文字。
本实施例,通过获取图片的色彩信息,并根据所述色彩信息确定文字颜色并以确定出的文字颜色显示所述文字。整个过程可根据图片的色彩信息实现文字颜色的自动适配,不需要人工干预,能够有效解决人工设计图片和文字颜色配置效率低的,人为疏忽容易造成的图片文字不清晰的问题,使设计人员可以专注于设计图片和文字内容而不是文字颜色这种小事,提高设计人员的工作效率,同时降低图片文字颜色的适配错误率,提供颜色对比度较好的图片和文字。
下面采用两个具体的实施例,对本发明方法实施例的技术方案进行详细说明。
图3为本发明提供的配置图片中文字颜色的方法实施例一的流程图,如图3所示,本实施例的方法可以包括:
步骤301、确定所述图片中所述文字的待输入区域所对应的区域;
本实施例中,当用户需要在背景图片中输入文字时,通常会先通过例如文本框或其他方式确定待输入文字的区域,此步骤中确定待输入文字的区域在所述图片中所对应的背景区域。
步骤302、计算所述区域的颜色平均值,将计算得到的所述颜色平均值对应的颜色作为所述色彩信息;
其中,对于步骤301确定出的区域,可以以像素为单位,先获取该区域内每个像素的颜色信息,然后将该区域内所有像素的颜色信息求平均值后得到所述区域的颜色平均值。可选地,也可以预先定义单位区域大小,例如定义1mm*1mm为一个单位区域,然后将所述背景区域以其一个边角(例如左下角或左上角或右下角或右上角)为起点,以1mm*1mm为一个单位区域,将步骤301确定的区域划分为若干个单位区域,对于步骤301确定的区域边缘不能划分得到一个完成单位区域的部位,将其四舍五入或忽略不计,然后获取每个单位区域的颜色值,最后将背景区域内的所有单位区域的颜色值求平均值得到所述区域的颜色平均值。
步骤303、根据所述色彩信息,确定文字颜色;
本实施例中,步骤303的具体实施方法和上述步骤102类似,此处不再赘述。
步骤304、按照所述文字颜色,在所述图片中显示所述文字。
本实施例中,确定出文字颜色后,用户在输入文字时,直接按照所述文字颜色在所述图片中显示当前输入的文字,例如,用户每输入一个文字,系统自动以所述文字颜色在图片中显示该文字,不再需要用户为输入的文字配置颜色。
图4为本发明提供的配置图片中文字颜色的方法实施例二的流程图,如图4所示,本实施例的方法可以包括:
步骤401、确定所述图片中的所述文字所占据的文字图层;
本实施例是针对已经包含文字的图片,确定图片中的文字颜色的方法。对于包含文字的图片而言,该图片中具有文字图层和图片图层(可能不止一层),文字图层中已经有确定了字号和位置的文字。本实施例中,获取这种图片中的文字所占据的文字图层。
步骤402、确定所述文字图层在其下方的第一个图层中所对应的区域;
本步骤中,确定出所述文字图层中在所述文字图层下方的第一个图层中所对应的区域。具体地,可首先在所述文字图层中,确定所述文字占据的区域,例如,可以通过获取文字的文本框,以文本框所占区域作为所述文字占据的区域。随后,根据文字图层中所述文字占据的区域,确定所述文字在所述文字图层下方的第一个图层中所对应的区域。其中,根据文字图层中的文字占据区域确定其在文字图层下方的第一个图层中对应的背景区域坐标的方法可以通过现有技术实现,此处不再赘述。
步骤403、计算所述区域的颜色平均值,将计算得到的所述颜色平均值对应的颜色作为所述色彩信息;
本实施例中,步骤403的具体实施方法和上述步骤302类似,此处不再赘述。
步骤404、根据所述色彩信息,确定文字颜色;
本实施例中,步骤404的具体实施方法和上述步骤102类似,此处不再赘述。
步骤405、按照所述文字颜色,在所述图片中显示所述文字。
本实施例中,根据图片中已有文字对应的图片区域的色彩信息来确定出能够区别于图片背景区域颜色的文字颜色,并将图片中的文字直接自动显示为确定出的文字颜色,不需要用户手动调节。
在一可选实施例中,本发明计算颜色平均值时采用RGB值计算。
根据实施例二,例如:对于一张在图片下方有一行大于18点的标准文字的150*150像素的图片,采用本发明提供的方法对其操作流程如下:
(1)由于图片中设计的文字为大型文字,确定颜色对比度的预定阈值为3.0:1;
(2)从文字图层中获取到文字框占据的区域横向宽40mm高10mm;在文字图层下的第一个图层中确定出获取到文字框对应的区域的坐标为:x:0,y:40(xoy坐标系以第一图层的左下角为原点,以所述第一图层中图片的宽度方向为x轴,以所述第一图层中图片的高度方向为y轴);
(3)以预先定义的单位区域拆分所述文字框对应的区域,得到3个单位区域,这3个单位区域的顏色分别是:紫色(RGB:139,0,255),綠色(RGB:0,255,0),黃色(RGB:255,255,0);计算这三个单位区域的颜色平均值后得到(RGB:131,170,85),将(RGB:131,170,85)作为所述图片的色彩信息(文字背景色);
(4)从上述实施例中所述的4096种备选颜色中,根据预先设置的优先权,首先以无彩色系作为备选颜色系,依次计算白色(RGB:255,255,255)、银色(RGB:198,198,198)、灰色(RGB:128,128,128)与颜色(RGB:131,170,85)之间的颜色对比度,得到白色、银色、灰色与步骤(3)计算出的色彩信息之间的颜色对比度均小于3.0:1,下一个计算暗灰色(RGB:64,64,64)与色彩信息之间的颜色对比度得到3.87:1,大于阈值3.0:1,因此将暗灰色作为本次图片文字的颜色。
对应于本发明实施例提供的配置图片中文字颜色的方法,本发明实施例还提供配置图片中文字颜色的装置。图5为本发明配置图片中文字颜色的装置实施例一的结构示意图,如图5所示,本实施例的装置可以包括:获取模块11、颜色确定模块12和显示模块13;其中:获取模块11,用于获取图片的色彩信息;颜色确定模块12,用于根据获取模块11获取的所述色彩信息,确定文字颜色;显示模块13,用于按照颜色确定模块12确定出的文字颜色,在所述图片中显示所述文字。
本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图6为本发明配置图片中文字颜色的装置实施例二的结构示意图,如图6所示,本实施例的装置在图5所示装置结构的基础上,进一步地,颜色确定模块12可以包括:对比度计算子模块121和第一确定子模块122;其中,对比度计算子模块121,用于计算备选颜色与所述色彩信息之间的颜色对比度;第一确定子模块122,用于将对比度计算子模块121计算得到的颜色对比度中大于预定阈值的备选颜色确定为所述文字颜色。
本实施例的装置,可以用于执行图1和图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图7为本发明配置图片中文字颜色的装置实施例三的结构示意图,如图7所示,本实施例的装置在图5所示装置结构的基础上,进一步地,获取模块11可以包括:第二确定子模块111和第一计算子模块112;其中,第二确定子模块111,用于确定所述图片中所述文字的待输入区域所对应的区域;第一计算子模块112,用于计算第二确定子模块111确定的区域的颜色平均值,将计算得到的所述颜色平均值对应的颜色作为所述色彩信息。
本实施例的装置,可以用于执行图3所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图8为本发明配置图片中文字颜色的装置实施例四的结构示意图,如图8所示,本实施例的装置在图5所示装置结构的基础上,进一步地,获取模块11可以包括:第三确定子模块113、第四确定子模块114和第二计算子模块115;其中,第三确定子模块113,用于确定所述图片中的所述文字所占据的文字图层;第四确定子模块114,用于确定第三确定子模块113确定出的所述文字图层在其下方的第一个图层中所对应的区域;第二计算子模块115,用于计算第四确定子模块114确定的区域的颜色平均值,将计算得到的所述颜色平均值对应的颜色作为所述色彩信息。
本实施例的装置,可以用于执行图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图9为本发明配置图片中文字颜色的装置实施例五的结构示意图,如图9所示,本实施例的装置在图6所示装置结构的基础上,进一步地,还可包括:阈值确定模块14,用于根据所述文字的字体大小,确定颜色对比度的预定阈值,以供第一确定子模块122在确定文字颜色时使用。
对应于本发明实施例提供的配置图片中文字颜色的方法,本发明实施例还提供一种电子设备,图10为本发明电子设备一个实施例的结构示意图,可以实现本发明图1所示实施例的流程,如图10所示,上述电子设备可以包括:壳体21、处理器22、存储器23、电路板24和电源电路25,其中,电路板24安置在壳体21围成的空间内部,处理器22和存储器23设置在电路板24上;电源电路25,用于为上述电子设备的各个电路或器件供电;存储器23用于存储可执行程序代码;处理器22通过读取存储器23中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实施例的配置图片中文字颜色的方法。
上述电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放模块(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子设备。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时用于实现前述任一实施例的配置图片中文字颜色的方法步骤。
本发明实施例还提供了一种应用程序,用于执行前述任一实施方式的配置图片中文字颜色的方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。