显示内容的配色方法及装置转让专利

申请号 : CN201510883422.2

文献号 : CN105549928B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李赟

申请人 : 广州阿里巴巴文学信息技术有限公司

摘要 :

本发明公开了一种显示内容的配色方法及装置。其中,该方法包括:根据阅读模式转换指令读取显示内容的当前颜色;按照预定规则将当前颜色处理生成目标颜色,其中,目标颜色的色度与当前颜色的色度保持不变;控制显示内容按照目标颜色进行显示。本发明解决了阅读软件在进行模式转换后,新主题模式的配色方案使显示内容与原版设计差异过大,导致用户阅读体验差的技术问题。

权利要求 :

1.一种显示内容的配色方法,其特征在于,包括:根据阅读模式转换指令读取阅读软件显示内容的当前颜色;

所述显示内容包括文字内容,对所述文字内容的当前颜色进行分量计算,生成所述文字内容的当前亮度、当前色度以及当前饱和度;

按照预定的映射关系根据所述当前亮度得到目标亮度;

读取存储的主题配色模式的颜色的饱和度;

在所述当前饱和度小于所述主题配色模式的颜色的饱和度的情况下,根据所述目标亮度、所述当前色度以及所述主题配色模式的颜色的饱和度生成所述目标颜色,其中,所述目标颜色的色度与所述当前颜色的色度保持不变;

控制所述显示内容按照所述目标颜色进行显示。

2.根据权利要求1所述的方法,其特征在于,预设所述显示内容的原始亮度区间;

读取存储的主题配色模式的亮度区间;

通过线性映射得到所述原始亮度区间与所述配色模式的亮度区间之间的所述映射关系。

3.根据权利要求2所述的方法,其特征在于,在控制所述显示内容按照所述目标颜色进行显示之后,所述方法还包括:建立映射表,用于存储所述当前颜色与所述目标颜色之间的映射关系和/或所述原始亮度区间与所述配色模式的亮度区间之间的所述映射关系。

4.一种显示内容的配色方法,其特征在于,包括:根据阅读模式转换指令读取阅读软件显示内容的当前颜色;

所述显示内容包括图片内容,对所述图片内容的当前颜色进行分量计算,生成所述图片内容的当前亮度、当前色度以及当前饱和度;

按照预定的映射关系根据所述当前亮度得到目标亮度;

在所述图片内容的目标亮度小于所述当前亮度的情况下,根据所述目标亮度、所述当前色度以及所述当前饱和度生成所述目标颜色;

在所述图片内容的目标亮度大于所述当前亮度的情况下,所述目标颜色与所述当前颜色保持不变;

控制所述显示内容按照所述目标颜色进行显示。

5.根据权利要求4所述的显示内容的配色方法,其特征在于,预设所述显示内容的原始亮度区间;

读取存储的主题配色模式的亮度区间;

通过线性映射得到所述原始亮度区间与所述配色模式的亮度区间之间的所述映射关系。

6.根据权利要求5所述的方法,其特征在于,在控制所述显示内容按照所述目标颜色进行显示之后,所述方法还包括:建立映射表,用于存储所述当前颜色与所述目标颜色之间的映射关系和/或所述原始亮度区间与所述配色模式的亮度区间之间的所述映射关系。

7.一种显示内容的配色装置,其特征在于,包括:读取单元,用于根据阅读模式转换指令读取显示内容的当前颜色;

生成单元,用于按照预定规则将所述当前颜色处理生成目标颜色,所述显示内容包括文字内容,其中,所述生成单元包括:第二计算模块,用于对所述文字内容的当前颜色进行分量计算,生成所述文字内容的当前亮度、当前色度以及当前饱和度;

第二映射模块,用于按照预定的映射关系根据所述当前亮度得到目标亮度;

第一读取模块,用于读取存储的主题配色模式的颜色的饱和度;

第二生成模块,用于在所述当前饱和度小于所述主题配色模式的颜色的饱和度的情况下,根据所述目标亮度、所述当前色度以及所述主题配色模式的颜色的饱和度生成所述目标颜色,其中,所述目标颜色的色度与所述当前颜色的色度保持不变;

控制单元,用于控制所述显示内容按照所述目标颜色进行显示。

8.根据权利要7所述的装置,其特征在于,所述装置还包括映射生成单元,其中,所述映射生成单元还包括:预设模块,用于预设所述显示内容的原始亮度区间;

第二读取模块,用于读取存储的配色模式的亮度区间;

映射生成模块,用于通过线性映射得到所述原始亮度区间与所述配色模式的亮度区间之间的所述映射关系。

9.根据权利要求8所述的装置,其特征在于,所述装置还包括:存储单元,用于存储所述当前颜色与所述目标颜色之间的映射关系和/或所述原始亮度区间与所述配色模式的亮度区间之间的所述映射关系。

10.一种显示内容的配色装置,其特征在于,包括:读取单元,用于根据阅读模式转换指令读取显示内容的当前颜色;

生成单元,用于按照预定规则将所述当前颜色处理生成目标颜色,所述显示内容包括图片内容,其中,所述生成单元包括:第三计算模块,用于对所述图片内容的当前颜色进行分量计算,生成所述图片内容的当前亮度、当前色度以及当前饱和度;

第三映射模块,用于按照预定的映射关系根据所述当前亮度得到目标亮度;

第三生成模块,用于在所述图片内容的目标亮度小于所述当前亮度的情况下,根据所述目标亮度、所述当前色度以及所述当前饱和度生成所述目标颜色;

控制模块,用于在所述图片内容的目标亮度大于所述当前亮度的情况下,控制所述目标颜色与所述当前颜色保持不变;

控制单元,用于控制所述显示内容按照所述目标颜色进行显示。

11.根据权利要10所述的装置,其特征在于,所述装置还包括映射生成单元,其中,所述映射生成单元还包括:预设模块,用于预设所述显示内容的原始亮度区间;

第二读取模块,用于读取存储的配色模式的亮度区间;

映射生成模块,用于通过线性映射得到所述原始亮度区间与所述配色模式的亮度区间之间的所述映射关系。

12.根据权利要求11所述的装置,其特征在于,所述装置还包括:存储单元,用于存储所述当前颜色与所述目标颜色之间的映射关系和/或所述原始亮度区间与所述配色模式的亮度区间之间的所述映射关系。

说明书 :

显示内容的配色方法及装置

技术领域

[0001] 本发明涉及计算机领域,具体而言,涉及一种显示内容的配色方法及装置。

背景技术

[0002] 随着移动终端及互联网技术的发展,人们越来越习惯于利用碎片时间在手机上使用阅读软件阅读各种内容。用户在处于不同光线使用阅读软件时,可以选择切换阅读软件中预设的多种阅读主题模式,比如夜间模式,深色背景模式等,在光线较暗的情况下,用户往往选择将阅读模式切换为夜间模式,夜间模式的配色方案通常采用黑灰色或较暗的背景色调,文字等内容前景色亮度高于背景色,但整体颜色亮度比较低,这样有助于保护用户的视力。
[0003] 由于阅读软件界面元素在开发阶段基本是可列举的,在阅读软件的原显示内容为纯文字的内容的情况下,在用户输入转换为新的主题模式的指令之后,现有的阅读软件只需调用存储的新主题模式的配色方案。例如,夜间模式的配色方案为:反色处理或者将文字的颜色统一替换,或者根据内容的类型决定内容在新主题模式下的配色。
[0004] 需要说明的是,用户也会经常使用阅读软件阅读网页、电子杂志、电子相册等图文混排的内容,上述图文混排的内容往往都要求原版展现才能给用户最好的阅读体验,而如果对于上述图文混排的内容仍旧使用上述切换主题模式后的配色方案(例如,夜间模式的配色方案)会存在如下缺点:
[0005] (1)反色处理,采用胶片反色的方式处理图文混排的内容会导致部分文字变色(红色字体变绿色字体),图片经过反色后,可识别性也会变差,经过反色处理之后的显示内容与原显示内容的样式差异过大(尤其是色度会发生变化),影响用户体验。
[0006] (2)颜色替换,即将预定义的一种或几种颜色替换为目标颜色,如将黑色替换为亮灰色,但是,但仅替换部分颜色而其它颜色置之不理会造成不在目标颜色范围内的文字亮暗无法调节,同时,替换颜色之后的显示内容的颜色与原版内容差异过大。
[0007] (3)根据内容的类型决定显示内容在新主题模式下的配色,比如将文字统一替换为亮灰色,链接一律替换为紫色等,这类方法虽然解决了颜色统一问题,但是丢掉了原先内容设计的配色方案设计,在夜间模式下只能保留统一后的颜色,同时图片不做处理,在夜间模式下显得刺眼。
[0008] 针对上述阅读软件在进行模式转换后,新主题模式的配色方案使显示内容与原版设计差异过大,导致用户阅读体验差的问题,目前尚未提出有效的解决方案。

发明内容

[0009] 本发明实施例提供了一种显示内容的配色方法及装置,以至少解决阅读软件在进行模式转换后,新主题模式的配色方案使显示内容与原版设计差异过大,导致用户阅读体验差的技术问题。
[0010] 根据本发明实施例的一个方面,提供了一种显示内容的配色方法,包括:根据阅读模式转换指令读取显示内容的当前颜色;按照预定规则将当前颜色处理生成目标颜色,其中,目标颜色的色度与当前颜色的色度保持不变;控制显示内容按照目标颜色进行显示。
[0011] 根据本发明实施例的另一方面,还提供了一种显示内容的配色装置,包括:读取单元,用于根据阅读模式转换指令读取显示内容的当前颜色;生成单元,用于按照预定规则将当前颜色处理生成目标颜色,其中,目标颜色的色度与当前颜色的色度保持不变;控制单元,用于控制显示内容按照目标颜色进行显示。
[0012] 在本发明实施例中,采用根据阅读模式转换指令读取显示内容的当前颜色;按照预定规则将当前颜色处理生成目标颜色,其中,目标颜色的色度与当前颜色的色度保持不变;控制显示内容按照目标颜色进行显示。实现了提升用户阅读体验的技术效果,进而解决了阅读软件在进行模式转换后,新主题模式的配色方案使显示内容与原版设计差异过大,导致用户阅读体验差的技术问题。

附图说明

[0013] 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0014] 图1是根据本发明实施例的一种显示内容的配色方法的计算机终端的硬件结构框图;
[0015] 图2是根据本发明实施例的一种显示内容的配色方法的流程图;以及[0016] 图3是根据本发明实施例的一种显示内容的配色装置的示意图。

具体实施方式

[0017] 为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0018] 需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0019] 实施例1
[0020] 根据本发明实施例,还提供了一种显示内容的配色方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0021] 本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种显示内容的配色方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
[0022] 存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的显示内容的配色方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的漏洞检测方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0023] 传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
[0024] 在上述运行环境下,本申请提供了如图2所示的显示内容的配色方法。图2是根据本发明实施例一的显示内容的配色方法的流程图,该方法可以包括:
[0025] 步骤S24,根据阅读模式转换指令读取显示内容的当前颜色。
[0026] 在上述步骤S24中,阅读软件在接收到用户输入的阅读模式转换指令之后,可以读取阅读软件的显示界面当前的显示内容的当前颜色值,需要说明的是,上述当前颜色值可以通过现有的RGB→HSL算法计算出当前颜色的HSL分量,即可以通过当前颜色值计算生成显示内容的色度(Hue),饱和度(Saturation)以及亮度(Lightness)的三个值。上述显示内容中可以包含文字内容,图片内容,装饰线等样式。在本方案中,可以分别获取显示内容中的所有样式的当前颜色上述模式转换指令可以用于使阅读软件中的显示内容从当前阅读模式转换为目标阅读模式,该目标阅读模式可以为阅读软件中预存的主题模式,每种主题模式都对应着不同的配色方案,上述目标阅读模式可以为夜间模式,深色背景模式、浅色背景模式,优选地,上述目标阅读模式可以为夜间模式。
[0027] 以用户从当前阅读模式转换夜间模式为例,用户在使用阅读软件阅读网页内容的情况下,如果所处的光线较暗,用户则可以选择阅读软件的界面上的月亮形状的控件,该控件用于控制显示内容从当前模式转换到夜间模式,在用户输入阅读模式转换指令之后,阅读软件自动获取显示内容的当前颜色。
[0028] 需要说明的是,在本方案中,阅读软件可以通过手机终端设备的感光装置自动判断环境的光线,在光线值低于一定阈值之后,阅读软件自动生成上述阅读模式转换指令,即无需用户操作,阅读软件自动转换阅读模式。
[0029] 步骤S26,按照预定规则将当前颜色处理生成目标颜色,其中,目标颜色的色度与所述当前颜色的色度保持不变。
[0030] 步骤S28,控制显示内容按照目标颜色进行显示。
[0031] 在上述步骤S26至S28中,在获取到阅读软件当前的显示内容的当前颜色值之后,可以根据预定规则以上述当前颜色值为参数进行计算,然后生成目标颜色值,需要说明的是,在本方案中,阅读软件在转变夜间模式之后,显示内容的亮度会变暗,但是,显示内容中的各个样式、图片与原版的色度是保持不变的。
[0032] 仍旧以用户从当前阅读模式转换夜间模式为例,阅读软件可以获取当前的显示内容中的文字、图片、边框、修饰线等样式的当前颜色值color,然后根据预定的规则以上述当前颜色值作为参数,生成目标颜色值new color,然后控制显示内容按照目标颜色值进行显示,显示内容的配色模式在转换前值转换后的效果如下:转换后的显示内容在亮度上有所变暗,但是显示内容中各个样式(文字、图片、边框、修饰线)的色度与原版设计保持不变。
[0033] 由此可知,在显示内容转变为夜间模式之后,显示内容中各个样式的亮度有所变暗,但是显示内容中的各个样式、图片的色度与原版设计没有区别。即显示内容中的所有颜色可以在色度保持不变的前提下,改变亮度,既适应了夜间模式对亮度的要求,也改善了用户的浏览体验。
[0034] 本申请上述实施例一公开的方案中,如果用户希望转换阅读模式(例如转换成夜间阅读模式),用户首先向阅读软件输入阅读模式转换指令,然后,阅读软件根据阅读模式转换指令读取阅读软件显示内容的当前颜色,接着,按照预定规则对当前颜色进行处理,生成目标颜色,其中,目标颜色的色度与当前颜色的色度保持不变,最后,阅读软件控制显示内容按照目标颜色进行显示,以转换成夜间模式,容易注意到,由于在转换阅读模式之后,阅读软件的显示内容的亮度发生了变化,但是阅读软件的显示内容的色度与转换阅读模式之前的显示内容保持不变,因此,通过本发明实施例所提供的方案,可以实现在保持色度的前提下,完成显示内容亮度的变化,这样不仅实现了提高用户的浏览体验,克服了现有的转换阅读模式的方案使显示内容的色度与原版差异太大的缺陷,而且,在转换阅读模式的过程中,显示内容中的所有样式(包括图片)通过预定的规则统一实现了颜色的替换(色度不变),也克服了现有技术在新主题模式的配色方案只调整部分显示内容的颜色的缺陷,因此,可以保证生成网页应用的安全性。由此,本申请提供的上述实施例一的方案解决了阅读软件在进行模式转换后,新主题模式的配色方案使显示内容与原版设计差异过大,导致用户阅读体验差的技术问题。
[0035] 在本申请提供的一种可选实施例中,上述显示内容可以包括文字内容,在显示内容为文字内容的情况下,步骤S26,按照预定规则对当前颜色进行处理,生成目标颜色的步骤可以包括:
[0036] 步骤S261,对文字内容的当前颜色进行分量计算,生成文字内容的当前亮度、当前色度以及当前饱和度。
[0037] 在上述步骤S261中,在读取到文字内容的颜色值color之后,可以根据现有的RGB→HSL算法(即上述分量计算)计算出当前颜色值color的HSL分量即文字内容的当前亮度、当前色度以及当前的饱和度。
[0038] 步骤S262,按照预定的映射关系根据当前亮度得到目标亮度。
[0039] 在上述步骤S262中,可以将上述文字内容的当前亮度newL代入预定的映射关系来得到目标亮度newL,上述预定的映射关系可以为一个映射函数,每一个当前亮度值代入映射函数都会得到一个目标亮度,需要说明的是,在从当前模式转换成夜间模式的情况下,上述目标亮度会小于上述文字内容的当前亮度,在从当前模式转换成日间模式的情况下,上述目标亮度会大于上述文字内容的当前亮度。
[0040] 步骤S263,根据目标亮度、当前色度以及当前饱和度生成目标颜色。
[0041] 在上述步骤S263中,在计算得到文字内容的目标亮度之后,可以根据文字内容的目标亮度、文字内容的当前色度以及文字内容的当前饱和度来通过HSL→RGB算法计算出目标颜色值new color,然后将new color作为文字内容的替换颜色。
[0042] 在本申请提供的一种可选实施例中,在显示内容为文字内容的情况下,步骤S26,按照预定规则对当前颜色进行处理,生成目标颜色的步骤可以包括:
[0043] 步骤S264,对文字内容的当前颜色进行分量计算,生成文字内容的当前亮度、当前色度以及当前饱和度。
[0044] 步骤S265,按照预定的映射关系根据当前亮度得到目标亮度。
[0045] 上述步骤S264至步骤S265的方案与上述步骤S261至步骤S262的方案相同。
[0046] 步骤S266,读取存储的主题配色模式的颜色的饱和度。
[0047] 在上述步骤S266中,在获取到文字内容的目标亮度之后,可以在读取阅读软件中存储的主题配色模式的颜色的饱和度,需要说明的是,上述主题配色模式即为用户所选择的转换之后的目标主题模式,在本方案中,可以先获取上述目标主题模式中的前景色的颜色值,然后根据目标主题模式中的前景色的颜色值通过RGB→HSL算法计算得到目标主题模式中的前景色的饱和度。
[0048] 步骤S267,在当前饱和度小于主题配色模式的颜色的饱和度的情况下,根据目标亮度、当前色度以及主题配色模式的颜色的饱和度生成目标颜色。
[0049] 在上述步骤S267中,在本方案中,可以对上述步骤S264中的当前饱和度与上述目标主题模式中的前景色的饱和度进行比较,如果当前饱和度小于目标主题配色模式的前景色的饱和度,那么本方案则使用目标主题配色模式的颜色的目标主题配色模式的前景色的饱和度、目标亮度newL、文字内容的当前色度来计算生成上述目标颜色值new color。
[0050] 需要说明的是,考虑到目标主题模式的前景色可能不是纯黑色或灰色,设计师为了适应不同背景会为前景色增加一个小的偏色,如浅粉色主题文字颜色为略偏粉色的深灰色。因此本方案中增加了上述修正方案,即原内容的饱和度低于目标主题的前景色饱和度时,可以假定这些接近纯黑或纯白的样式特征不显著,应当使显示内容的饱和度接近或等于目标主题模式的前景色的饱和度。
[0051] 在本申请提供的一种可选实施例中,显示内容可以包括图片内容,在显示内容为图片内容的情况下,步骤S26,按照预定规则对当前颜色进行处理,生成目标颜色的步骤可以包括:
[0052] 步骤S268,对图片内容的当前颜色进行分量计算,生成图片内容的当前亮度、当前色度以及当前饱和度。
[0053] 在上述步骤S268中,如果显示内容为图片内容,那么本方案可以读取图片内容中的任意一像素图或者作为独立插图的矢量图,并散列抽取图片中的部分像素点的颜色,进行上述分量计算。需要说明的是,本方案可以通过散列抽取图片中的部分像素点的颜色来计算图片的亮度的平均值avgL作为图片的当前亮度。
[0054] 步骤S269,按照预定的映射关系根据当前亮度得到目标亮度。
[0055] 步骤S2610,在图片内容的目标亮度小于当前亮度的情况下,根据目标亮度、当前色度以及当前饱和度生成目标颜色。
[0056] 在上述步骤S269至步骤S2610中,可以将上述图片内容的当前亮度代入上述映射函数,以得到图片的目标亮度,如果图片的目标亮度小于图片的当前亮度avgL的情况下,则说明转换后的阅读模式为夜间模式或者为深色背景的模式,那么则根据目标亮度、当前色度以及当前饱和度生成目标颜色,在保持图片色度不变的情况下适当降低图片的亮度,以符合夜间阅读模式的要求。
[0057] 步骤S2611,在图片内容的目标亮度大于当前亮度的情况下,目标颜色与当前颜色保持不变。
[0058] 在上述步骤S2611中,如果图片内容的目标亮度大于当前亮度avgL,则说明,转换后的阅读模式为浅色模式或者是日间模式,在本方案中,考虑到用户体验,在浅色背景的模式下,图片的亮度不宜做调整,因此,在新的主题配色模式之下,图片的颜色与转换前保持不变。
[0059] 需要说明的是,如果手机终端的运行速率较慢,本方案中涉及图片的颜色变换可以直接按照目标主题模式进行转换,不必进行上述散列抽样计算。
[0060] 在本申请提供的一种可选实施例中,可以通过如下步骤来设置上述映射关系:
[0061] 步骤S1:预设显示内容的原始亮度区间。
[0062] 在上述步骤S1中,本方案可以预设一个原始亮度区间,优选地,可以预设显示内容为白底黑字,显示内容的前景色的亮度值srcFL可以预设为0.0,显示内容的背景色亮度值可以预设为1.0,则上述原始亮度区间[srcFL,srcBL]的值可以预设为[0.0,1,0]。
[0063] 步骤S2:读取存储的配色模式的亮度区间。
[0064] 在上述步骤S2中,可以读取阅读软件所存储的配色模式的亮度区间,上述配色模式可以为目标主题模式的亮度区间,在本方案中,可以读取目标主题模式的前景色、背景色或平铺背景图片,并计算上述目标主题模式的前景色的亮度值与目标主题模式的背景色的亮度值,阅读软件存储的配色模式的亮度区间则为[dstFL,dstBL],优选地,[dstFL,dstBL]的值可以为[0.625,0]。
[0065] 需要说明的是,如果目标主题模式包括平铺的背景图片,在本方案中,则散列抽取图片的部分像素点的颜色并计算多个像素点颜色平均值作为背景图片的背景色。
[0066] 步骤S3:通过线性映射得到原始亮度区间与配色模式的亮度区间之间的映射关系。
[0067] 在上述步骤S3中,可以采用线性映射,通过原始亮度区间[srcFL,srcBL]与配色模式的亮度区间[dstFL,dstBL]的值得到一个映射关系(映射函数),优选地,[0.0,1,0]与[0.625,0]采用线性映射可以得到一个映射函数f(x)=0.625*(1-x)。需要说明的是,通过上述映射,原文中的接近黑色(亮度接近0)的内容(如大部分文字),通过映射后亮度值将接近0.625,而原文中接近白色的文字或线条,在映射后将接近黑色。原文中深红色背景中的黄色文字在映射后分别加量和减暗,不仅保持了原有的色度,原有的前背景亮度差仍然得以体现。
[0068] 在本申请提供的一种可选实施例中,在步骤S28,控制显示内容按照目标颜色进行显示在控制显示内容按照目标颜色进行显示之后,本实施例提供的方法还可以包括:
[0069] 步骤S29,建立映射表,用于存储当前颜色与目标颜色之间的映射关系和/或原始亮度区间与配色模式的亮度区间之间的映射关系。
[0070] 在上述步骤S29中,对于同一颜色,在统一主题下映射为唯一的颜色值,因此上述映射表可以对变换结果进行缓存,减少重复计算。
[0071] 下面在阅读软件SQ为例,在实际的应用场景下描述本方案:
[0072] SQ小说是一款以书旗网海量小说为基础的在线阅读器。为了获得更好的阅读体验,SQ软件提供了多套日间主题配色方案(含3种深色主题)以及一套夜间主题。SQ软件支持阅读ePub、chm等格式的本地书籍,此类书籍采用Html及CSS描述,可以支持丰富的排版样式描述,并包含图文混排、矢量图、数学公式等复杂样式单元。SQ软件还需要提供PDF等原版原式文档的解析与渲染。SQ软件中可以应用内容与配色模式自适应的方案,在该方案中,用于排版、渲染的引擎Athena可以较好地支持上述图文及复杂排版内容的正确展现,并与多套主题配色方案融合。SQ小说软件中存储的多种主题方案(含黑夜模式)预先提供文字颜色、平铺背景图片。本方案可以将文字颜色作为目标主题的前景颜色,并预先计算和存储了各种主题模式下的前景色亮度、色度及饱和度(HSL)分量,在应用本方案相关算法过程中也不必重复计算。软件的设计师同时给出了与平铺背景图片经过散列点采样后计算的背景色,可以作为目标主题的背景色。
[0073] 基于上述SQ小说的介绍,SQ小说在进行模式转换的方案可以为如下:
[0074] (1)预设原始亮度区间。
[0075] 具体地,由于显示内容可为在线图书、也可以是用户上传的本地书籍,属于非特定内容,所以本方案可以统一预设制作时以白底黑字作为原始参考亮度,因此前景色亮度值srcFL为0.0,背景色亮度值srcBL为1.0,因此内容亮度区间[srcFL,srcBL]为[0.0,1.0];需要说明的是,对于ePub、chm等内容中未指定颜色的文字、纯黑的文字,以及纯文本(TXT)类型的内容,如在线小说,无需执行复杂的计算,直接按照本提案快速处理策略,直接采用主题模式前景色、背景色绘制。
[0076] (2)获取目标主题模式的亮度区间,根据原始亮度区间、目标主题模式的亮度区间计算得到映射函数。
[0077] 具体地,以黑夜模式为例,前景色为较浅的灰色,背景色为黑色,因此目标亮度区间[dstFL,dstBL]为[0.625,0],采用线性映射,可以得到亮度值的映射函数为f(x)=0.625*(1-x);从上述映射函数可以看出,即原文中的接近黑色(亮度接近0)的内容(如大部分文字),通过映射后亮度值将接近0.625,而原文中接近白色的文字或线条,在映射后将接近黑色。原文中深红色背景中的黄色文字在映射后分别加量和减暗,不仅保持了原有的色度,原有的前背景亮度差仍然得以体现。
[0078] (3)获取阅读内容当前的颜色值,并计算当前阅读内容的HSL分量。
[0079] 具体地,本方案可以获取阅读内容中的任一个样式的颜色值color,计算为当前亮度、当前色度及当前饱和度(HSL)分量。
[0080] (4)根据阅读内容的当前颜色值得到阅读内容的目标颜色值,以目标颜色值做作为阅读内容的替代颜色。
[0081] 具体地,本方案可以将通过阅读内容的当前颜色值计算得到的当前亮度值代入上述映射函数,得到映射后的目标亮度newL,并将目标亮度newL结合当前色度及当前饱和度分量,计算新的颜色值new color作为替代颜色,则本方案实现了在色度保持不变的前提下,使阅读内容的亮度与目标配色模式相适应。
[0082] 需要说明的是,本方案应用最多的是对于内容中涉及文字、装饰线、背景色等样式中颜色值的变换。对于ePub、CHM等,颜色定义通常在CSS样式表中描述,并在绘制时使用。考虑到颜色替换不影响排版逻辑,因此替换仅在绘制时执行,并不更改解析到的样式表中的值,更换颜色主题后也无需重新排版。
[0083] 综上,本方案中的阅读软件内容与配色模式自适应的方法,可以很好第解决网页等图文混排内容适应多种配色模式(特别是黑夜模式)的颜色搭配与调整问题,能够较好地保持内容制作者期望的排版内容及背景在色度、明暗对比等方面的搭配,同时适应不同配色方案特别是黑夜模式对于颜色、亮度的调整需求,为用户提供更好的阅读体验。
[0084] 需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
[0085] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
[0086] 实施例2
[0087] 根据本发明实施例,还提供了一种用于实施上述显示内容的配色方法的显示内容的配色装置,如图3所示,该装置包括:
[0088] 读取单元32,用于根据阅读模式转换指令读取显示内容的当前颜色。
[0089] 在上述读取单元32中,阅读软件在接收到用户输入的阅读模式转换指令之后,可以读取阅读软件的显示界面当前的显示内容的当前颜色值,需要说明的是,上述当前颜色值可以通过现有的RGB→HSL算法计算出当前颜色的HSL分量,即可以通过当前颜色值计算生成显示内容的色度(Hue),饱和度(Saturation)以及亮度(Lightness)的三个值。上述显示内容中可以包含文字内容,图片内容,装饰线等样式。在本方案中,可以分别获取显示内容中的所有样式的当前颜色。在本方案中,可以分别获取显示内容中的所有样式的当前颜色上述模式转换指令可以用于使阅读软件中的显示内容从当前阅读模式转换为目标阅读模式,该目标阅读模式可以为阅读软件中预存的主题模式,每种主题模式都对应着不同的配色方案,上述目标阅读模式可以为夜间模式,深色背景模式、浅色背景模式,优选地,上述目标阅读模式可以为夜间模式。
[0090] 以用户从当前阅读模式转换夜间模式为例,用户在使用阅读软件阅读网页内容的情况下,如果所处的光线较暗,用户则可以选择阅读软件的界面上的月亮形状的控件,该控件用于控制显示内容从当前模式转换到夜间模式。在用户输入阅读模式转换指令支护,阅读软件自动获取显示内容的当前颜色。
[0091] 需要说明的是,在本方案中,阅读软件可以通过手机终端设备的感光装置自动判断环境的光线,在光线值低于一定阈值之后,阅读软件自动生成上述阅读模式转换指令,即无需用户操作,阅读软件自动转换阅读模式。
[0092] 生成单元34,用于按照预定规则将所述当前颜色处理生成目标颜色,其中,所述目标颜色的色度与所述当前颜色的色度保持不变。
[0093] 控制单元36,用于控制显示内容按照目标颜色进行显示。
[0094] 在上述生成单元34和控制单元36中,在获取到阅读软件当前的显示内容的当前颜色值之后,可以根据预定规则以上述当前颜色值为参数进行计算,然后生成目标颜色值,需要说明的是,在本方案中,阅读软件在转变夜间模式之后,显示内容的亮度会变暗,但是,显示内容中的各个样式、图片与原版的色度是保持不变的。
[0095] 仍旧以用户从当前阅读模式转换夜间模式为例,阅读软件可以获取当前的显示内容中的文字、图片、边框、修饰线等样式的当前颜色值color,然后根据预定的规则以上述当前颜色值作为参数,生成目标颜色值new color,然后控制显示内容按照目标颜色值进行显示,显示内容的配色模式在转换前值转换后的效果如下:转换后的显示内容在亮度上有所变暗,但是显示内容中各个样式(文字、图片、边框、修饰线)的色度保持不变。
[0096] 由此可知,在显示内容转变为夜间模式之后,显示内容中各个样式的亮度有所变暗,但是显示内容中的各个样式、图片的色度与原版设计没有区别。即显示内容中的所有颜色可以在色度保持不变的前提下,改变亮度,既适应了夜间模式对亮度的要求,也改善了用户的浏览体验。
[0097] 本申请上述实施例二公开的方案中,如果用户希望转换阅读模式(例如转换成夜间阅读模式),用户首先向阅读软件输入阅读模式转换指令,然后,阅读软件根据阅读模式转换指令读取阅读软件显示内容的当前颜色,接着,按照预定规则对当前颜色进行处理,生成目标颜色,其中,目标颜色的色度与当前颜色的色度保持不变,最后,阅读软件控制显示内容按照目标颜色进行显示,以转换成夜间模式,容易注意到,由于在转换阅读模式之后,阅读软件的显示内容的亮度发生了变化,但是阅读软件的显示内容的色度与转换阅读模式之前的显示内容保持不变,因此,通过本发明实施例所提供的方案,可以实现在保持色度的前提下,完成显示内容亮度的变化,这样不仅实现了提高用户的浏览体验,克服了现有的转换阅读模式的方案使显示内容的色度与原版差异太大的缺陷,而且,在转换阅读模式的过程中,显示内容中的所有样式(包括图片)通过预定的规则统一实现了颜色的替换(色度不变),也克服了现有技术在新主题模式的配色方案只调整部分显示内容的颜色的缺陷,因此,可以保证生成网页应用的安全性。由此,本申请提供的上述实施例二的方案解决了阅读软件在进行模式转换后,新主题模式的配色方案使显示内容与原版设计差异过大,导致用户阅读体验差的技术问题。
[0098] 在本申请提供的一种可选实施例中,显示内容包括文字内容,其中,生成单元34可以包括:第一计算模块,用于对文字内容的当前颜色进行分量计算,生成文字内容的当前亮度、当前色度以及当前饱和度;第一映射模块,用于按照预定的映射关系根据当前亮度得到目标亮度;第一生成模块,用于根据目标亮度、当前色度以及当前饱和度生成目标颜色。
[0099] 在本申请提供的一种可选实施例中,显示内容包括文字内容,其中,生成单元34可以包括:第二计算模块,用于对文字内容的当前颜色进行分量计算,生成文字内容的当前亮度、当前色度以及当前饱和度;第二映射模块,用于按照预定的映射关系根据当前亮度得到目标亮度;第一读取模块,用于读取存储的主题配色模式的颜色的饱和度;第二生成模块,用于在当前饱和度小于主题配色模式的颜色的饱和度的情况下,根据目标亮度、当前色度以及主题配色模式的颜色的饱和度生成目标颜色。
[0100] 在本申请提供的一种可选实施例中,显示内容包括图片内容,其中,生成单元34可以包括:第三计算模块,用于对图片内容的当前颜色进行分量计算,生成图片内容的当前亮度、当前色度以及当前饱和度;第三映射模块,用于按照预定的映射关系根据当前亮度得到目标亮度;第三生成模块,用于在图片内容的目标亮度小于当前亮度的情况下,根据目标亮度、当前色度以及当前饱和度生成目标颜色;控制模块,用于在图片内容的目标亮度大于当前亮度的情况下,控制目标颜色与当前颜色保持不变。
[0101] 在本申请提供的一种可选实施例中,上述装置还包括映射生成单元,其中,映射生成单元还包括:预设模块,用于预设显示内容的原始亮度区间;第二读取模块,用于读取存储的配色模式的亮度区间;映射生成模块,用于通过线性映射得到原始亮度区间与配色模式的亮度区间之间的映射关系。
[0102] 在本申请提供的一种可选实施例中,上述装置还可以包括:存储单元,用于存储当前颜色与目标颜色之间的映射关系和/或原始亮度区间与配色模式的亮度区间之间的映射关系。
[0103] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0104] 在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0105] 在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0106] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0107] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0108] 所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0109] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。