CN105930464B - Web富媒体跨屏适配方法和装置 - Google Patents
Web富媒体跨屏适配方法和装置 Download PDFInfo
- Publication number
- CN105930464B CN105930464B CN201610255770.XA CN201610255770A CN105930464B CN 105930464 B CN105930464 B CN 105930464B CN 201610255770 A CN201610255770 A CN 201610255770A CN 105930464 B CN105930464 B CN 105930464B
- Authority
- CN
- China
- Prior art keywords
- rich media
- percentage
- height
- width
- visible area
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9577—Optimising the visualization of content, e.g. distillation of HTML documents
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及一种Web富媒体跨屏适配方法和装置。所述方法包括以下步骤:获取浏览器的可视区域的宽和高;获取富媒体的宽和高;获取选取的填充模式;根据所述可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取所述富媒体的缩放百分比;根据所述富媒体的缩放百分比确定所述富媒体在所述可视区域的位置,将所述富媒体配置在所述可视区域的相应位置中;对所述富媒体配置在所述可视区域后的空白像素进行像素填充。上述Web富媒体跨屏适配方法和装置,使得富媒体在浏览器的可视区域中展示,能够适配不同屏幕尺寸的设备,不需开发人员再关注屏幕的适配,提高工作效率。
Description
技术领域
本发明涉及图像处理领域,特别是涉及一种Web富媒体跨屏适配方法和装置。
背景技术
用户通过网络访问Web页面时,有时Web页面中存在富媒体数据,为了播放富媒体数据,通常在浏览器中安装Flash播放器插件,通过Flash播放器插件播放该富媒体,Flash播放器插件提供了画面比例及全屏功能,通过选择画面比例实现富媒体画面显示比例调整和全屏功能实现富媒体的全屏展示。但是许多设备不支持Flash,而采用HTML5(Hyper TextMarkup Language,超文本标记语言)构建富媒体应用。由于设备的屏幕尺寸分辨率多种多样,目前通过HTML5构建的富媒体应用无法适配各种屏幕尺寸的设备。
发明内容
基于此,有必要针对传统的HTML5构建的富媒体无法适配各种屏幕尺寸的设备的问题,提供一种Web富媒体跨屏适配方法,能适配不同屏幕尺寸的设备,不需开发人员再关注屏幕的适配,提高工作效率。
此外,还有必要提供一种Web富媒体跨屏适配装置,能适配不同屏幕尺寸的设备,不需开发人员再关注屏幕的适配,提高工作效率。
一种Web富媒体跨屏适配方法,包括:
通过浏览器的HTML中插入的函数代码直接执行以下步骤:
获取浏览器的可视区域的宽和高;
获取富媒体的宽和高;
获取选取的填充模式;
根据所述可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取所述富媒体的缩放百分比;
根据所述富媒体的缩放百分比确定所述富媒体在所述可视区域的位置,将所述富媒体配置在所述可视区域的相应位置中;
对所述富媒体配置在所述可视区域后的空白像素进行像素填充。
一种Web富媒体跨屏适配装置,包括:
第一获取模块,用于获取浏览器的可视区域的宽和高;
第二获取模块,用于获取富媒体的宽和高;
第三获取模块,用于通过浏览器的HTML中插入的函数代码直接获取选取的填充模式;
处理模块,用于通过浏览器的HTML中插入的函数代码直接根据所述可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取所述富媒体的缩放百分比;
配置模块,用于通过浏览器的HTML中插入的函数代码直接根据所述富媒体的缩放百分比确定所述富媒体在所述可视区域的位置,将所述富媒体配置在所述可视区域的相应位置中;
像素填充模块,用于通过浏览器的HTML中插入的函数代码直接对所述富媒体配置在所述可视区域后的空白像素进行像素填充。
上述Web富媒体跨屏适配方法和装置,通过获取浏览器的可视区域的宽和高、富媒体的宽和高以及填充模式,并得到富媒体的缩放百分比,根据富媒体缩放百分比确定富媒体在可视区域的位置,并对配置富媒体到可视区域后的空白像素进行填充,使得富媒体在浏览器的可视区域中展示,能够适配不同屏幕尺寸的设备,不需开发人员再关注屏幕的适配,提高工作效率;且对富媒体进行像素填充,使得产生超分辨率的缩放效果。
附图说明
图1为一个实施例中终端的内部结构示意图;
图2为一个实施例中Web富媒体跨屏适配方法的流程图;
图3为一个实施例中选取填充模式的界面示意图;
图4为图3中选取拉伸填充模式的示意图;
图5为一个实施例中选取适应模式的效果示意图;
图6为一个实施例中拉伸模式的效果示意图;
图7A为原始图像再浏览器中的示意图;
图7B为全屏适配后,光标移入出现全屏按钮;
图7C为全屏展示的效果示意图;
图8为一个实施例中Flappy Bird富媒体在fill模式下适配不同屏幕尺寸的结果示意图;
图9为一个实施例中Flappy Bird富媒体在fit模式下适配不同屏幕尺寸的结果示意图;
图10为一个实施例中Web富媒体跨屏适配装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一客户端称为第二客户端,且类似地,可将第二客户端称为第一客户端。第一客户端和第二客户端两者都是客户端,但其不是同一客户端。
图1为一个实施例中终端的内部结构示意图。如图1所示,该终端包括通过系统总线连接的处理器、非易失性存储介质、内存、网络接口、显示屏和输入装置。其中,终端的非易失性存储介质存储有操作系统,还包括一种Web富媒体跨屏适配装置。该处理器用于提供计算和控制能力,支撑整个终端的运行,被用于执行Web富媒体跨屏视频方法的流程步骤。终端中的网络接口用于与服务器进行网络通信,如发送富媒体数据至服务器,接收服务器返回的富媒体数据等。终端的显示屏可以是液晶显示屏或者电子墨水显示屏等,输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该终端可以是内置浏览器或Webview的计算机、手机、电视机、个人数字助理、手表或穿戴式设备等。本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
图2为一个实施例中Web富媒体跨屏适配方法的流程图。如图2所示,一种Web富媒体跨屏适配方法,包括以下步骤:
步骤202,获取浏览器的可视区域的宽和高。
本实施例中,通过浏览器的HTML中的函数代码window.innerWidth和window.innerHeight直接获取浏览器的可视区域的宽和高。
步骤204,获取富媒体的宽和高。
本实施例中,通过浏览器的HTML中的函数代码canvas.width和canvas.height直接获取富媒体的宽和高。富媒体是指canvas/webgl写的应用程序或游戏等,不限于此。
步骤206,获取选取的填充模式。
本实施例中,通过浏览器的HTML中的函数代码直接获取选取的填充模式。alloyscreen提供了四种填充模式用于展示比例调节,并提供了restore还原初始状态。填充模式可包括fit适应、fill填充、拉伸(stretch)、居中(center)。
其中,fit适应方式是指显示比例不变,左右撑满或上下撑满,无图像信息丢失,一般情况下会出现左右黑边或上下黑边。
fill填充模式是指显示比例不变,撑满可视区域,以丢失部分图像的成本,保证不发生变形。
拉伸方式是指宽高撑满可视区域,一般情况下会发生变形。
center居中方式是指显示比例不便,宽高不变,在可视区域居中显示。
可视区域可为终端的整个屏幕或部分屏幕等。
为了实现fit适应方式可在Web程序的HTML中插入对应的代码,如代码如下:
其中,#ourCanvas为id(标识)是ourCanvas的canvas,需要添加fit效果的canvas。canvas是图形容器。
同理为了实现其他的填充模式,可将上述代码中fit()代替为对应的填充模式。
图3为一个实施例中选取填充模式的界面示意图。如图3所示,在菜单界面中可选择分辨率、填充模式、全屏、音效大小调节、音乐音量大小调节等。填充模式以下拉框的方式显示有fit适应、fill填充、拉伸、居中。
图4为图3中选取拉伸填充模式的示意图。如图4所示,分辨率为1366*768,填充模式为拉伸。
步骤208,根据该可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取该富媒体的缩放百分比。
通过浏览器的HTML中插入的函数代码直接根据可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取该富媒体的缩放百分比。
步骤210,根据该富媒体的缩放百分比确定该富媒体在该可视区域的位置,将该富媒体配置在该可视区域的相应位置中。
本实施例中,通过浏览器的HTML中插入的函数代码直接使用this.canvas.getBoundingClientRect()确定富媒体在CSS(Cascading Style Sheets,层叠样式表)中的位置。使用CSS Position Fixed固定富媒体在CSS中的位置。
步骤212,对该富媒体配置在该可视区域后的空白像素进行像素填充。
本实施例中,通过浏览器的HTML中插入的函数代码直接对富媒体配置在可视区域后的空白像素采用插值法进行像素填充。
图像插值就是利用已知邻近像素点的灰度值或RGB图像中的三色值来产生未知像素点的灰度值,以便由原始图像再生出具有更高分辨率的图像。
该插值法可包括最近邻元插值法(nearest neighbor interpolation)、双线性内插法(bilinear interpolation)、三次卷积内插法(cubic convolution interpolation)。
其中,最近邻元插值法:对于通过反向变换得到的一个浮点坐标,对其进行简单的取整,得到一个整数型坐标,这个整数型坐标对应的像素值就是目的像素的像素值,也就是说,取浮点坐标最邻近的左上角点(对于DIB是右上角,因为它的扫描行是逆序存储的)对应的像素值。可见,最邻近插值简单且直观。
双线性内插值:对于一个目的像素,设置坐标通过反向变换得到的浮点坐标为(i+u,j+v),其中i、j均为非负整数,u、v为[0,1)区间的浮点数,则这个像素得值f(i+u,j+v)可由原图像中坐标为(i,j)、(i+1,j)、(i,j+1)、(i+1,j+1)所对应的周围四个像素的值决定,即:
f(i+u,j+v)=(1-u)(1-v)f(i,j)+(1-u)vf(i,j+1)+u(1-v)f(i+1,j)+uvf(i+1,j+1)其中,f(i,j)表示源图像(i,j)处的的像素值,以此类推。
双线性内插值法计算量大,但缩放后图像质量高,不会出现像素值不连续的的情况。由于双线性插值具有低通滤波器的性质,使高频分量受损,所以可能会使图像轮廓在一定程度上变得模糊。
三次卷积法的计算精度高,其考虑一个浮点坐标(i+u,j+v)周围的16个邻点,目的像素值f(i+u,j+v)可由如下插值公式得到:f(i+u,j+v)=[A]*[B]*[C]
[A]=[S(u+1)S(u+0)S(u-1)S(u-2)]
S(x)是对Sin(x*Pi)/x的逼近(Pi是圆周率——π)。
上述Web富媒体跨屏适配方法,通过获取浏览器的可视区域的宽和高、富媒体的宽和高以及填充模式,并得到富媒体的缩放百分比,根据富媒体缩放百分比确定富媒体在可视区域的位置,并对配置富媒体到可视区域后的空白像素进行填充,使得富媒体在浏览器的可视区域中展示,能够适配不同屏幕尺寸的设备,不需开发人员再关注屏幕的适配,提高工作效率;且对富媒体进行像素填充,使得产生超分辨率的缩放效果。
在一个实施例中,根据该可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取该富媒体的缩放百分比包括:
若选取的填充模式为fit适应,获取该富媒体宽高比与该可视区域的宽高比的比值,当该比值大于1,则该富媒体的宽度百分比为100%,该富媒体的高度百分比为该可视区域的宽高比与该富媒体的高宽比乘积的百分比,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为100%减去该富媒体的高度百分比后再除以2,该富媒体的宽度方向上的第一侧距该可视区域的宽度方向上的第一侧的百分比为0;
当该比值小于或等于1,则该富媒体的高度百分比为100%,该富媒体的宽度百分比为该可视区域的高宽比与该富媒体的宽高比乘积的百分比,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为0,该富媒体的宽度方向上的第一侧距该可视区域的宽度方向上的第一侧的百分比为100%减去该富媒体的宽度百分比后再除以2。
图5为一个实施例中选取适应模式的效果示意图。如图5所示,填充模式为适应模式,则显示比例不变,富媒体的宽高比与可视区域的宽高比的比值大于1,富媒体的宽度百分比为100%,即撑满左右;富媒体的高度百分比为该可视区域的宽高比与该富媒体的高宽比乘积的百分比。该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为100%减去该富媒体的高度百分比后再除以2,也就是上下出现黑色区域。
若选取的填充模式为fill填充,则获取该富媒体宽高比与该可视区域的宽高比的比值,当该比值大于1,则该富媒体的高度百分比为100%,该富媒体的宽度百分比为该可视区域的高宽比与该富媒体的宽高比乘积的百分比,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为0,该富媒体的宽度方向上的第一侧距该可视区域的宽度方向上的第一侧的百分比为100%减去该富媒体的宽度百分比后再除以2;
当该比值小于或等于1,则该富媒体的宽度百分比为100%,该富媒体的高度百分比为该可视区域的宽高比与该富媒体的高宽比乘积的百分比,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为100%减去该富媒体的高度百分比后再除以2,该富媒体的宽度方向上的第一侧距该可视区域的宽度方向上的第一侧的百分比为0。
若选取的填充模式为拉伸,则该富媒体的宽度百分比为100%,该富媒体的高度百分比为100%,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为0,该富媒体的宽度方向上的第一侧距该可视区域的宽度方向上的第一侧的百分比为0。
图6为一个实施例中拉伸模式的效果示意图。如图6所示,富媒体的图像被拉伸后,图像发生了变形。
若选取的填充模式为居中,则该富媒体的宽度为该富媒体的原始宽度,该富媒体的高度为该富媒体的原始高度,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部为该可视区域的高度与该富媒体的高度的差的一半,该富媒体的宽度方向上的第一侧与该可视区域的宽度方向上的第一侧的距离为该可视区域的宽度与该富媒体的宽度的差的一半。
上述各填充模式计算富媒体的缩放百分比的代码可如下,其中,width和height分别是可视区域的宽和高,canvasWidth和canvasHeight分别是指富媒体的宽和高;rate为(this.canvasWidth/this.canvasHeight)/(this.width/this.height)的值。
其中,“/”表示除法运算,“*”表示乘法运算。
在一个实施例中,上述Web富媒体跨屏适配方法还包括:提供全屏组件,并将全屏组件展示在富媒体上;获取对该全屏组件的触发操作,将富媒体进行全屏展示或退回到原始状态。全屏模式的实现可采用如下代码实现:
在Web程序的HTML中插入上述代码,其中,#ourCanvas为id是ourCanvas的canvas,需要添加全屏效果的canvas,其中的center代表填充模式,即显示比例不变,宽高不变,居中显示。
全屏是指载体(设备的浏览器或应用程序里的webview)内部全屏。当浏览器或webview等是全屏时,富媒体也是全屏;当浏览器或webview等是分屏时,富媒体处于分屏。不论载体是全屏还是分屏都可采用上述Web富媒体跨屏适配方法对富媒体进行处理。
在一个实施例中,上述Web富媒体跨屏视频方法还包括:获取交互行为发生点的真实坐标位置。
交互行为发生点是指用户触摸或点击或其他交互行为产生的位置。
具体地,若富媒体canvas被各种css width和height属性放大或缩小,交互行为发生点相对于左上角的实际坐标重新计算。若富媒体canvas有top boder或者left boder,交互行为发生点相对于左上角的实际坐标要减去boder的宽度。若boxsizing(盒子模型类型)为boder-box,交互行为发生点相对于左上角的实际坐标重新计算。
具体如下:
其中,先获取富媒体的样式信息,boxsizing盒子模型类型,borderTopWidth为上部分边框宽度,borderLeftWidth为左部分边框宽度,width为变形后宽度,height为变形后高度,pageX,pageY为交互行为发生点的坐标位置,this.offset[0]和this.offset[1]为富媒体左上角坐标在文档中的偏移量。
使用pageX-this.offset[0]-borderLeftWidth得到x坐标,使用pageY-this.offset[1]-borderTopWidth得到y坐标。若盒子模型类型为边框盒,则canvasWidth为富媒体变形后的真实宽度,等于width减去borderLeftWidth得到,canvasHeight为富媒体变形后的真实高度,等于height减去borderTopWidth得到。this.width为富媒体的真实宽度,this.height为富媒体的真实高度。
富媒体的真实宽度与富媒体变形后的真实宽度比值再乘以x坐标得到真实的坐标x,富媒体的真实高度与富媒体变形后的真实高度比值再乘以y坐标得到真实的坐标y。
图7A为原始图像在浏览器中的示意图;图7B为全屏适配后,光标移入出现全屏按钮;图7C为全屏展示的效果示意图。如图7A所示,图像占浏览器的可视区域的一部分;如图7B所示,光标移入后在图像的右上角出现了全屏按钮;如图7C所示,点击全屏按钮后,图像进行全屏展示,图像的填充方式为居中,则图像位于可视区域中间,其他采用黑色填充。
图8为一个实施例中Flappy Bird富媒体在fill模式下适配不同屏幕尺寸的结果示意图。如图8所示,第一尺寸、第二尺寸、第三尺寸和第四尺寸,且第一尺寸、第二尺寸、第三尺寸和第四尺寸逐渐减小。Flappy Bird富媒体在fill模式下将第一尺寸、第二尺寸、第三尺寸和第四尺寸屏幕均填满。
图9为一个实施例中Flappy Bird富媒体在fit模式下适配不同屏幕尺寸的结果示意图。如图9所示,第一尺寸、第二尺寸、第三尺寸和第四尺寸,且第一尺寸、第二尺寸、第三尺寸和第四尺寸逐渐减小。Flappy Bird富媒体在fit模式下将第二尺寸、第三尺寸和第四尺寸屏幕均填满,在第一尺寸屏幕上将上下撑满,左右黑边。
此外,center上尺寸比例不变居中stretch是拉伸填满屏幕。
需要说明的是,上述Web富媒体跨屏适配方法,可适用于canvas/webgl或者Dom里内嵌的canvas/webgl的个人计算机或移动终端的网站或者HTML5动感创意网站或个人计算机或移动终端HTML5游戏应用等的适配,甚至适用于任意图片及HTML5SVG(ScalableVector Graphics,可缩放矢量图形)和HTML5Video的展示和播放,让开发人员不再关注屏幕的适配,专注于视觉的还原、交互和业务逻辑的实现,大大提高了工作效率。
相比于Flash,Flash是以插件形式存在浏览器中,且仅限于视频播放,且与某些设备的软件系统兼容性差。上述Web富媒体跨屏适配方法采用浏览器的HTML中插入函数代码直接实现,适用包含HTML5的复杂应用和游戏的适配和全屏,甚至适用于任意图片及HTML5SVG和HTML5Video的展示和播放。
图10为一个实施例中Web富媒体跨屏适配装置的结构框图。如图10所示,一种Web富媒体跨屏适配装置,包括第一获取模块1002、第二获取模块1004、第三获取模块1006、处理模块1008、配置模块1010和像素填充模块1012。其中:
第一获取模块1002用于通过浏览器的HTML中插入的函数代码直接获取浏览器的可视区域的宽和高;
第二获取模块1004用于通过浏览器的HTML中插入的函数代码直接获取富媒体的宽和高;
第三获取模块1006用于通过浏览器的HTML中插入的函数代码直接获取选取的填充模式;
处理模块1008用于通过浏览器的HTML中插入的函数代码直接根据该可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取该富媒体的缩放百分比;
配置模块1010用于通过浏览器的HTML中插入的函数代码直接根据该富媒体的缩放百分比确定该富媒体在该可视区域的位置,将该富媒体配置在该可视区域的相应位置中;
像素填充模块1012用于通过浏览器的HTML中插入的函数代码直接对该富媒体配置在该可视区域后的空白像素进行像素填充。
本实施例中,该像素填充模块1012还用于对该富媒体配置在该可视区域后的空白像素采用插值法进行像素填充。
上述Web富媒体跨屏适配装置,通过获取浏览器的可视区域的宽和高、富媒体的宽和高以及填充模式,并得到富媒体的缩放百分比,根据富媒体缩放百分比确定富媒体在可视区域的位置,并对配置富媒体到可视区域后的空白像素进行填充,使得富媒体在浏览器的可视区域中展示,能够适配不同屏幕尺寸的设备,不需开发人员再关注屏幕的适配,提高工作效率;且对富媒体进行像素填充,使得产生超分辨率的缩放效果。
在一个实施例中,该处理模块1008还用于若选取的填充模式为fit适应,获取该富媒体宽高比与该可视区域的宽高比的比值,当该比值大于1,则该富媒体的宽度百分比为100%,该富媒体的高度百分比为该可视区域的宽高比与该富媒体的高宽比乘积的百分比,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为100%减去该富媒体的高度百分比后再除以2,该富媒体的宽度方向上的第一侧距该可视区域的宽度方向上的第一侧的百分比为0;
当该比值小于或等于1,则该富媒体的高度百分比为100%,该富媒体的宽度百分比为该可视区域的高宽比与该富媒体的宽高比乘积的百分比,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为0,该富媒体的宽度方向上的第一侧距该可视区域的宽度方向上的第一侧的百分比为100%减去该富媒体的宽度百分比后再除以2;
以及该处理模块1008还用于若选取的填充模式为fill填充,则获取该富媒体宽高比与该可视区域的宽高比的比值,当该比值大于1,则该富媒体的高度百分比为100%,该富媒体的宽度百分比为该可视区域的高宽比与该富媒体的宽高比乘积的百分比,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为0,该富媒体的宽度方向上的第一侧距该可视区域的宽度方向上的第一侧的百分比为100%减去该富媒体的宽度百分比后再除以2;
当该比值小于或等于1,则该富媒体的宽度百分比为100%,该富媒体的高度百分比为该可视区域的宽高比与该富媒体的高宽比乘积的百分比,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为100%减去该富媒体的高度百分比后再除以2,该富媒体的宽度方向上的第一侧距该可视区域的宽度方向上的第一侧的百分比为0。
该处理模块1008还用于若选取的填充模式为拉伸,则该富媒体的宽度百分比为100%,该富媒体的高度百分比为100%,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部的百分比为0,该富媒体的宽度方向上的第一侧距该可视区域的宽度方向上的第一侧的百分比为0;以及
该处理模块1008还用于若选取的填充模式为居中,则该富媒体的宽度为该富媒体的原始宽度,该富媒体的高度为该富媒体的原始高度,该富媒体的高度方向上的顶部距该可视区域的高度方向上的顶部为该可视区域的高度与该富媒体的高度的差的一半,该富媒体的宽度方向上的第一侧与该可视区域的宽度方向上的第一侧的距离为该可视区域的宽度与该富媒体的宽度的差的一半。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的非易失性存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (14)
1.一种Web富媒体跨屏适配方法,包括:
通过浏览器的HTML中插入的函数代码直接执行以下步骤:
通过窗口宽度函数代码和窗口高度函数代码分别获取浏览器的可视区域的宽和高;
通过画布宽度函数代码和画布高度函数代码分别获取富媒体的宽和高;所述富媒体包括用canvas和webgl中一种写的应用程序或游戏;
获取选取的填充模式;
根据所述可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取所述富媒体的缩放百分比;
根据所述富媒体的缩放百分比确定所述富媒体在所述可视区域的位置,将所述富媒体配置在所述可视区域的相应位置中;
对所述富媒体配置在所述可视区域后的空白像素进行像素填充;
当所述富媒体发生交互行为时,获得交互行为发生点的经过重新计算的真实坐标位置。
2.根据权利要求1所述的方法,其特征在于,所述根据所述可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取所述富媒体的缩放百分比的步骤包括:
若选取的填充模式为fit适应,获取所述富媒体宽高比与所述可视区域的宽高比的比值,当所述比值大于1,则所述富媒体的宽度百分比为100%,所述富媒体的高度百分比为所述可视区域的宽高比与所述富媒体的高宽比乘积的百分比,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部的百分比为100%减去所述富媒体的高度百分比后再除以2,所述富媒体的宽度方向上的第一侧距所述可视区域的宽度方向上的第一侧的百分比为0;
当所述比值小于或等于1,则所述富媒体的高度百分比为100%,所述富媒体的宽度百分比为所述可视区域的高宽比与所述富媒体的宽高比乘积的百分比,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部的百分比为0,所述富媒体的宽度方向上的第一侧距所述可视区域的宽度方向上的第一侧的百分比为100%减去所述富媒体的宽度百分比后再除以2。
3.根据权利要求1所述的方法,其特征在于,所述根据所述可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取所述富媒体的缩放百分比的步骤包括:
若选取的填充模式为fill填充,则获取所述富媒体宽高比与所述可视区域的宽高比的比值,当所述比值大于1,则所述富媒体的高度百分比为100%,所述富媒体的宽度百分比为所述可视区域的高宽比与所述富媒体的宽高比乘积的百分比,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部的百分比为0,所述富媒体的宽度方向上的第一侧距所述可视区域的宽度方向上的第一侧的百分比为100%减去所述富媒体的宽度百分比后再除以2;
当所述比值小于或等于1,则所述富媒体的宽度百分比为100%,所述富媒体的高度百分比为所述可视区域的宽高比与所述富媒体的高宽比乘积的百分比,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部的百分比为100%减去所述富媒体的高度百分比后再除以2,所述富媒体的宽度方向上的第一侧距所述可视区域的宽度方向上的第一侧的百分比为0。
4.根据权利要求1所述的方法,其特征在于,所述根据所述可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取所述富媒体的缩放百分比的步骤包括:
若选取的填充模式为拉伸,则所述富媒体的宽度百分比为100%,所述富媒体的高度百分比为100%,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部的百分比为0,所述富媒体的宽度方向上的第一侧距所述可视区域的宽度方向上的第一侧的百分比为0。
5.根据权利要求1所述的方法,其特征在于,所述根据所述可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取所述富媒体的缩放百分比的步骤包括:
若选取的填充模式为居中,则所述富媒体的宽度为所述富媒体的原始宽度,所述富媒体的高度为所述富媒体的原始高度,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部为所述可视区域的高度与所述富媒体的高度的差的一半,所述富媒体的宽度方向上的第一侧与所述可视区域的宽度方向上的第一侧的距离为所述可视区域的宽度与所述富媒体的宽度的差的一半。
6.根据权利要求1所述的方法,其特征在于,所述对所述富媒体配置在所述可视区域后的空白像素进行像素填充的步骤包括:
对所述富媒体配置在所述可视区域后的空白像素采用插值法进行像素填充。
7.一种Web富媒体跨屏适配装置,其特征在于,包括:
第一获取模块,用于通过浏览器的HTML中插入的窗口宽度函数代码和窗口高度函数代码直接获取浏览器的可视区域的宽和高;
第二获取模块,用于通过浏览器的HTML中插入的画布宽度函数代码和画布高度函数代码直接获取富媒体的宽和高;所述富媒体包括用canvas和webgl中一种写的应用程序或游戏;
第三获取模块,用于通过浏览器的HTML中插入的函数代码直接获取选取的填充模式;
处理模块,用于通过浏览器的HTML中插入的函数代码直接根据所述可视区域的宽和高、富媒体的宽和高以及选取的填充模式获取所述富媒体的缩放百分比;
配置模块,用于通过浏览器的HTML中插入的函数代码直接根据所述富媒体的缩放百分比确定所述富媒体在所述可视区域的位置,将所述富媒体配置在所述可视区域的相应位置中;
像素填充模块,用于通过浏览器的HTML中插入的函数代码直接对所述富媒体配置在所述可视区域后的空白像素进行像素填充;
所述处理模块还用于当所述富媒体发生交互行为时,获得交互行为发生点的经过重新计算的真实坐标位置。
8.根据权利要求7所述的装置,其特征在于,所述处理模块还用于若选取的填充模式为fit适应,获取所述富媒体宽高比与所述可视区域的宽高比的比值,当所述比值大于1,则所述富媒体的宽度百分比为100%,所述富媒体的高度百分比为所述可视区域的宽高比与所述富媒体的高宽比乘积的百分比,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部的百分比为100%减去所述富媒体的高度百分比后再除以2,所述富媒体的宽度方向上的第一侧距所述可视区域的宽度方向上的第一侧的百分比为0;
当所述比值小于或等于1,则所述富媒体的高度百分比为100%,所述富媒体的宽度百分比为所述可视区域的高宽比与所述富媒体的宽高比乘积的百分比,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部的百分比为0,所述富媒体的宽度方向上的第一侧距所述可视区域的宽度方向上的第一侧的百分比为100%减去所述富媒体的宽度百分比后再除以2。
9.根据权利要求7所述的装置,其特征在于,所述处理模块还用于若选取的填充模式为fill填充,则获取所述富媒体宽高比与所述可视区域的宽高比的比值,当所述比值大于1,则所述富媒体的高度百分比为100%,所述富媒体的宽度百分比为所述可视区域的高宽比与所述富媒体的宽高比乘积的百分比,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部的百分比为0,所述富媒体的宽度方向上的第一侧距所述可视区域的宽度方向上的第一侧的百分比为100%减去所述富媒体的宽度百分比后再除以2;
当所述比值小于或等于1,则所述富媒体的宽度百分比为100%,所述富媒体的高度百分比为所述可视区域的宽高比与所述富媒体的高宽比乘积的百分比,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部的百分比为100%减去所述富媒体的高度百分比后再除以2,所述富媒体的宽度方向上的第一侧距所述可视区域的宽度方向上的第一侧的百分比为0。
10.根据权利要求7所述的装置,其特征在于,所述处理模块还用于若选取的填充模式为拉伸,则所述富媒体的宽度百分比为100%,所述富媒体的高度百分比为100%,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部的百分比为0,所述富媒体的宽度方向上的第一侧距所述可视区域的宽度方向上的第一侧的百分比为0。
11.根据权利要求7所述的装置,其特征在于,所述处理模块还用于若选取的填充模式为居中,则所述富媒体的宽度为所述富媒体的原始宽度,所述富媒体的高度为所述富媒体的原始高度,所述富媒体的高度方向上的顶部距所述可视区域的高度方向上的顶部为所述可视区域的高度与所述富媒体的高度的差的一半,所述富媒体的宽度方向上的第一侧与所述可视区域的宽度方向上的第一侧的距离为所述可视区域的宽度与所述富媒体的宽度的差的一半。
12.根据权利要求7所述的装置,其特征在于,所述像素填充模块还用于对所述富媒体配置在所述可视区域后的空白像素采用插值法进行像素填充。
13.一种终端,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
14.一种非易失性计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610255770.XA CN105930464B (zh) | 2016-04-22 | 2016-04-22 | Web富媒体跨屏适配方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610255770.XA CN105930464B (zh) | 2016-04-22 | 2016-04-22 | Web富媒体跨屏适配方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105930464A CN105930464A (zh) | 2016-09-07 |
CN105930464B true CN105930464B (zh) | 2021-07-13 |
Family
ID=56839746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610255770.XA Active CN105930464B (zh) | 2016-04-22 | 2016-04-22 | Web富媒体跨屏适配方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105930464B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106658121B (zh) * | 2016-12-22 | 2019-06-11 | 深圳创维数字技术有限公司 | 一种机顶盒显示指纹信息的方法及系统 |
CN107092684B (zh) * | 2017-04-21 | 2018-09-04 | 腾讯科技(深圳)有限公司 | 图像处理方法及装置、存储介质 |
CN107197329A (zh) * | 2017-06-16 | 2017-09-22 | 广州市百果园信息技术有限公司 | 视频编码方法及装置、存储介质 |
CN110020276B (zh) * | 2017-08-22 | 2021-05-28 | 武汉斗鱼网络科技有限公司 | 一种app中嵌入h5页面的兼容性处理方法及装置 |
CN114296852A (zh) * | 2021-12-28 | 2022-04-08 | 挂号网(杭州)科技有限公司 | 一种显示目标页面的方法、装置、电子设备及存储介质 |
CN115022708B (zh) * | 2022-05-31 | 2024-03-12 | 咪咕视讯科技有限公司 | 多屏互动方法、装置、网络设备及终端 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905643A (zh) * | 2014-03-26 | 2014-07-02 | 北京京东尚科信息技术有限公司 | 一种单一背景图片手机适配方法及系统 |
CN104679432A (zh) * | 2015-03-04 | 2015-06-03 | 成都品果科技有限公司 | 一种基于移动端浏览器跨平台人机交互浏览图片的方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060036770A1 (en) * | 2004-07-30 | 2006-02-16 | International Business Machines Corporation | System for factoring synchronization strategies from multimodal programming model runtimes |
US20080222273A1 (en) * | 2007-03-07 | 2008-09-11 | Microsoft Corporation | Adaptive rendering of web pages on mobile devices using imaging technology |
CN102202100B (zh) * | 2007-10-24 | 2012-07-04 | 优视科技有限公司 | 微浏览器处理网络数据的方法、微浏览器及其服务器 |
CN101853121A (zh) * | 2010-03-02 | 2010-10-06 | 深圳市同洲电子股份有限公司 | 一种基于重力感应器的图片浏览方法和装置 |
CN102682014A (zh) * | 2011-03-14 | 2012-09-19 | 腾讯科技(深圳)有限公司 | 在浏览器上实现的开放式插件管理平台及插件管理方法 |
CN104090923B (zh) * | 2012-05-04 | 2018-06-26 | 北京奇虎科技有限公司 | 一种浏览器中的富媒体信息的展示方法和装置 |
CN103116490B (zh) * | 2012-12-04 | 2016-06-29 | 广州市久邦数码科技有限公司 | 一种基于网页的九切图绘制方法 |
CN103530079A (zh) * | 2013-09-30 | 2014-01-22 | 山西云途信息技术有限公司 | 一种适配不同分辨率的移动终端的图片显示方法及装置 |
CN104202677B (zh) * | 2014-09-12 | 2018-10-16 | 三星电子(中国)研发中心 | 支持多窗口应用的多屏显示和控制的方法与装置 |
-
2016
- 2016-04-22 CN CN201610255770.XA patent/CN105930464B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905643A (zh) * | 2014-03-26 | 2014-07-02 | 北京京东尚科信息技术有限公司 | 一种单一背景图片手机适配方法及系统 |
CN104679432A (zh) * | 2015-03-04 | 2015-06-03 | 成都品果科技有限公司 | 一种基于移动端浏览器跨平台人机交互浏览图片的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105930464A (zh) | 2016-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105930464B (zh) | Web富媒体跨屏适配方法和装置 | |
CN110058685B (zh) | 虚拟对象的显示方法、装置、电子设备和计算机可读存储介质 | |
US8619083B2 (en) | Multi-layer image composition with intermediate blending resolutions | |
USRE43742E1 (en) | Method and system for enhanced detail-in-context viewing | |
JP3153640B2 (ja) | 高解像度データの低解像度表示へのマッピングプロセス | |
TWI637355B (zh) | 紋理貼圖之壓縮方法及其相關圖像資料處理系統與產生360度全景視頻之方法 | |
CN110795177B (zh) | 图形绘制方法及装置 | |
CN109636885B (zh) | 一种用于h5页面的序列帧动画制作方法和系统 | |
CN103702032A (zh) | 图像处理方法、装置和终端设备 | |
CN112764752A (zh) | 页面的展示方法和装置、存储介质、电子装置 | |
CN111179159A (zh) | 消除视频中目标影像的方法、装置、电子设备及存储介质 | |
CN114298900A (zh) | 图像超分方法和电子设备 | |
CN110599564A (zh) | 图像展示方法、装置、计算机设备和存储介质 | |
Patel et al. | Accelerated seam carving for image retargeting | |
CN109065001B (zh) | 一种图像的降采样方法、装置、终端设备和介质 | |
US20130236117A1 (en) | Apparatus and method for providing blurred image | |
CN109766530B (zh) | 图表边框的生成方法、装置、存储介质和电子设备 | |
CN113096217B (zh) | 图片生成方法、装置、电子设备以及存储介质 | |
CN102119409A (zh) | 描绘装置以及描绘方法 | |
CN112508831B (zh) | 一种超声宽景图像生成方法、装置、设备及存储介质 | |
CN114612294A (zh) | 一种图像超分辨率处理方法和计算机设备 | |
CN111078351B (zh) | 一种动态演示界面的加载方法及系统 | |
CN112583976B (zh) | 图形码显示方法、设备及可读存储介质 | |
CN113721818B (zh) | 图像处理方法、装置、设备和计算机可读存储介质 | |
CN113112395B (zh) | 图片处理方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |