CN103577030B - 浏览器窗口界面展现方法及系统 - Google Patents
浏览器窗口界面展现方法及系统 Download PDFInfo
- Publication number
- CN103577030B CN103577030B CN201210265515.5A CN201210265515A CN103577030B CN 103577030 B CN103577030 B CN 103577030B CN 201210265515 A CN201210265515 A CN 201210265515A CN 103577030 B CN103577030 B CN 103577030B
- Authority
- CN
- China
- Prior art keywords
- background
- theme
- picture
- drawn
- browser
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了浏览器窗口界面展现方法及系统,其中,所述方法包括:获取浏览器窗口中第一展现区域的背景配置信息;根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置;根据配置的结果绘制所述第二展现区域的背景。通过本发明,能够使得浏览器窗口的不同展现区域的背景可与同一背景相关。
Description
技术领域
本发明涉及浏览器技术领域,特别是涉及浏览器窗口界面展现方法及系统。
背景技术
浏览器是人们浏览各种网页时必不可少的工具。根据展现区功能的不同,浏览器窗口一般可以分为两部分,其中一部分通常可以称为主界面,用于展现浏览器提供的各种工具栏、地址栏、标签栏等对象,另一部分通常可以称为网页界面,用于展现网页的具体内容。
目前很多的浏览器都提供了设置浏览器主题背景的功能,通过选择不同的主题背景对浏览器进行配置,就可以改变浏览器窗口的外观,使其具有个性化特点。
但是在传统的浏览器技术中,一般只有浏览器的主界面的背景是可以由用户根据浏览器提供的功能入口进行配置的,而网页界面的背景一般是取决于网页自身的CSS(Cascading Style Sheet,级联样式表)样式等页面配置。因此,浏览器的主题背景一般只能展现在主界面中,而无法展现到浏览器的网页界面中。例如,如图1-1所示,将浏览器的主题背景选择为“西瓜皮”,此时,主界面区域的背景显示为名称为“西瓜皮”的图片;如图1-2所示,将浏览器主题背景选择为“玫瑰”时,主界面区域的背景变为名称为“玫瑰”的图片;但对比图1-1与图1-2可以发现,两者的网页界面区域的背景并不会发生变化,始终显示为网页制作者定义的原有样式。
发明内容
本发明提供了浏览器窗口界面展现方法及系统,能够使得浏览器窗口的不同展现区域的背景可与同一背景相关。
本发明提供了如下方案:
一种浏览器窗口界面展现方法,包括:
获取浏览器窗口中第一展现区域的背景配置信息;
根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置;
根据配置的结果绘制所述第二展现区域的背景。
可选的,所述获取浏览器窗口中第一展现区域的背景配置信息包括:
获取浏览器主界面区域的主题背景配置信息;
所述根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置包括:
在需要展现指定网页时,根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
所述根据配置的结果绘制所述第二展现区域的背景包括:
基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制。
可选的,还包括:
向所述指定网页中注入预置的JS脚本;
接收到所述JS脚本的获取浏览器的主题背景配置信息的请求时,将所述浏览器的主题背景配置信息发送给所述JS脚本;
所述根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置包括:
通过所述JS脚本根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
所述基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制包括:
通过所述JS脚本基于重新配置的所述指定网页的背景信息,对所述指定网页的级联样式表进行修改;
调用浏览器内核对所述指定网页进行渲染及绘制。
可选的,还包括:
对浏览器内核渲染网页过程中调用的关键函数进行监控;
当所述关键函数被调用时,将所述关键函数替换为预置的函数;
所述基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制包括:
以所述重新配置的所述指定网页的背景信息为参数调用所述预置的函数,对所述指定网页进行渲染及绘制。
可选的,还包括:
接收将指定图片作为主题背景图片的请求,将所述指定图片确定为浏览器的主题背景图片;
根据所述主题背景图片的尺寸,确定在主界面中绘制主题背景图片时的绘制方式;
根据所述主题背景图片以及绘制方式更新浏览器的主题背景配置信息;
根据更新后的主题背景配置信息重新绘制浏览器的主界面背景;
根据更新后的主题背景配置信息重新确定当前打开的网页的背景信息;
基于重新确定出的网页的背景信息,对网页进行重新渲染及绘制。
可选的,所述根据更新后的主题背景配置信息重新绘制浏览器的主界面背景后,还包括:
以直接在父窗口上绘图的方式,在主界面中绘制对象操作区域;
接收操作系统发送的用户操作消息,所述用户操作消息中包括操作焦点的当前位置以及当前用户操作的类型;
判断所述操作焦点的当前位置是否位于某对象的操作区域内,如果是,将该对象确定为被操作对象,并根据当前用户操作的类型,运行该类型下该被操作对象的消息处理方法,实现对所述用户操作消息的处理。
可选的,所述获取浏览器的主题背景配置信息包括:
获取浏览器的主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置;
所述根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置包括:
根据所述主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置,确定所述指定网页的背景图片、在网页界面中进行绘制时的绘制方式、以及在网页界面进行绘制时主题背景图片的起始位置;
所述基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制包括:
以所述在网页界面中进行绘制时的绘制方式在所述网页界面中进行网页背景的绘制,其中,绘制的内容从所述在网页界面进行绘制时主题背景图片的起始位置开始。
可选的,所述获取浏览器窗口中第一展现区域的背景配置信息包括:
获取浏览器网页界面区域展现的网页的背景配置信息;
所述根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置包括:
根据所述网页的背景配置信息对浏览器主界面区域的主题背景信息进行重新配置;
所述根据配置的结果绘制所述第二展现区域的背景包括:
基于重新配置的主界面的背景信息,对所述主界面的背景进行绘制。
可选的,所述获取浏览器网页界面区域展现的网页的背景配置信息包括:
获取浏览器网页界面区域的网页背景使用的图片;
所述根据所述网页背景配置信息对浏览器主界面区域的主题背景信息进行重新配置包括:
将所述网页背景使用的图片确定为浏览器的主题背景图片;
根据所述主题背景图片的尺寸,确定在主界面中绘制主题背景图片时的绘制方式;
所述基于重新配置的主界面的背景信息,对所述主界面的背景进行绘制包括:
根据所述绘制方式在所述主界面中绘制所述主题背景图片;
所述方法还包括:
获取在主界面绘制时主题背景图片的结束位置;
根据所述主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置,重新配置网页的背景信息,所述网页的背景信息包括网页界面使用的背景图片、在网页界面进行绘制时的绘制方式、以及在网页界面进行绘制时背景图片的起始位置;
以所述在网页界面进行绘制时的绘制方式在所述网页界面中对网页背景进行重新绘制,其中,绘制的内容从所述在网页界面进行绘制时主题背景图片的起始位置开始。
可选的,根据确定的所述图片的尺寸,确定绘制方式包括:
如果所述确定的所述图片的尺寸小于浏览器窗口的尺寸,则计算所述确定的所述图片的宽高比以及浏览器窗口的宽高比;
如果所述确定的所述图片的宽高比小于浏览器窗口的宽高比,则将绘制方式确定为:以浏览器窗口的高度为基准对所述确定的所述图片进行拉伸后绘制;
如果所述确定的所述图片的宽高比大于浏览器窗口的宽高比,则将绘制方式确定为:以浏览器窗口的宽度为基准对所述确定的所述图片进行拉伸后绘制。
可选的,所述以所述在浏览器的网页界面进行绘制时的绘制方式在所述网页界面中对网页背景进行重新绘制包括:
向网页中注入预置的JS脚本;
接收到所述JS脚本的获取浏览器的主题背景配置信息的请求时,将重新配置的网页的背景信息发送给所述JS脚本;
通过所述JS脚本基于重新配置的网页的背景信息,对网页的级联样式表进行修改;
调用浏览器内核对网页进行重新渲染及绘制。
可选的,所述以所述在浏览器的网页界面进行绘制时的绘制方式在所述网页界面中对网页背景进行重新绘制包括:
触发浏览器内核对网页进行重新渲染,并对浏览器内核渲染网页过程中调用的关键函数进行监控;
当所述关键函数被调用时,将所述关键函数替换为预置的函数;
以重新配置的网页的背景信息为参数调用所述预置的函数,对网页进行重新渲染及绘制。
可选的,如果所述绘制方式为从主题背景图片的原点开始直接绘制,所述获取在浏览器主界面绘制时主题背景图片的结束位置包括:
获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp1;
将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为yp1;
所述确定在网页界面进行绘制时主题背景图片的起始位置包括:
将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,yp1)。
可选的,如果所述主题背景图片的尺寸大于所述浏览器窗口的尺寸,所述绘制方式为居中绘制,所述获取在浏览器主界面绘制时主题背景图片的结束位置包括:
获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp2;
获取在主界面绘制时主题背景图片的起始点位置相对于主题背景图片的坐标为(m,n)
将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为n+yp2;
所述确定在网页界面进行绘制时主题背景图片的起始位置包括:
将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(m,n+yp2)。
可选的,如果所述主题背景图片的尺寸小于所述浏览器窗口的尺寸,所述绘制方式为居中绘制,所述获取在浏览器主界面绘制时主题背景图片的结束位置包括:
获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp2;
获取在主界面绘制时主界面的起始点位置相对于浏览器窗口的坐标(a,b)
将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为yp2-b;
所述确定在网页界面进行绘制时主题背景图片的起始位置包括:
将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,yp2-b)。
可选的,如果所述主题背景图片的尺寸小于所述浏览器窗口的尺寸,所述绘制方式为平铺绘制,所述获取在浏览器主界面绘制时主题背景图片的结束位置包括:
获取绘制到主界面与网页界面的交界线时,当前被绘制的像素点相对于主题背景图片的纵坐标P3;
将在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为P3;
所述确定在网页界面进行绘制时主题背景图片的起始位置包括:
将在网页界面进行绘制时第一行主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,P3);
从绘制第二行主题背景图片起,主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,0)。
一种浏览器窗口界面展现系统,包括:
背景配置信息获取单元,用于获取浏览器窗口中第一展现区域的背景配置信息;
背景配置单元,用于根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置;
背景绘制单元,用于根据配置的结果绘制所述第二展现区域的背景
可选的,所述背景配置信息获取单元包括:
主题背景配置信息获取单元,用于获取浏览器主界面区域的主题背景配置信息;
所述背景配置单元包括:
网页背景配置单元,用于在需要展现指定网页时,根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
所述背景绘制单元包括:
渲染单元,用于基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制。
可选的,还包括:
脚本注入单元,用于向所述指定网页中注入预置的JS脚本;
通信单元,用于接收到所述JS脚本的获取浏览器的主题背景配置信息的请求时,将所述浏览器的主题背景配置信息发送给所述JS脚本;
所述网页背景配置单元具体用于:
通过所述JS脚本根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行配置;
所述渲染单元包括:
网页信息修改子单元,用于通过所述JS脚本基于重新配置的所述指定网页的背景信息,对所述指定网页的级联样式表进行修改;
内核调用子单元,用于调用浏览器内核对所述指定网页进行渲染及绘制。
可选的,还包括:
函数监控单元,用于对浏览器内核渲染网页过程中调用的关键函数进行监控;
函数替换单元,用于当所述关键函数被调用时,将所述关键函数替换为预置的函数;
所述渲染单元具体用于:
以所述重新配置的所述指定网页的背景信息为参数调用所述预置的函数,对所述指定网页进行渲染及绘制。
可选的,还包括:
主题更新请求接收单元,用于接收将指定图片作为主题背景图片的请求,将所述指定图片确定为浏览器的主题背景图片;
绘制方式确定单元,用于根据所述指定图片的尺寸,确定在主界面中绘制主题背景图片时的绘制方式;
主题背景配置更新单元,用于根据所述主题背景图片以及绘制方式更新浏览器的主题背景配置信息;
主界面背景重绘单元,用于根据更新后的主题背景配置信息重新绘制浏览器的主界面背景;
网页背景重新确定单元,用于根据更新后的主题背景配置信息重新确定当前打开的网页的背景信息;
网页重新渲染单元,用于基于重新确定出的网页的背景信息,对网页进行重新渲染及绘制。
可选的,还包括:
对象操作区域绘制单元,用于根据更新后的主题背景配置信息重新绘制浏览器的主界面背景后,以直接在父窗口上绘图的方式,在主界面中绘制对象操作区域;
用户操作消息接收单元,用于接收操作系统发送的用户操作消息,所述用户操作消息中包括操作焦点的当前位置以及当前用户操作的类型;
用户操作消息处理单元,用于判断所述操作焦点的当前位置是否位于某对象的操作区域内,如果是,将该对象确定为被操作对象,并根据当前用户操作的类型,运行该类型下该被操作对象的消息处理方法,实现对所述用户操作消息的处理。
可选的,所述主题背景配置信息获取单元具体用于:
获取浏览器的主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置;
所述网页背景配置单元具体用于:
根据所述主题背景图片、绘制方式以及在浏览器主界面绘制时主题背景图片的结束位置,确定所述指定网页的背景图片、在网页界面中进行绘制时的绘制方式、以及在网页界面进行绘制时主题背景图片的起始位置;
所述渲染单元具体用于:
以所述在网页界面中进行绘制时的绘制方式在所述网页界面中进行网页背景的绘制,其中,绘制的内容从所述在网页界面进行绘制时主题背景图片的起始位置开始。
可选的,所述背景配置信息获取单元包括:
网页背景配置信息获取单元,用于获取浏览器网页界面区域展现的网页的背景配置信息;
所述背景配置单元包括:
主题背景配置单元,用于在需要展现指定网页时,根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
所述背景绘制单元包括:
主界面背景绘制单元,用于基于重新配置的主界面的背景信息,对所述主界面的背景进行绘制。
可选的,所述网页背景配置信息获取单元具体用于:
获取浏览器网页界面区域的网页背景使用的图片;
所述主题背景配置单元包括:
图片确定单元,用于将所述网页背景使用的图片确定为浏览器的主题背景图片;
绘制方式确定单元,用于根据所述主题背景图片的尺寸,确定在主界面中绘制主题背景图片时的绘制方式;
所述主界面背景绘制单元具体用于:根据所述绘制方式在所述主界面中绘制所述主题背景图片;
所述系统还包括:
结束位置获取单元,用于获取在主界面绘制时主题背景图片的结束位置;
网页背景重新配置单元,用于根据所述主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置,重新配置网页的背景信息,所述网页的背景信息包括网页界面使用的背景图片、在网页界面进行绘制时的绘制方式、以及在网页界面进行绘制时背景图片的起始位置;
重新渲染单元,用于以所述在浏览器的网页界面进行绘制时的绘制方式在所述网页界面中对网页背景进行重新绘制,其中,绘制的内容从所述在浏览器的网页界面进行绘制时主题背景图片的起始位置开始。
可选的,所述绘制方式确定单元包括:
计算子单元,用于如果所述确定的所述图片的尺寸小于浏览器窗口的尺寸,则计算所述确定的所述图片的宽高比以及浏览器窗口的宽高比;
第一确定子单元,用于如果所述确定的所述图片的宽高比小于浏览器窗口的宽高比,则将绘制方式确定为:以浏览器窗口的高度为基准对所述指定图片进行拉伸后绘制;
第二确定子单元,用于如果所述确定的所述图片的宽高比大于浏览器窗口的宽高比,则将绘制方式确定为:以浏览器窗口的宽度为基准对所述确定的所述图片进行拉伸后绘制。
可选的,所述重新渲染单元包括:
脚本注入子单元,用于向网页中注入预置的J S脚本;
通信子单元,用于接收到所述JS脚本的获取浏览器的主题背景配置信息的请求时,将重新配置的网页的背景信息发送给所述JS脚本;
修改子单元,用于通过所述JS脚本基于重新配置的网页的背景信息,对网页的级联样式表进行修改;
调用子单元,用于调用浏览器内核对网页进行重新渲染及绘制。
可选的,所述重新渲染单元包括:
监控子单元,用于触发浏览器内核对网页进行重新渲染,并对浏览器内核渲染网页过程中调用的关键函数进行监控;
替换子单元,用于当所述关键函数被调用时,将所述关键函数替换为预置的函数;
参数传入子单元,用于以重新配置的网页的背景信息为参数调用所述预置的函数,对网页进行重新渲染及绘制。
可选的,如果所述绘制方式为从主题背景图片的原点开始直接绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交界线信息获取子单元,用于获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp1;
第一结束位置获取子单元,用于将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为yp1;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第一起始位置获取子单元,用于将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,yp1)。
可选的,如果所述主题背景图片的尺寸大于所述浏览器窗口的尺寸,所述绘制方式为居中绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交界线信息获取子单元,用于获取浏览器的主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp2;
主界面图片起始位置获取子单元,用于获取在主界面绘制时主题背景图片的起始点位置相对于主题背景图片的坐标为(m,n);
第二结束位置获取子单元,用于将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为n+yp2;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第二起始位置获取子单元,用于将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(m,n+yp2)。
可选的,如果所述主题背景图片的尺寸小于所述浏览器窗口的尺寸,所述绘制方式为居中绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交界线信息获取子单元,用于获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp2;
主界面起始位置获取子单元,用于获取在主界面绘制时主界面的起始点位置相对于浏览器窗口的坐标(a,b);
第三结束位置获取子单元,用于将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为yp2-b;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第三起始位置获取子单元,用于将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,yp2-b)。
可选的,如果所述主题背景图片的尺寸小于所述浏览器窗口的尺寸,所述绘制方式为平铺绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交点坐标获取子单元,用于获取绘制到主界面与网页界面的交界线时,当前被绘制的像素点相对于主题背景图片的纵坐标P3;
第四结束位置获取子单元,用于将在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为P3;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第五起始位置获取子单元,用于将在网页界面进行绘制时第一行主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,P3);
第六起始位置获取子单元,用于从绘制第二行主题背景图片起,主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,0)。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
通过本发明,能够根据浏览器窗口中一个展现区域的背景配置信息,来配置另一个展现区域的背景,因此,能够使得浏览器窗口的不同展现区域的背景可与同一背景相关。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1-1、1-2是现有技术中的展现界面示意图;
图2是本发明实施例提供的方法的流程图;
图3是本发明实施例提供的方法中第一展现界面示意图;
图4是本发明实施例提供的方法中图片拉伸示意图;
图5是本发明实施例提供的方法中第二展现界面示意图;
图6是本发明实施例提供的方法中第三展现界面示意图;
图7是本发明实施例提供的系统的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
参见图2,本发明实施例提供的浏览器窗口界面展现方法包括以下步骤:
S201:获取浏览器窗口中第一展现区域的背景配置信息;
S202:根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置;
S103:根据配置的结果绘制所述第二展现区域的背景。
在一种具体实施方式下,第一展现区域可以是指浏览器的主界面区域,第二展现区域可以是指浏览器的网页界面区域,也即,可以将浏览器的主界面区域展现的主题背景图片延伸至浏览器的网页界面区域中。下面对此进行详细地介绍。
步骤一:获取浏览器主界面区域的主题背景配置信息;
浏览器主界面区域的主题背景配置可能是浏览器默认的,也可能是由用户手动指定的,等等,总之,在浏览器程序被启动时,会自动按照主题背景配置情况绘制浏览器的主界面背景。该过程是不依赖网页的访问情况的,也即,只要用户启动了浏览器程序,即使还没有访问某个具体的网页,浏览器也会自动进行绘制主界面背景的操作。之后,就可以获取到浏览器的主题背景配置信息。具体实现时,主题配置信息可能会保存在用户本地的某文件夹下的配置文件中,因此,直接到该文件夹下找到相应的配置文件,即可取出其中的主题背景配置信息,包括主题背景使用的图片等。
需要说明的是,该步骤可以是在用户需要展现某个网页时进行,也即,用户每次发起访问某个网页的请求时,都重新去获取浏览器的主题背景配置信息,例如,当用户通过点击链接或者在地址栏输入网址等方式访问某网页时,就可以去获取浏览器的主题背景配置信息,以便后续用来设置该网页的背景。或者,在另一种方式下,该步骤也可以是在启动浏览器之后就进行,以后用户每次访问网页时,都根据这次获取到的主题背景配置信息来进行网页背景的设置。当然,在这种方式下,还需要对浏览器主题背景的配置情况进行动态地监控,如果发现浏览器的主题背景配置发生了变化,则可以对获取到的主题背景配置信息进行更新。
步骤二:在需要展现指定网页时,根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
在获取到浏览器的主题背景配置信息之后,就可以据此为将要展现的网页确定背景信息。当然,在实际应用中,网页的制作者一般都会为网页设置具体的背景,而在本发明实施例中,为了使得浏览器的主题背景图片延伸到网页界面中,需要根据浏览器的主题背景配置情况重新为网页确定背景信息。例如,如果浏览器的主题背景采用的图片是名称为“西瓜皮”的某幅图片,则可以将网页的背景信息设置为该名称为“西瓜皮”的图片,等等。
步骤三:基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制。以便将所述主题背景延伸至浏览器的网页界面区域。
在确定了网页的背景信息之后,就可以基于该背景信息对网页进行渲染及绘制,这样就可以使得网页的背景与浏览器的主题背景一致,从而实现将浏览器的主题背景从浏览器的主界面延伸到网页界面。
需要说明的是,在一般的情况下,是由浏览器内核对网页进行渲染,而浏览器内核都是根据网页中定义的信息对网页进行渲染,使得网页的背景显示为网页制作者定义的样式。而在本发明实施例中,为了能够实现基于重新确定出的背景信息,对网页进行渲染及绘制,可以通过多种方式来实现,例如,其中一种方式可以是:浏览器可以预先实现一组JS(JavaScript)扩展API(Application Programming Interface,应用程序编程接口),用于与浏览器进行通讯,获取浏览器的一些配置信息,并执行后续的操作;浏览器在接收到访问某网页的请求之后,首先对网页进行加载,加载完毕之后,向网页中注入JS脚本,在执行该JS脚本之后,就会首先调用相应的JS扩展API,向浏览器询问主题背景配置信息,浏览器可以取出相关的信息并发送给JS脚本;然后,JS脚本就可以调用相应的扩展API,执行以下操作:根据浏览器的主题背景配置信息确定网页的背景信息,之后再对网页的CSS进行修改,将CSS中原来对网页背景的定义修改为依据浏览器主题背景重新确定出的网页背景信息,然后再调用浏览器内核对网页进行重新渲染,这样,就可以使得网页具有与浏览器主题背景图片相同的背景。
也就是说,在这种实现方式下,浏览器需要执行的操作包括:在网页加载完毕之后向网页中注入JS脚本,当接收到JS的问询请求时,将浏览器的主题背景配置信息发送给JS脚本;之后的操作,包括为网页重新确定背景信息,调用浏览器内核重新进行渲染等操作,都可以是由JS脚本通过调用扩展API来实现。在整个过程中,需要执行两次渲染操作,并且两次渲染操作都是由浏览器内核(例如IE内核、Webkit内核等)来完成的,其中,第一次渲染是根据网页中原有的背景定义信息渲染的,第二次渲染是根据修改后的背景信息进行渲染的。当然,由于在进行第二次渲染的时候已经完成了网页内容的下载,因此,在调用浏览器内核重新进行渲染时,可以指定浏览器内核从本地缓存中加载,这样就不会再执行从远端服务器重新下载网页内容的操作,而本地缓存中的内容已经被修改,因此,浏览器内核就会按照修改后的信息对网页进行渲染,最终得到的就是一张背景与浏览器主题背景一致的网页。
需要说明的是,以上所述的加载完毕之后,是指已经对一个网页完成了下载、渲染及绘制之后,之所以在此之后再进行JS脚本的注入,然后执行网页背景的重新确定,再重新对网页进行渲染,是因为:注入JS脚本之后,需要对网页的CSS进行修改,而有些网页的结构比较复杂,如果在尚未完全加载完成时就注入JS脚本进行CSS的修改,则渲染的过程可能会出现出错、冲突等风险;例如,在网页加载到某处时,就注入了JS脚本,对某CSS值进行了修改,但该网页在加载到后面某处时,可能也需要对该CSS值进行修改,此时,就会发生冲突,最终影响本发明实施例的实现。因此,为了保证实现的可靠性,一般可以选择在网页加载完毕之后,再执行JS脚本的注入,并对网页进行重新渲染。
另外需要说明的是,由于毕竟之前已经进行了一次渲染及绘制,因此,用户可能会先看到一张具有网页自带背景图片的页面,之后发现网页的背景变成与浏览器主题背景一致,不过在网速等均为理想状态的情况下,用户一般不会感知到这一变化过程。当然,对于一些比较简单的网页,如果网页自身的加载过程不会涉及到对CSS值的反复修改,则也可以在完成网页内容的下载之后就进行JS脚本的注入,而不用等到网页全部加载完成,这样,就不会出现渲染两次的现象,还可以节省资源。
上述实现方式具有实现简单、灵活、可靠性强等优点,并且不会受到不同的浏览器内核版本等因素的影响。当然,在实际应用中,除了上述实现方式之外,还可以有其他的实现方式,例如,还可以对浏览器内核渲染网页过程中调用的关键函数(例如渲染函数、JS引擎调用函数等)进行监控(hook),如果发现某个关键函数被调用,则可以对该函数进行替换,使得实际被调用的函数为为了实现本发明实施例的目的而预置的函数,该预置的函数被调用后,就可以根据浏览器的主题背景配置信息确定出网页的背景,然后直接利用该确定出的背景对网页进行渲染,这样,就可以使得展现出的网页具有浏览器主题背景图片相同的背景。
可见,在上述这种方案中,在整个过程中,只需要对网页执行一次渲染操作,此次渲染操作实际上是由浏览器中预置的函数来执行的,相当于浏览器中预置的函数接管了内核的渲染工作。这种方式的好处在于,不需要对网页执行重复的渲染,当然,在具体实现时,由于浏览器使用的内核的类别、版本等可能会不同,各自对关键函数的定义也会不同,因此,需要根据对应的内核类别及版本对各自的关键函数进行监控。
具体在根据浏览器的主题背景配置确定网页的背景信息的过程中,可以有多种实现方式,例如,一种简单的方式是,只要将网页背景图片设置为浏览器使用的主题背景图片,绘制网页背景时,直接从网页坐标的原点处开始绘制即可。也即,在网页坐标的原点处绘制的像素点相对于背景图片的坐标也是(0,0)。在这种方式下,会出现以下现象,如图3所示(其中仅给出了浏览器窗口中的背景示意图,主界面中的各种控件以及网页界面中的网页内容均未示出):对于某主题背景图片而言,在浏览器的主界面31中是从图片的原点处开始绘制了该图片的上半部分,在网页界面32中又是从图片的原点处开始绘制,只不过在网页界面中绘制的内容多于在主界面中绘制的内容(这是因为,一般情况下,网页界面区域的面积要大于主界面区域的面积)。可见,这样虽然使得网页界面能够以浏览器的主题背景图片为背景,但是整个浏览器窗口的背景却无法体现出统一连贯性,像是两幅图片部分叠加在一起一样,影响显示效果。
为了避免出现上述现象,进一步提高显示效果,本发明实施例还给出了另一种实现方式。在该实现方式中,在获取浏览器的主题背景配置信息时,不仅需要获取主题背景使用的图片,还需要获取绘制主界面背景时的绘制方式,以及绘制时的结束位置,这样,在确定网页的背景信息时,就可以指定按照同样的绘制方式进行绘制,并且指定绘制时的起始点。
其中,所谓的绘制方式是指:根据主题背景图片的尺寸的不同,在主界面中绘制时,浏览器可能会采用不同的绘制方式,一般可以包括直接绘制和平铺绘制两种方式。直接绘制一般都是针对尺寸比较大的图片,例如,如果尺寸已经达到甚至超过浏览器窗口尺寸,可以直接从图片的原点开始直接绘制,或者也可以采用居中的方式直接绘制,此时,如果图片尺寸已经超过了浏览器窗口的尺寸,则可以根据图片及浏览器窗口的尺寸比例计算出从图片的哪个像素点开始绘制;如果图片尺寸略小于浏览器窗口,则可以首先对图片进行拉伸,然后再直接绘制。如图4所示,背景图片的尺寸如左侧的“背景图片”所在的矩形框所示,而浏览器窗口的尺寸如右侧的最外部的大矩形框所示(从图中可见,浏览器窗口的尺寸为主界面的尺寸与网页界面的尺寸之和),需要说明的是,拉伸操作是将背景图片的尺寸拉伸成与浏览器窗口的尺寸相同,而不是与主界面的尺寸相同。当然,拉伸的前提一般是图片的尺寸与浏览器窗口的尺寸之间的比例不至于太小,否则会使得拉伸后的图片非常模糊,影响显示效果。平铺绘制就是针对这种尺寸比较小的图片常用的方式,也即绘制多张图片,直到铺满整个目标区域为止,当然,如果目标区域的长/宽并不是图片长/宽的整数倍,则在横向和/或纵向在平铺最后一幅图片时,就会只绘制图片的一部分。
其中,所谓图片的尺寸,是通过图片的宽度、高度值来确定的,图片的宽度、高度与图片本身包含的像素数以及显示屏的分辨率有关,例如,某图片每行1000个像素,一共500行,则该图片由50万个像素组成,如果显示屏的分辨率是每厘米100像素,则该图片在该显示屏上的尺寸是10cm*5cm。浏览器窗口的尺寸在最大化的情况下,一般都等于显示屏的尺寸。本发明实施例中,在比较图片与浏览器窗口的尺寸时,可以在宽度上与高度上分别进行比较,例如,如果图片的宽度小于浏览器的宽度,则无论图片的高度与浏览器的高度之间的关系怎样,图片的尺寸都是小于浏览器窗口的尺寸;或者,如果图片的高度小于浏览器的高度,则无论图片的宽度与浏览器的宽度之间的关系怎样,则图片的尺寸小于浏览器窗口的尺寸,等等。
无论是直接绘制还是平铺绘制,都可能出现在主界面中仅绘制了主题背景图片的一部分的情况,也即,在主界面中绘制时会存在结束位置的概念。其中,所谓的在主界面绘制时的结束位置是指:对于一幅主题背景图片而言,在主界面中绘制时,可能只绘制了该图片的一部分,该结束位置就用于表明主界面中已经绘制到了图片的什么位置,这样,在网页界面中绘制网页背景时,从该位置开始往后绘制,这样就可以保证图片在显示上的统一连贯性。其中,在主界面中绘制时的结束位置或者在网页页面中绘制时的起始位置,可以用其相对于主题背景图片的坐标来表示。其中,相对于主题背景图片的坐标是指,以图片中的某一点(例如左上角等)为原点建立坐标系,图片中的像素点在该坐标系中的坐标。
具体实现时,为了获取在主界面中绘制时主题背景图片的结束位置,可以首先确定浏览器的主界面与网页界面之间的分界线的位置,根据该位置来确定在主界面中绘制时主题背景图片的结束位置。其中,在确定上述分界线的位置时,由于浏览器中定义有界面信息,包括在默认情况下,主界面的高度等;虽然浏览器一般允许用户手动修改主界面中显示的信息,并且用户在增加或者减少在主界面中显示的信息时,主界面的高度可能会发生变化,但是变化后的具体高度值也是由浏览器定义的,并且浏览器会对变化后的情况进行记录。因此,只要询问浏览器或者查询浏览器的配置信息,就可以获取到前述分界线的位置。当然,由于浏览器对其窗口内部的主界面进行定义时,具体的数值都是在以浏览器窗口的左上角为原点建立的坐标系中定义的,因此,获取到的分界线的位置一般是用分界线相对于浏览器窗口的坐标来表示的。另外,对应不同的绘制方式,在获取到分界线的位置之后,如何获取在主界面中绘制时主题背景图片的结束位置略有不同,下面分别进行介绍。
对于直接绘制的方式,如果主题背景图片的尺寸刚好等于浏览器窗口的尺寸,或者经过拉伸后等于浏览器窗口的尺寸,则在主界面中绘制时,一般都是直接从图片或拉伸后的图片的原点(后续简称图片的原点)开始绘制,因此,在主界面中绘制时,浏览器窗口的坐标原点与主题背景图片的坐标原点重合,进而,主题背景图片的结束位置相对于主题背景图片的坐标,与分界线相对于浏览器窗口的坐标是相关的,因此,就可以根据分界线相对于浏览器窗口的坐标,确定在主界面中绘制时的主题背景图片的结束位置相对于主题背景图片的坐标。例如,参见图5,其中,最外面的矩形框代表浏览器窗口,该窗口的左上角P1点,就是浏览器窗口坐标系的原点,由于主题背景图片也是从图片的原点开始绘制的,因此,P1点的位置其实也是图片坐标系的原点。51处代表浏览器窗口的主界面与网页界面之间的分界线,P2点是该分界线的右端点,假设P2点相对于浏览器窗口的坐标系为(xP2,yP2),则在浏览器窗口坐标系中,该分界线可以用y=yP2来表示,相应的,在主题背景图片坐标系中,该图片绘制的结束位置,也是在y=yP2处,这样,就确定了该图片在主界面中绘制时的结束位置。进一步地,就可以确定出在网页界面中绘制时的起始位置为相对于主题背景图片的(0,yP2)处。在网页界面中绘制网页背景时,又会以网页界面的左上角P3为原点建立坐标系,绘制的目标位置会从P3点开始,绘制的内容是从主题背景图片的(0,yP2)处开始,这样,就可以使得浏览器窗口中最终呈现出的背景是一幅完整的图片。
当然,如前文所述,在直接绘制时,如果主题背景图片的尺寸大于浏览器窗口的尺寸,还可能会采取居中绘制的绘制方式,此时,在浏览器窗口的原点处绘制的像素点可能并不是主题背景图片的原点,而是相对于主题背景图片的(m,n)处(假设该点称为在主界面中绘制时主题背景图片的起始点)。此时,就可以首先根据分界线51的位置以及在主界面中绘制时主题背景图片的起始点位置,计算出主界面中绘制时主题背景图片的结束位置相对于主题背景图片的坐标。例如,图5中的P2点是分界线的右端点,也是在主界面中绘制时主题背景图片的结束点,则该点相对于主题背景图片的纵坐标为n+yP2,因此,在网页界面中绘制时主题背景图片的起始点坐标为(m,n+yP2)。
另外,如果主题背景图片的尺寸小于浏览器窗口的尺寸,也可以采取居中绘制的绘制方式,此时,可能并不是从浏览器窗口的原点处开始绘制,例如,可能是从浏览器窗口的(a,b)处(假设该点称为在主界面中绘制时的主界面起始点)开始绘制,但对于背景图片而言,是从背景图片的原点开始绘制。此时,就可以首先根据分界线的位置以及在主界面中绘制时主界面的起始点位置,计算出主界面中绘制时主题背景图片的结束位置相对于主题背景图片的坐标。例如,P2点是分界线的右端点,该点相对于浏览器窗口的坐标为(xP2,yP2),则在主界面绘制时的主题背景图片结束位置相对于主题背景图片的纵坐标为yP2-b,因此,在网页界面中绘制时主题背景图片的起始点坐标为(0,yP2-b)。
对于平铺绘制的方式,需要在主界面中平铺多幅图片,平铺操作的流程一般都是按照从上到下从左到右的顺序一张一张地平铺绘制,因此,在绘制主界面背景时,会首先从浏览器窗口的原点处开始平铺绘制,如果在绘制第一张图片时还没到与网页界面的交界线处,则在水平方向上还会再另起一行开始绘制,以此类推。但一般总会有一张图片,在绘制到某一处时,发现与前述交界线相交了,也即绘制到了主界面与网页界面的交界线处,此时,在纵向就会停止绘制(当然,在横向上还是要铺满主界面),同时,可以记录下与交界线相交的像素点相对于主题背景图片的纵坐标,该纵坐标就可以作为在主界面中绘制时主题背景图片的结束点位置信息,进而确定出在网页界面中平铺绘制第一行图片时,主题背景图片的起始点位置。例如,在图6中,虚线的矩形框内为单个的主题背景图片(图中仅示出两个),假设主界面与网页界面之间的交界线位于61处,可见,在主界面中进行平铺时,第一行图片并未与交界线61相交,因此,在完成第一行之后可以继续平铺第二行,此时,绘制到P3点处时,发现与交界线相交了,于是停止纵向的绘制,并记录下P3点相对于主题背景图片的纵坐标yP3,如图6所示,yP3的值是在以P2点为原点建立的坐标系中确定出,也即从P2点到P3点之间的距离。在主界面中绘制时,主题背景图片的结束位置就在y=yP3处,因此,在网页界面中平铺第一行主题背景图片时,就从每个主题背景图片的(0,yP3)处开始绘制,第一行平铺结束之后,从第二行开始,又都是从每个主题背景图片的原点(0,0)处开始绘制,最终呈现的浏览器窗口背景就可以如图6所示。
总之,在本发明实施例中,能够根据浏览器主题背景配置信息确定出网页的背景信息,并且根据新确定出的网页背景对网页进行渲染及加载,因此,就能够使得浏览器的主界面背景延伸至网页的背景中,并且不会影响网页内容的正常展现。
当然,毕竟主界面背景的绘制与网页背景的绘制并不是同时完成的,因此,如果不进行一些特殊的处理,则两者的背景之间可能会产生部分叠加的现象,影响显示的效果。为避免产生上述现象,使得整个浏览器窗口中的背景体现出统一连贯性,本发明实施例还可以根据在主界面中绘制时,背景图片的结束位置,来确定出在网页界面中绘制时,背景图片的起始位置,同时,还可以根据在主界面中绘制时的绘制方式确定出在网页界面中的绘制方式,然后以同样的绘制方式,从在主界面中绘制时的结束位置开始,在网页界面中进行背景的绘制,最终就可以体现出整个浏览器窗口中,背景图片的统一连贯性。
在实际应用中,无论是在启动浏览器时打开主页(可以是浏览默认的网址导航页面,或者是用户手动设定的主页等等),还是在浏览器中打开用户指定的网页,都可以作为本发明实施例中的指定网页,并根据浏览器的主题背景图片设定网页界面的背景,然后进行展现。
当然,在各种指定网页中,可能会有如下特殊情况:对于一些通常由个人管理、不定期张贴新的文章、图片、照片等内容的网站(例如博客、个人空间等),这些网站中一般也提供了设定网页背景的功能,用户可以根据自己的喜好设定网页的背景。针对这种情况,本发明实施例还可以进行区别对待,例如,可以首先根据网址中的关键词等信息判断指定网页是否属于由用户管理的网页,如果是,则不再将浏览器主题背景延伸到网页界面中,如果不是,再按照图2中的步骤进行处理。
需要说明的是,在本发明实施例中,各种尺寸及来源的图片,都可以作为浏览器的主题背景图片,在实际应用中,可以为用户提供操作入口,使得用户可以将自己喜爱的图片设置为浏览器主题背景。例如,用户在浏览器网页的过程中,发现网页中的某幅图片很漂亮,想要设置为浏览器主题背景图片,于是,用户就可以将鼠标移动到图片上,点击鼠标右键,在弹出菜单中选择“将图片设置为浏览器主题背景”选项,浏览器在收到该消息之后,就可以从缓存中取出该图片,然后根据该图片的属性选择绘制方式,重新绘制主界面背景,还可以采用相同的图片及绘制方式作为网页界面背景,对网页进行重新渲染,使得网页也具有相同的背景图片。当然,在实际应用中,不一定以右键菜单的方式向用户提供设置主题背景的操作入口,例如,还可以跟踪用户的鼠标位置,当发现鼠标移动到某图片上方时,可以自动弹出浮动窗口、气泡等,提示用户可以将其设置为主题背景,并且用户可以通过点击浮动窗口、气泡的方式,来执行将当前图片设置为浏览器主题背景的操作,等等。当然,还可以允许用户从本地保存的资源中选择用做浏览器主题背景的图片。
作为一种特殊情况,用户还可以将浏览器主题背景设置为:将当前处于焦点的网页背景设置为浏览器主题背景,这样,浏览器的主界面中显示的背景图片会随着不同的网页而自动发生变化。也就是说,前文所述介绍了将浏览器主题背景图片延伸至网页界面的情况,而在另一种具体实施方式下,还可以反过来,将网页的背景图片延伸至浏览器的主界面。具体实现时,该方法可以包括以下步骤:
步骤一:获取浏览器网页界面区域的网页背景配置信息;
可以在下载完成一个网页的页面内容之后,通过向页面中注入脚本等方式,来获取网页的背景图片。
步骤二:根据所述网页背景配置信息对浏览器主界面区域的主题背景信息进行重新配置;
在获取到网页的背景图片之后,就可以将该图片设置为浏览器的主题背景图片。
步骤三:基于重新配置的主界面的背景信息,对所述主界面的背景进行绘制,以便将网页背景延伸至浏览器的主界面区域。
基于网页的背景图片绘制浏览器的主界面背景的过程,与用户在任意选择图片作为浏览器的主题背景图片的过程是相同的,这里不再详述。
当然,在实际应用中,用户可能在浏览器中打开多个网页,并且总是在不同的网页之间进行焦点的切换,此时,浏览器需要不停地进行计算,以不停地改变浏览器主界面的背景图片,显然会占用大量的资源,并且也显得没有必要。因此,还可以设置为:在用户在当前页面中停留了一定的时间之后,再将浏览器主界面背景改变为当前页面的背景。
另外,由于网页界面中原有的背景图片一般都是从网页的原点开始绘制,并且开始绘制的第一个像素点也对应背景图片的原点,而在主界面中绘制该背景图片时,一般同样是从图片的原点开始绘制,因此,如果直接将网页背景图片设置为浏览器主界面的背景图片,可能会不能实现图片的无缝衔接,使得整个浏览器界面看上去像是两幅图片部分叠加在一起一样。因此,在将网页背景图片设置为浏览器背景图片之后,可以再根据该图片在浏览器主界面中的绘制情况(包括在主界面中的绘制方式、图片的结束点等),重新设置网页的背景,该重新设置网页背景的过程,并不是重新选择新的图片,而是选择在网页界面中的绘制方式以及从图片的哪个点开始绘制,以便实现图片在两个区域中的无缝衔接。具体的过程与前文所述的相同的,这里不再详述。
在实际应用中,由于是用户可以任意选择一幅图片作为浏览器的主题背景图片,因此,图片的尺寸就会使多种多样的,但在本发明实施例中,无论图片尺寸是大是小,都可以通过选择合适的绘制方式,使得最终的背景图片具有较好的展现效果。当然,在一些情况下,还可能需要对用户选定的图片进行一些处理操作。例如,如前文所述,在主题背景图片尺寸比浏览器窗口小时,需要将背景图片(包括原主界面背景图片、原网页背景图片以及用户选定的任意背景图片等)进行拉伸后再直接绘制到主界面背景中。具体在进行拉伸时,可以直接与浏览器窗口进行等比例的放大,例如,假设背景图片的横向尺寸(宽度)为W1,纵向尺寸(高度)为H1,浏览器窗口的宽度为W2,高度为H2,则可以直接将背景图片的宽度放大为W2,高度放大为H2,之后再进行直接绘制。但如果背景图片的宽高比与浏览器窗口的宽高比相差非常大,则如果直接进行等比例拉伸,则拉伸后的图片可能出现严重地变形。为了避免出现这种现象,本发明实施例中可以采用如下算法进行拉伸:
若W1/H1<W2/H2,则以浏览器窗口高度为基准进行拉伸,拉伸后的背景图片尺寸为:
W3=W1*H2/H1
H3=H2
若W1/H1>W2/H2,则以浏览器窗口宽度为基准进行拉伸,拉伸后的背景图片尺寸为:
W3=W2
H3=H1*W2/W1
需要说明的是,在这种方式下,拉伸后的背景图片的尺寸要么在宽度上要么在高度上会略小于浏览器窗口的尺寸,此时,选择绘制方式时,可以采取将浏览器窗口的原点与图片的原点重合的方式,或者也可以采用居中绘制的方式。相应的,在为网页确定背景信息时,依据前文所述的各种情况来确定即可,这里不再赘述。
另外需要说明的是,在前述允许用户灵活选择自己喜爱的图片作为浏览器主题背景图片的情况下,浏览器在重新绘制了浏览器主界面背景之后,还需要在背景图片上面实现工具栏中的各种按钮、地址栏等功能控件,这样才能保证浏览器原有的功能不会受到影响。但在传统的实现方式中,一般都是将各种按钮、网址输入框等作为浏览器窗口的子窗口,然后以子窗口句柄的方式来创建出各种按钮、网址输入框。在这种方式下,操作系统能够识别出各种控件,当发现用户对控件执行操作时,可以直接将用户操作消息发送给各个控件。但是,这种以子窗口句柄方式来创建的方式需要实现非常复杂的数据结构,会占用较多的内存空间,同时也会耗费较多的计算资源及时间,这样,就会影响浏览器的性能,例如,可能造成用户长时间的等待,等等。
为此,在本发明实施例中,在绘制了浏览器的主界面背景之后,可以采用DirectUI(直接在父窗口中绘图)的方式来实现主界面中的按钮、网址输入框等。也即,各种按钮、网址输入框等都是以绘制的方式画在浏览器主界面中的,而不是以子窗口句柄的方式创建,这样,最终展现在浏览器主界面中的按钮、网址输入框等虽然在用户看来仍然像是浏览器窗口的子窗口,但是实质上只是逻辑上的子窗口,在操作系统看来,不再是浏览器窗口的子窗口。这种实现方式与传统的方式相比,会占用较低的系统开销,可以更灵活地实现主界面中各种按钮等的布局方式。
换言之,为了能够达到与向主界面中添加了操作系统控件时相同的功能,可以将主界面中需要添加的对象以绘制的方式添加到主界面中,具体绘制的内容就是指对象操作区域,这里的对象可以包括网址输入框、功能按钮等等。在主界面中绘制了对象操作区域之后,就像在常规的窗口中看到的功能按钮、输入框等一样。也就是说,用户仍然能够在主界面中看到一些功能按钮、网址输入框等对象,只不过这些对象对于操作系统而言,不再是控件,而是连同主界面一起看作是一幅图片。具体实现时,浏览器可以建立自己的界面库,通过该界面库,在主界面上添加各种对象,如输入框,各种功能按钮等,在此过程中,允许对象嵌套对象,如工具栏作为一个对象,工具栏上还可以摆放各种按钮,等等。当然,操作系统并不会获取这些对象信息。
当然,在这种以Direct UI的方式绘制浏览器主界面中的各种按钮、输入框等的方式下,由于操作系统无法识别出具体的控件,因此,当用户操作某按钮或输入框时,浏览器程序需要根据具体的操作事件,对操作对象的样式进行重绘。需要说明的是,虽然操作系统无法识别出主界面中的各种对象等,但当用户对某对象执行操作时,操作系统仍然会将操作焦点的位置以及用户执行的操作的类型(鼠标在对象操作区域内移动、按下、松开等,正在接受键盘输入,等等)等信息发送给浏览器窗口(这是由操作系统自身的消息处理机制决定的,这里不再赘述);另一方面,由于浏览器自己知道每个对象的摆放位置、大小等信息,因此,浏览器在接收到操作系统的用户操作消息之后,就可以判断操作焦点的当前位置是不是在某个对象处,如果是,则证明该对象为被操作对象,进而就可以根据当前操作的类型,在界面库中找到该操作类型下,该被操作对象的消息处理方法,从而实现对用户操作消息的处理。也即,在浏览器的界面库中保存了各个对象在被执行各种类型的操作时,分别对应的消息处理方法,这种方法可以是浏览器的开发者提供的,当对象被操作时,直接运行对应的消息处理方法即可。这样,就可以使得像是在窗口中添加了控件一样的效果。
例如,当被操作对象为某功能按钮时,如果用户的操作类型是操作焦点进入了该功能按钮的操作区域内,此时,相当于该功能按钮获得了鼠标焦点。此时,就可以将该功能按钮进行突出显示,例如改变颜色,或者加上边框等等,以提示用户该功能按钮已经获得了焦点。此时,在本发明实施例中,如果需要实现上述效果,浏览器就需要在该功能按钮操作区域处进行重绘,从而展现出操作焦点进入该功能按钮操作区域前后,该功能按钮操作区域在展现效果上的变化。需要说明的是,重绘后的样式,可以根据预先在界面库中保存的图片来确定。也即,可以在界面库中保存功能按钮在获得焦点时对应的图片,在该功能按钮获取操作焦点后,直接将该图片绘制在该功能按钮的位置,用于替换之前的图片即可。另外,当发现操作焦点移出该功能按钮的操作区域之后,还可以再次在该区域处进行重绘,以展现出操作焦点移出该功能按钮操作区域前后,该功能按钮操作区域在展现效果上的变化,等等。
与本发明实施例提供的浏览器窗口界面展现方法相对应,本发明实施例还提供了一种浏览器窗口界面展现系统,参见图7,该系统可以包括:
背景配置信息获取单元701,用于获取浏览器窗口中第一展现区域的背景配置信息;
背景配置单元702,用于根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置;
背景绘制单元703,用于根据配置的结果绘制所述第二展现区域的背景
其中,可以将主界面的背景图片延伸至网页界面,此时,背景配置信息获取单元701可以包括:
主题背景配置信息获取单元,用于获取浏览器主界面区域的主题背景配置信息;
背景配置单元702可以包括:
网页背景配置单元,用于在需要展现指定网页时,根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
背景绘制单元703可以包括:
渲染单元,用于基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制。
为了改变第三方网页的背景图片,可以有多种实现方式,其中,在一种实现方式下,该系统还可以包括:
脚本注入单元,用于向所述指定网页中注入预置的JS脚本;
通信单元,用于接收到所述JS脚本的获取浏览器的主题背景配置信息的请求时,将所述浏览器的主题背景配置信息发送给所述JS脚本;
此时,所述网页背景配置单元具体用于:
通过所述JS脚本根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行配置;
所述渲染单元包括:
网页信息修改子单元,用于通过所述JS脚本基于重新配置的所述指定网页的背景信息,对所述指定网页的级联样式表进行修改;
内核调用子单元,用于调用浏览器内核对所述指定网页进行渲染及绘制。
或者,在另一种实现方式下,该系统还可以包括:
函数监控单元,用于对浏览器内核渲染网页过程中调用的关键函数进行监控;
函数替换单元,用于当所述关键函数被调用时,将所述关键函数替换为预置的函数;
所述渲染单元具体用于:
以所述重新配置的所述指定网页的背景信息为参数调用所述预置的函数,对所述指定网页进行渲染及绘制。
在实际应用中,该系统还可以包括:
主题更新请求接收单元,用于接收将指定图片作为主题背景图片的请求,将所述指定图片确定为浏览器的主题背景图片;
绘制方式确定单元,用于根据所述指定图片的尺寸,确定在主界面中绘制主题背景图片时的绘制方式;
主题背景配置更新单元,用于根据所述主题背景图片以及绘制方式更新浏览器的主题背景配置信息;
主界面背景重绘单元,用于根据更新后的主题背景配置信息重新绘制浏览器的主界面背景;
网页背景重新确定单元,用于根据更新后的主题背景配置信息重新确定当前打开的网页的背景信息;
网页重新渲染单元,用于基于重新确定出的网页的背景信息,对网页进行重新渲染及绘制。
其中,还包括:
对象操作区域绘制单元,用于根据更新后的主题背景配置信息重新绘制浏览器的主界面背景后,以直接在父窗口上绘图的方式,在主界面中绘制对象操作区域;
用户操作消息接收单元,用于接收操作系统发送的用户操作消息,所述用户操作消息中包括操作焦点的当前位置以及当前用户操作的类型;
用户操作消息处理单元,用于判断所述操作焦点的当前位置是否位于某对象的操作区域内,如果是,将该对象确定为被操作对象,并根据当前用户操作的类型,运行该类型下该被操作对象的消息处理方法,实现对所述用户操作消息的处理。
其中,所述主题背景配置信息获取单元具体用于:
获取浏览器的主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置;
所述网页背景配置单元具体用于:
根据所述主题背景图片、绘制方式以及在浏览器主界面绘制时主题背景图片的结束位置,确定所述指定网页的背景图片、在网页界面中进行绘制时的绘制方式、以及在网页界面进行绘制时主题背景图片的起始位置;
所述渲染单元具体用于:
以所述在网页界面中进行绘制时的绘制方式在所述网页界面中进行网页背景的绘制,其中,绘制的内容从所述在网页界面进行绘制时主题背景图片的起始位置开始。
还可以将背景图片从网页界面延伸到主界面,所述背景配置信息获取单元701包括:
网页背景配置信息获取单元,用于获取浏览器网页界面区域展现的网页的背景配置信息;
所述背景配置单元702包括:
主题背景配置单元,用于在需要展现指定网页时,根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
所述背景绘制单元703包括:
主界面背景绘制单元,用于基于重新配置的主界面的背景信息,对所述主界面的背景进行绘制。
其中,所述网页背景配置信息获取单元具体用于:
获取浏览器网页界面区域的网页背景使用的图片;
所述主题背景配置单元包括:
图片确定单元,用于将所述网页背景使用的图片确定为浏览器的主题背景图片;
绘制方式确定单元,用于根据所述主题背景图片的尺寸,确定在主界面中绘制主题背景图片时的绘制方式;
所述主界面背景绘制单元具体用于:根据所述绘制方式在所述主界面中绘制所述主题背景图片;
所述系统还包括:
结束位置获取单元,用于获取在主界面绘制时主题背景图片的结束位置;
网页背景重新配置单元,用于根据所述主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置,重新配置网页的背景信息,所述网页的背景信息包括网页界面使用的背景图片、在网页界面进行绘制时的绘制方式、以及在网页界面进行绘制时背景图片的起始位置;
重新渲染单元,用于以所述在浏览器的网页界面进行绘制时的绘制方式在所述网页界面中对网页背景进行重新绘制,其中,绘制的内容从所述在浏览器的网页界面进行绘制时主题背景图片的起始位置开始。
其中,所述绘制方式确定单元包括:
计算子单元,用于如果所述确定的所述图片的尺寸小于浏览器窗口的尺寸,则计算所述确定的所述图片的宽高比以及浏览器窗口的宽高比;
第一确定子单元,用于如果所述确定的所述图片的宽高比小于浏览器窗口的宽高比,则将绘制方式确定为:以浏览器窗口的高度为基准对所述指定图片进行拉伸后绘制;
第二确定子单元,用于如果所述确定的所述图片的宽高比大于浏览器窗口的宽高比,则将绘制方式确定为:以浏览器窗口的宽度为基准对所述确定的所述图片进行拉伸后绘制。
具体实现时,所述重新渲染单元包括:
脚本注入子单元,用于向网页中注入预置的JS脚本;
通信子单元,用于接收到所述JS脚本的获取浏览器的主题背景配置信息的请求时,将重新配置的网页的背景信息发送给所述JS脚本;
修改子单元,用于通过所述JS脚本基于重新配置的网页的背景信息,对网页的级联样式表进行修改;
调用子单元,用于调用浏览器内核对网页进行重新渲染及绘制。
或者,所述重新渲染单元包括:
监控子单元,用于触发浏览器内核对网页进行重新渲染,并对浏览器内核渲染网页过程中调用的关键函数进行监控;
替换子单元,用于当所述关键函数被调用时,将所述关键函数替换为预置的函数;
参数传入子单元,用于以重新配置的网页的背景信息为参数调用所述预置的函数,对网页进行重新渲染及绘制。
其中,如果所述绘制方式为从主题背景图片的原点开始直接绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交界线信息获取子单元,用于获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp1;
第一结束位置获取子单元,用于将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为yp1;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第一起始位置获取子单元,用于将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,yp1)。
如果所述主题背景图片的尺寸大于所述浏览器窗口的尺寸,所述绘制方式为居中绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交界线信息获取子单元,用于获取浏览器的主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp2;
主界面图片起始位置获取子单元,用于获取在主界面绘制时主题背景图片的起始点位置相对于主题背景图片的坐标为(m,n)
第二结束位置获取子单元,用于将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为n+yp2;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第二起始位置获取子单元,用于将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(m,n+yp2)。
如果所述主题背景图片的尺寸小于所述浏览器窗口的尺寸,所述绘制方式为居中绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交界线信息获取子单元,用于获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp2;
主界面起始位置获取子单元,用于获取在主界面绘制时主界面的起始点位置相对于浏览器窗口的坐标(a,b)
第三结束位置获取子单元,用于将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为yp2-b;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第三起始位置获取子单元,用于将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,yp2-b)。
如果所述主题背景图片的尺寸小于所述浏览器窗口的尺寸,所述绘制方式为平铺绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交点坐标获取子单元,用于获取绘制到主界面与网页界面的交界线时,当前被绘制的像素点相对于主题背景图片的纵坐标P3;
第四结束位置获取子单元,用于将在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为P3;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第五起始位置获取子单元,用于将在网页界面进行绘制时第一行主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,P3);
第六起始位置获取子单元,用于从绘制第二行主题背景图片起,主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,0)。
通过本发明实施例提供的上述系统,能够根据浏览器窗口中一个展现区域的背景配置信息,来配置另一个展现区域的背景,因此,能够使得浏览器窗口的不同展现区域具有相同的背景,从而优化展现的效果。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本发明所提供的浏览器窗口界面展现方法及系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (32)
1.一种浏览器窗口界面展现方法,其特征在于,包括:
获取浏览器窗口中第一展现区域的背景配置信息;
根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置包括:根据浏览器的主界面的主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置,确定浏览器的网页界面的背景图片、在网页界面中进行绘制时的绘制方式、以及在网页界面进行绘制时主题背景图片的起始位置;
根据配置的结果绘制所述第二展现区域的背景。
2.根据权利要求1所述的方法,其特征在于,所述获取浏览器窗口中第一展现区域的背景配置信息包括:
获取浏览器主界面区域的主题背景配置信息;
所述根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置包括:
在需要展现指定网页时,根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
所述根据配置的结果绘制所述第二展现区域的背景包括:
基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制。
3.根据权利要求2所述的方法,其特征在于,还包括:
向所述指定网页中注入预置的JS脚本;
接收到所述JS脚本的获取浏览器的主题背景配置信息的请求时,将所述浏览器的主题背景配置信息发送给所述JS脚本;
所述根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置包括:
通过所述JS脚本根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
所述基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制包括:
通过所述JS脚本基于重新配置的所述指定网页的背景信息,对所述指定网页的级联样式表进行修改;
调用浏览器内核对所述指定网页进行渲染及绘制。
4.根据权利要求2所述的方法,其特征在于,还包括:
对浏览器内核渲染网页过程中调用的关键函数进行监控;
当所述关键函数被调用时,将所述关键函数替换为预置的函数;
所述基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制包括:
以所述重新配置的所述指定网页的背景信息为参数调用所述预置的函数,对所述指定网页进行渲染及绘制。
5.根据权利要求2所述的方法,其特征在于,还包括:
接收将指定图片作为主题背景图片的请求,将所述指定图片确定为浏览器的主题背景图片;
根据所述主题背景图片的尺寸,确定在主界面中绘制主题背景图片时的绘制方式;
根据所述主题背景图片以及绘制方式更新浏览器的主题背景配置信息;
根据更新后的主题背景配置信息重新绘制浏览器的主界面背景;
根据更新后的主题背景配置信息重新确定当前打开的网页的背景信息;
基于重新确定出的网页的背景信息,对网页进行重新渲染及绘制。
6.根据权利要求5所述的方法,其特征在于,所述根据更新后的主题背景配置信息重新绘制浏览器的主界面背景后,还包括:
以直接在父窗口上绘图的方式,在主界面中绘制对象操作区域;
接收操作系统发送的用户操作消息,所述用户操作消息中包括操作焦点的当前位置以及当前用户操作的类型;
判断所述操作焦点的当前位置是否位于某对象的操作区域内,如果是,将该对象确定为被操作对象,并根据当前用户操作的类型,运行该类型下该被操作对象的消息处理方法,实现对所述用户操作消息的处理。
7.根据权利要求2或5所述方法,其特征在于,所述获取浏览器的主题背景配置信息包括:
获取浏览器的主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置;
所述根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置包括:
根据所述主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置,确定所述指定网页的背景图片、在网页界面中进行绘制时的绘制方式、以及在网页界面进行绘制时主题背景图片的起始位置;
所述基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制包括:
以所述在网页界面中进行绘制时的绘制方式在所述网页界面中进行网页背景的绘制,其中,绘制的内容从所述在网页界面进行绘制时主题背景图片的起始位置开始。
8.根据权利要求1所述的方法,其特征在于,所述获取浏览器窗口中第一展现区域的背景配置信息包括:
获取浏览器网页界面区域展现的网页的背景配置信息;
所述根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置包括:
根据所述网页的背景配置信息对浏览器主界面区域的主题背景信息进行重新配置;
所述根据配置的结果绘制所述第二展现区域的背景包括:
基于重新配置的主界面的背景信息,对所述主界面的背景进行绘制。
9.根据权利要求8所述的方法,其特征在于,所述获取浏览器网页界面区域展现的网页的背景配置信息包括:
获取浏览器网页界面区域的网页背景使用的图片;
所述根据所述网页背景配置信息对浏览器主界面区域的主题背景信息进行重新配置包括:
将所述网页背景使用的图片确定为浏览器的主题背景图片;
根据所述主题背景图片的尺寸,确定在主界面中绘制主题背景图片时的绘制方式;
所述基于重新配置的主界面的背景信息,对所述主界面的背景进行绘制包括:
根据所述绘制方式在所述主界面中绘制所述主题背景图片;
所述方法还包括:
获取在主界面绘制时主题背景图片的结束位置;
根据所述主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置,重新配置网页的背景信息,所述网页的背景信息包括网页界面使用的背景图片、在网页界面进行绘制时的绘制方式、以及在网页界面进行绘制时背景图片的起始位置;
以所述在网页界面进行绘制时的绘制方式在所述网页界面中对网页背景进行重新绘制,其中,绘制的内容从所述在网页界面进行绘制时主题背景图片的起始位置开始。
10.根据权利要求5或9所述的方法,其特征在于,根据确定的所述图片的尺寸,确定绘制方式包括:
如果所述确定的所述图片的尺寸小于浏览器窗口的尺寸,则计算所述确定的所述图片的宽高比以及浏览器窗口的宽高比;
如果所述确定的所述图片的宽高比小于浏览器窗口的宽高比,则将绘制方式确定为:以浏览器窗口的高度为基准对所述确定的所述图片进行拉伸后绘制;
如果所述确定的所述图片的宽高比大于浏览器窗口的宽高比,则将绘制方式确定为:以浏览器窗口的宽度为基准对所述确定的所述图片进行拉伸后绘制。
11.根据权利要求9所述的方法,其特征在于,所述以所述在网页界面进行绘制时的绘制方式在所述网页界面中对网页背景进行重新绘制包括:
向网页中注入预置的JS脚本;
接收到所述JS脚本的获取浏览器的主题背景配置信息的请求时,将重新配置的网页的背景信息发送给所述JS脚本;
通过所述JS脚本基于重新配置的网页的背景信息,对网页的级联样式表进行修改;
调用浏览器内核对网页进行重新渲染及绘制。
12.根据权利要求9所述的方法,其特征在于,所述以所述网页界面进行绘制时的绘制方式在所述网页界面中对网页背景进行重新绘制包括:
触发浏览器内核对网页进行重新渲染,并对浏览器内核渲染网页过程中调用的关键函数进行监控;
当所述关键函数被调用时,将所述关键函数替换为预置的函数;
以重新配置的网页的背景信息为参数调用所述预置的函数,对网页进行重新渲染及绘制。
13.根据权利要求9所述的方法,其特征在于,如果所述绘制方式为从主题背景图片的原点开始直接绘制,所述获取在主界面绘制时主题背景图片的结束位置包括:
获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp1;
将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为yp1;
确定在网页界面进行绘制时主题背景图片的起始位置包括:
将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,yp1)。
14.根据权利要求9所述的方法,其特征在于,如果所述主题背景图片的尺寸大于所述浏览器窗口的尺寸,所述绘制方式为居中绘制,所述获取在主界面绘制时主题背景图片的结束位置包括:
获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp2;
获取在主界面绘制时主题背景图片的起始点位置相对于主题背景图片的坐标为(m,n)
将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为n+yp2;
确定在网页界面进行绘制时主题背景图片的起始位置包括:
将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(m,n+yp2)。
15.根据权利要求9所述的方法,其特征在于,如果所述主题背景图片的尺寸小于所述浏览器窗口的尺寸,所述绘制方式为居中绘制,所述获取在主界面绘制时主题背景图片的结束位置包括:
获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp2;
获取在主界面绘制时主界面的起始点位置相对于浏览器窗口的坐标(a,b)
将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为yp2-b;
确定在网页界面进行绘制时主题背景图片的起始位置包括:
将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,yp2-b)。
16.根据权利要求9所述的方法,其特征在于,如果所述主题背景图片的尺寸小于所述浏览器窗口的尺寸,所述绘制方式为平铺绘制,所述获取在主界面绘制时主题背景图片的结束位置包括:
获取绘制到主界面与网页界面的交界线时,当前被绘制的像素点相对于主题背景图片的纵坐标P3;
将在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为P3;
确定在网页界面进行绘制时主题背景图片的起始位置包括:
将在网页界面进行绘制时第一行主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,P3);
从绘制第二行主题背景图片起,主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,0)。
17.一种浏览器窗口界面展现系统,其特征在于,包括:
背景配置信息获取单元,用于获取浏览器窗口中第一展现区域的背景配置信息;
背景配置单元,用于根据所述第一展现区域的背景配置信息,对浏览器窗口中第二展现区域的背景进行配置包括:根据浏览器的主界面的主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置,确定浏览器的网页界面的背景图片、在网页界面中进行绘制时的绘制方式、以及在网页界面进行绘制时主题背景图片的起始位置;
背景绘制单元,用于根据配置的结果绘制所述第二展现区域的背景。
18.根据权利要求17所述的系统,其特征在于,所述背景配置信息获取单元包括:
主题背景配置信息获取单元,用于获取浏览器主界面区域的主题背景配置信息;
所述背景配置单元包括:
网页背景配置单元,用于在需要展现指定网页时,根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
所述背景绘制单元包括:
渲染单元,用于基于重新配置的所述指定网页的背景信息,对所述指定网页进行渲染及绘制。
19.根据权利要求18所述的系统,其特征在于,还包括:
脚本注入单元,用于向所述指定网页中注入预置的JS脚本;
通信单元,用于接收到所述JS脚本的获取浏览器的主题背景配置信息的请求时,将所述浏览器的主题背景配置信息发送给所述JS脚本;
所述网页背景配置单元具体用于:
通过所述JS脚本根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行配置;
所述渲染单元包括:
网页信息修改子单元,用于通过所述JS脚本基于重新配置的所述指定网页的背景信息,对所述指定网页的级联样式表进行修改;
内核调用子单元,用于调用浏览器内核对所述指定网页进行渲染及绘制。
20.根据权利要求18所述的系统,其特征在于,还包括:
函数监控单元,用于对浏览器内核渲染网页过程中调用的关键函数进行监控;
函数替换单元,用于当所述关键函数被调用时,将所述关键函数替换为预置的函数;
所述渲染单元具体用于:
以所述重新配置的所述指定网页的背景信息为参数调用所述预置的函数,对所述指定网页进行渲染及绘制。
21.根据权利要求18所述的系统,其特征在于,还包括:
主题更新请求接收单元,用于接收将指定图片作为主题背景图片的请求,将所述指定图片确定为浏览器的主题背景图片;
绘制方式确定单元,用于根据所述指定图片的尺寸,确定在主界面中绘制主题背景图片时的绘制方式;
主题背景配置更新单元,用于根据所述主题背景图片以及绘制方式更新浏览器的主题背景配置信息;
主界面背景重绘单元,用于根据更新后的主题背景配置信息重新绘制浏览器的主界面背景;
网页背景重新确定单元,用于根据更新后的主题背景配置信息重新确定当前打开的网页的背景信息;
网页重新渲染单元,用于基于重新确定出的网页的背景信息,对网页进行重新渲染及绘制。
22.根据权利要求21所述的系统,其特征在于,还包括:
对象操作区域绘制单元,用于根据更新后的主题背景配置信息重新绘制浏览器的主界面背景后,以直接在父窗口上绘图的方式,在主界面中绘制对象操作区域;
用户操作消息接收单元,用于接收操作系统发送的用户操作消息,所述用户操作消息中包括操作焦点的当前位置以及当前用户操作的类型;
用户操作消息处理单元,用于判断所述操作焦点的当前位置是否位于某对象的操作区域内,如果是,将该对象确定为被操作对象,并根据当前用户操作的类型,运行该类型下该被操作对象的消息处理方法,实现对所述用户操作消息的处理。
23.根据权利要求18或21所述的系统,其特征在于,所述主题背景配置信息获取单元具体用于:
获取浏览器的主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置;
所述网页背景配置单元具体用于:
根据所述主题背景图片、绘制方式以及在浏览器主界面绘制时主题背景图片的结束位置,确定所述指定网页的背景图片、在网页界面中进行绘制时的绘制方式、以及在网页界面进行绘制时主题背景图片的起始位置;
所述渲染单元具体用于:
以所述在网页界面中进行绘制时的绘制方式在所述网页界面中进行网页背景的绘制,其中,绘制的内容从所述在网页界面进行绘制时主题背景图片的起始位置开始。
24.根据权利要求17所述的系统,其特征在于,所述背景配置信息获取单元包括:
网页背景配置信息获取单元,用于获取浏览器网页界面区域展现的网页的背景配置信息;
所述背景配置单元包括:
主题背景配置单元,用于在需要展现指定网页时,根据所述浏览器的主题背景配置信息对所述指定网页的背景信息进行重新配置;
所述背景绘制单元包括:
主界面背景绘制单元,用于基于重新配置的主界面的背景信息,对所述主界面的背景进行绘制。
25.根据权利要求24所述的系统,其特征在于,所述网页背景配置信息获取单元具体用于:
获取浏览器网页界面区域的网页背景使用的图片;
所述主题背景配置单元包括:
图片确定单元,用于将所述网页背景使用的图片确定为浏览器的主题背景图片;
绘制方式确定单元,用于根据所述主题背景图片的尺寸,确定在主界面中绘制主题背景图片时的绘制方式;
所述主界面背景绘制单元具体用于:根据所述绘制方式在所述主界面中绘制所述主题背景图片;
所述系统还包括:
结束位置获取单元,用于获取在主界面绘制时主题背景图片的结束位置;
网页背景重新配置单元,用于根据所述主题背景图片、绘制方式以及在主界面绘制时主题背景图片的结束位置,重新配置网页的背景信息,所述网页的背景信息包括网页界面使用的背景图片、在网页界面进行绘制时的绘制方式、以及在网页界面进行绘制时背景图片的起始位置;
重新渲染单元,用于以所述在网页界面进行绘制时的绘制方式在所述网页界面中对网页背景进行重新绘制,其中,绘制的内容从所述在网页界面进行绘制时主题背景图片的起始位置开始。
26.根据权利要求21或25所述的系统,其特征在于,所述绘制方式确定单元包括:
计算子单元,用于如果确定的所述图片的尺寸小于浏览器窗口的尺寸,则计算所述确定的所述图片的宽高比以及浏览器窗口的宽高比;
第一确定子单元,用于如果所述确定的所述图片的宽高比小于浏览器窗口的宽高比,则将绘制方式确定为:以浏览器窗口的高度为基准对所述确定的所述图片进行拉伸后绘制;
第二确定子单元,用于如果所述确定的所述图片的宽高比大于浏览器窗口的宽高比,则将绘制方式确定为:以浏览器窗口的宽度为基准对所述确定的所述图片进行拉伸后绘制。
27.根据权利要求25所述的系统,其特征在于,所述重新渲染单元包括:
脚本注入子单元,用于向网页中注入预置的JS脚本;
通信子单元,用于接收到所述JS脚本的获取浏览器的主题背景配置信息的请求时,将重新配置的网页的背景信息发送给所述JS脚本;
修改子单元,用于通过所述JS脚本基于重新配置的网页的背景信息,对网页的级联样式表进行修改;
调用子单元,用于调用浏览器内核对网页进行重新渲染及绘制。
28.根据权利要求25所述的系统,其特征在于,所述重新渲染单元包括:
监控子单元,用于触发浏览器内核对网页进行重新渲染,并对浏览器内核渲染网页过程中调用的关键函数进行监控;
替换子单元,用于当所述关键函数被调用时,将所述关键函数替换为预置的函数;
参数传入子单元,用于以重新配置的网页的背景信息为参数调用所述预置的函数,对网页进行重新渲染及绘制。
29.根据权利要求25所述的系统,其特征在于,如果所述绘制方式为从主题背景图片的原点开始直接绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交界线信息获取子单元,用于获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp1;
第一结束位置获取子单元,用于将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为yp1;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第一起始位置获取子单元,用于将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,yp1)。
30.根据权利要求25所述的系统,其特征在于,如果所述主题背景图片的尺寸大于所述浏览器窗口的尺寸,所述绘制方式为居中绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交界线信息获取子单元,用于获取浏览器的主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp2;
主界面图片起始位置获取子单元,用于获取在主界面绘制时主题背景图片的起始点位置相对于主题背景图片的坐标为(m,n);
第二结束位置获取子单元,用于将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为n+yp2;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第二起始位置获取子单元,用于将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(m,n+yp2)。
31.根据权利要求25所述的系统,其特征在于,如果所述主题背景图片的尺寸小于所述浏览器窗口的尺寸,所述绘制方式为居中绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交界线信息获取子单元,用于获取主界面与网页界面的交界线,并提取所述交界线相对于浏览器窗口的纵坐标yp2;
主界面起始位置获取子单元,用于获取在主界面绘制时主界面的起始点位置相对于浏览器窗口的坐标(a,b);
第三结束位置获取子单元,用于将所述在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为yp2-b;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第三起始位置获取子单元,用于将在网页界面进行绘制时主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,yp2-b)。
32.根据权利要求25所述的系统,其特征在于,如果所述主题背景图片的尺寸小于所述浏览器窗口的尺寸,所述绘制方式为平铺绘制,通过以下子单元获取在主界面绘制时主题背景图片的结束位置:
交点坐标获取子单元,用于获取绘制到主界面与网页界面的交界线时,当前被绘制的像素点相对于主题背景图片的纵坐标P3;
第四结束位置获取子单元,用于将在主界面绘制时主题背景图片的结束位置相对于主题背景图片的纵坐标确定为P3;
通过以下子单元确定在网页界面进行绘制时主题背景图片的起始位置:
第五起始位置获取子单元,用于将在网页界面进行绘制时第一行主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,P3);
第六起始位置获取子单元,用于从绘制第二行主题背景图片起,主题背景图片的起始位置相对于主题背景图片的坐标确定为(0,0)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210265515.5A CN103577030B (zh) | 2012-07-27 | 2012-07-27 | 浏览器窗口界面展现方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210265515.5A CN103577030B (zh) | 2012-07-27 | 2012-07-27 | 浏览器窗口界面展现方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103577030A CN103577030A (zh) | 2014-02-12 |
CN103577030B true CN103577030B (zh) | 2017-06-27 |
Family
ID=50048934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210265515.5A Active CN103577030B (zh) | 2012-07-27 | 2012-07-27 | 浏览器窗口界面展现方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103577030B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105022734B (zh) * | 2014-04-18 | 2020-01-31 | 腾讯科技(深圳)有限公司 | 一种背景色设置方法及装置 |
CN105589882B (zh) * | 2014-10-24 | 2020-05-08 | 阿里巴巴集团控股有限公司 | 网页的页面元素的显示方法和装置 |
CN105843814A (zh) * | 2015-01-14 | 2016-08-10 | 阿里巴巴集团控股有限公司 | 一种页面生成方法、装置及系统 |
CN106649317A (zh) * | 2015-10-29 | 2017-05-10 | 北京国双科技有限公司 | 图表显示方法及装置 |
CN105608172B (zh) * | 2015-12-21 | 2019-11-19 | 北京奇虎科技有限公司 | 浏览器的推荐方法及装置 |
CN105893555A (zh) * | 2016-03-31 | 2016-08-24 | 北京金山安全软件有限公司 | 一种浏览器界面的显示方法、装置及电子设备 |
CN106407279A (zh) * | 2016-08-26 | 2017-02-15 | 乐视控股(北京)有限公司 | 网页样式设置处理方法及装置 |
CN110069254B (zh) * | 2019-04-30 | 2023-07-14 | 广东三维家信息科技有限公司 | 文本显示方法、装置及服务器 |
CN112363784A (zh) * | 2020-10-26 | 2021-02-12 | 深圳市明源云科技有限公司 | 在应用程序中显示窗口的方法和装置 |
CN113312569B (zh) * | 2021-05-17 | 2023-10-03 | 浪潮金融信息技术有限公司 | 一种伪随机展示网页背景的方法、系统及介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1330317A (zh) * | 2000-06-15 | 2002-01-09 | 希易资讯股份有限公司 | 命理导向的网页动态变换方法与系统 |
US20040061720A1 (en) * | 2002-09-26 | 2004-04-01 | Matt Weber | Multi-function browser toolbar with method for online institutional administrative browser control |
CN100394428C (zh) * | 2005-12-20 | 2008-06-11 | 北京亿中邮信息技术有限公司 | 一种个性化替换网页主题的方法 |
US7646392B2 (en) * | 2006-05-03 | 2010-01-12 | Research In Motion Limited | Dynamic theme color palette generation |
US20080134077A1 (en) * | 2006-12-05 | 2008-06-05 | Sap Ag | Chameleon graphic user interface |
US20120158521A1 (en) * | 2010-12-15 | 2012-06-21 | Mccullen Nicholas | System and Method for Personalized Secure Website Portal |
-
2012
- 2012-07-27 CN CN201210265515.5A patent/CN103577030B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN103577030A (zh) | 2014-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103577030B (zh) | 浏览器窗口界面展现方法及系统 | |
US10691331B2 (en) | Native overlay for rapid editing of web content | |
US9874995B2 (en) | Maintaining context for maximize interactions on grid-based visualizations | |
RU2554395C2 (ru) | Система и способ для выбора вкладки в браузере с вкладками | |
CN104216752B (zh) | 一种基于窗口的信息加载方法及装置 | |
US10754489B2 (en) | System and method for pinning tabs in a tabbed browser | |
US20190265866A1 (en) | User interface for editing web content | |
CN110096277A (zh) | 一种动态页面展示方法、装置、电子设备及存储介质 | |
US20190324608A1 (en) | Method and apparatus for homepage cluster system management based on tree structure | |
US20150378562A1 (en) | Chain layout for displaying hierarchical data | |
CN111240661B (zh) | 编程页面展示方法、装置、存储介质和计算机设备 | |
US20190080017A1 (en) | Method, system, and device that invokes a web engine | |
CN109828820B (zh) | 一种应用窗口的焦点刷新方法、装置、存储介质及终端 | |
US20180046348A1 (en) | User interface for recommended alternative search queries | |
CN104424205A (zh) | 嵌入页面的客户端的右键菜单的实现方法和装置 | |
CN105630375A (zh) | 基于图形界面的信息输入的辅助实现方法和系统 | |
DE202017105674U1 (de) | Steuerung eines Fensters unter Verwendung eines berührungsempfindlichen Rands | |
CN106033334A (zh) | 绘制界面元素的方法和装置 | |
CN103902727B (zh) | 网络搜索方法和装置 | |
CN104978171A (zh) | 可识别标识的输出方法及装置 | |
EP3639136B1 (en) | Generating user interface containers | |
CN115563355A (zh) | Nebula Graph图数据库查询方法、系统、电子装置及介质 | |
US10013406B2 (en) | Flip-to-edit container | |
US10656788B1 (en) | Dynamic document updating application interface and corresponding control functions | |
US11366571B2 (en) | Visualization components including sliding bars |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |