一种点赞图片消失动画算法制造技术

技术编号:20005200 阅读:35 留言:0更新日期:2019-01-05 17:46
本发明专利技术涉及一种点赞图片消失动画算法包括如下步骤:设定一静态函数addHaloForImage,用于为图片设置光晕,静态函数的返回参数为Bitmap对象;生成一个画笔Paint对象p,设定画笔颜色为指定的光晕颜色,设置画笔遮罩滤镜,然后通过p.setMaskFilter(bmf)设置给画笔p,创建一个新的Bitmap对象d,创建一个画布对象Canvas c,参数是新的Bitmap对象d,在刚创建的画布对象Canvas c上绘制图像。本发明专利技术,在点赞图片消失动画中增加光晕效果,光晕围绕图片边缘形成,光晕的半径和颜色可以随意设置,不同的开发项目可根据需求进行自定义设置,可选择不同的图片,提高开发效率,用户体验更好。

A Kind of Disappearance Animation Algorithms for Point Praise Pictures

The invention relates to an animation algorithm for vanishing a dotted image, which includes the following steps: setting a static function addHaloForImage to set the halo for the image, and the return parameter of the static function is a Bitmap object; generating a brush Paint object p, setting the brush color to the specified halo color, setting the brush mask filter, and then setting the brush p to create the brush P through P. setMaskFilter (bmf). A new Bitmap object D creates a canvas object Canvas C. The parameter is a new Bitmap object d, which draws an image on the newly created canvas object Canvas C. The invention adds halo effect in the vanishing animation of point praise pictures, halo forms around the edge of pictures, halo radius and color can be set at will, different development projects can be customized according to needs, different pictures can be selected, development efficiency can be improved, and user experience is better.

【技术实现步骤摘要】
一种点赞图片消失动画算法
本专利技术涉及点赞功能交互设计
,具体说是一种点赞图片消失动画算法。
技术介绍
为了丰富点赞功能的动画效果,设计了全新的交互模式,用户点击点赞按钮后,会有一张或多张点赞图片呈现并逐渐移动消失,例如:图片先出现在下部,然后逐渐上移,在上移过程中逐渐消失。现有的图片消失动画,大多是简单的调整图片的透明度,动画效果单一,不能凸显个性化及App的精心设计,有必要对点赞图片消失动画进一步进行优化。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种点赞图片消失动画算法,在点赞图片消失动画中增加光晕效果,光晕围绕图片边缘形成,光晕的半径和颜色可以随意设置,不同的开发项目可根据需求进行自定义设置,可选择不同的图片,提高开发效率,用户体验更好。为达到以上目的,本专利技术采取的技术方案是:一种点赞图片消失动画算法,其特征在于,包括如下步骤:设定一静态函数addHaloForImage,用于为图片设置光晕,其中包括:变量bitmap,用于指定点赞图片的获取路径,变量haloWidthPx,用于设定光晕的范围,单位默认为像素值,变量haloColor,用于设定光晕颜色,静态函数的返回参数为Bitmap对象,该Bitmap对象即为用户可使用的带光晕的bitmap;从变量bitmap指定的获取路径得到点赞图片后,进行如下处理:生成一个画笔Paint对象p,调用p.setColor(haloColor)设定画笔颜色为指定的光晕颜色,调用BlurMaskFilter(haloWidthPx,BlurMaskFilter.Blur.SOLID)设置画笔遮罩滤镜,然后返回到MaskFilter的对象bmf,bmf作为模糊对象,通过p.setMaskFilter(bmf)设置给画笔p,创建一个新的Bitmap对象d,通过BitmapdcreateBitmap的api创建一个空的新的bitmap,大小与原始图像大小一致,在调用BitmapdcreateBitmap时,通过Bitmap.Config.ARGB_8888设定颜色属性为ARGB_8888,以提高图像清晰度,创建一个画布对象Canvasc,参数是新的Bitmap对象d,在刚创建的画布对象Canvasc上绘制图像。在上述技术方案的基础上,设定画笔颜色后,进一步调用p.setAntiAlias(true),启用画笔的抗锯齿效果,防止边缘的锯齿,调用p.setFilterBitmap(true)用来对位图进行滤波处理,提升动画清晰度。在上述技术方案的基础上,在调用BitmapdcreateBitmap时,大小与原始图像大小一致通过调用bitmap.getWidth()及bitmap.getHeight()实现。在上述技术方案的基础上,在刚创建的画布对象Canvasc上绘制图像,具体步骤如下:调用c.drawBitmap函数,参数是原始图像bitmap,设定绘制图形的起始点坐标,为从(haloWidthPx,haloWidthPx)坐标点开始绘制c.drawBitmap(bitmap.extractAlpha(),haloWidthPx,haloWidthPx,p),即从原始图像的左上角到遮罩距离进行绘制,设定使用画笔p,绘制出带遮罩滤镜效果的图片,然后,将原来的图形绘制上c.drawBitmap(bitmap,haloWidthPx,haloWidthPx,p),因为滤镜的半径是haloWidthPx,故需覆盖住已经呈现滤镜效果的图片上。在上述技术方案的基础上,在刚创建的画布对象Canvasc上绘制图像,还包括如下设置两张图片相交时的模式的步骤:调用画笔p的setXfermode方法p.setXfermode,设置画笔的setXfermode属性为PorterDuff.Mode.SRC_ATOP的叠加方式PorterDuffXfermode(PorterDuff.Mode.SRC_ATOP),取下层图像非交集部分与上层图像交集部分,使用画笔p在原始图像和目标图像进行叠加。本专利技术所述的点赞图片消失动画算法,在点赞图片消失动画中增加光晕效果,光晕围绕图片边缘形成,光晕的半径和颜色可以随意设置,不同的开发项目可根据需求进行自定义设置,可选择不同的图片,提高开发效率,用户体验更好。附图说明本专利技术有如下附图:图1本专利技术的流程图。具体实施方式以下结合附图对本专利技术作进一步详细说明。如图1所示,本专利技术所述的点赞图片消失动画算法,包括如下步骤:设定一静态函数addHaloForImage,用于为图片设置光晕,其中包括:变量bitmap,用于指定点赞图片的获取路径,变量haloWidthPx,用于设定光晕的范围,单位默认为像素值,变量haloColor,用于设定光晕颜色,静态函数的返回参数为Bitmap对象,该Bitmap对象即为用户可使用的带光晕的bitmap;从变量bitmap指定的获取路径得到点赞图片后,进行如下处理:生成一个画笔Paint对象p,调用p.setColor(haloColor)设定画笔颜色为指定的光晕颜色,调用BlurMaskFilter(haloWidthPx,BlurMaskFilter.Blur.SOLID)设置画笔遮罩滤镜,然后返回到MaskFilter的对象bmf,bmf作为模糊对象,通过p.setMaskFilter(bmf)设置给画笔p,创建一个新的Bitmap对象d,通过BitmapdcreateBitmap的api创建一个空的新的bitmap,大小与原始图像大小一致,在调用BitmapdcreateBitmap时,通过Bitmap.Config.ARGB_8888设定颜色属性为ARGB_8888,以提高图像清晰度,创建一个画布对象Canvasc,参数是新的Bitmap对象d,在刚创建的画布对象Canvasc上绘制图像。在上述技术方案的基础上,设定画笔颜色后,进一步调用p.setAntiAlias(true),启用画笔的抗锯齿效果,防止边缘的锯齿,调用p.setFilterBitmap(true)用来对位图进行滤波处理,提升动画清晰度。在上述技术方案的基础上,在调用BitmapdcreateBitmap时,大小与原始图像大小一致通过调用bitmap.getWidth()及bitmap.getHeight()实现,可采用以下代码:Bitmapd=Bitmap.createBitmap(bitmap.getWidth()+haloWidthPx*2,bitmap.getHeight()+haloWidthPx*2,Bitmap.Config.ARGB_8888)。在上述技术方案的基础上,在刚创建的画布对象Canvasc上绘制图像,具体步骤如下:调用c.drawBitmap函数,参数是原始图像bitmap,设定绘制图形的起始点坐标,为从(haloWidthPx,haloWidthPx)坐标点开始绘制c.drawBitmap(bitmap.extractAlpha(),haloWidthPx,haloWidthPx,p),即从原始图像的左上角到遮罩距离进行绘制,设定使用画笔p,绘制出带遮罩滤镜效果的图片,然后,将原来的图形绘制上本文档来自技高网...

【技术保护点】
1.一种点赞图片消失动画算法,其特征在于,包括如下步骤:设定一静态函数addHaloForImage,用于为图片设置光晕,其中包括:变量bitmap,用于指定点赞图片的获取路径,变量haloWidthPx,用于设定光晕的范围,单位默认为像素值,变量haloColor,用于设定光晕颜色,静态函数的返回参数为Bitmap对象,该Bitmap对象即为用户可使用的带光晕的bitmap;从变量bitmap指定的获取路径得到点赞图片后,进行如下处理:生成一个画笔Paint对象p,调用p.setColor(haloColor)设定画笔颜色为指定的光晕颜色,调用BlurMaskFilter(haloWidthPx, BlurMaskFilter.Blur.SOLID)设置画笔遮罩滤镜,然后返回到MaskFilter的对象bmf,bmf作为模糊对象,通过p.setMaskFilter(bmf) 设置给画笔p,创建一个新的Bitmap 对象d,通过Bitmapd createBitmap 的api创建一个空的新的bitmap,大小与原始图像大小一致,在调用Bitmapd createBitmap时,通过Bitmap.Config.ARGB_8888设定颜色属性为ARGB_8888,以提高图像清晰度,创建一个画布对象Canvas c,参数是新的Bitmap 对象d,在刚创建的画布对象Canvas c上绘制图像。...

【技术特征摘要】
1.一种点赞图片消失动画算法,其特征在于,包括如下步骤:设定一静态函数addHaloForImage,用于为图片设置光晕,其中包括:变量bitmap,用于指定点赞图片的获取路径,变量haloWidthPx,用于设定光晕的范围,单位默认为像素值,变量haloColor,用于设定光晕颜色,静态函数的返回参数为Bitmap对象,该Bitmap对象即为用户可使用的带光晕的bitmap;从变量bitmap指定的获取路径得到点赞图片后,进行如下处理:生成一个画笔Paint对象p,调用p.setColor(haloColor)设定画笔颜色为指定的光晕颜色,调用BlurMaskFilter(haloWidthPx,BlurMaskFilter.Blur.SOLID)设置画笔遮罩滤镜,然后返回到MaskFilter的对象bmf,bmf作为模糊对象,通过p.setMaskFilter(bmf)设置给画笔p,创建一个新的Bitmap对象d,通过BitmapdcreateBitmap的api创建一个空的新的bitmap,大小与原始图像大小一致,在调用BitmapdcreateBitmap时,通过Bitmap.Config.ARGB_8888设定颜色属性为ARGB_8888,以提高图像清晰度,创建一个画布对象Canvasc,参数是新的Bitmap对象d,在刚创建的画布对象Canvasc上绘制图像。2.如权利要求1所述的点赞图片消失动画算法,其特征在于:设定画笔颜色后,进一步调用p.setAntiAlias(true),启用画笔的抗锯齿效果,防止边缘的锯齿,调用p.setFilterBitmap(true...

【专利技术属性】
技术研发人员:孙征
申请(专利权)人:北京酷我科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1