一种效果百变的动画字幕绘制方法与流程

文档序号:11157371阅读:413来源:国知局
一种效果百变的动画字幕绘制方法与制造工艺

本发明涉及视频字幕领域,更具体的说,其涉及用于一种效果百变的动画字幕绘制方法。



背景技术:

随着移动互联网的普及,越来越多的人使用手机制作微视频并在线上分享。很多短片(如教学视频,搞笑短片等)需要字幕辅助说明。但市面上现有的字幕工具大多只能添加基本的静态文字,或者用一组图片序列保存动画字幕,体积大且可拓展性差。此外,简单的动画效果也不能满足多样化的制作需求。



技术实现要素:

本发明的目的在于提供一种效果百变的动画字幕绘制方法,使得每个动画只需一个配置文件,无需打包很多图片文件,体积小,在手机上性能良好。

为了解决上述技术问题,本发明的技术方案如下:

一种效果百变的动画字幕绘制方法,具体包括如下步骤:

101)绘制文字步骤:将文字绘制在另一个空白画面上,并传入OpenGL,所述OpenGL为定义了一个跨编程语言、跨平台的编程接口规格的专业的图形程序接口;

102)获取文字步骤:解析字幕配置文件,得到文字的属性,构造三次贝塞尔曲线,得到文字的路径及位置信息;

103)文字效果步骤:根据插值方式及动画属性计算出文字的动画矩阵,所述插入方式根据步骤102)获得的文字路径和位置信息,确定文字的位置矩阵,在每个文字的位置矩阵上叠加上动画矩阵,以达到动画效果;

104)渲染文字步骤:将步骤101)绘制得到的纹理传入OpenGL,由Shader即着色器进行渲染处理,并根据步骤103)得到的矩阵将文字纹理放到相应位置上,使其与背景视频或图片合成形成动画字幕效果。

进一步的,所述步骤101)中对绘制的每个文字进行测量计算文字在空白画面上所在的区域信息。

进一步的,所述步骤102)文字的属性包括曲线点坐标、动画属性、时间点和动画插值方式。

进一步的,所述动画属性包括位移,缩放,旋转,模糊。

进一步的,所述步骤102)获得文字的路径及位置信息采用如下公式(1):

[x,y]=(1-t)3P0+3(1-t)2tP1+3(1-t)2P2+t3P3 公式(1)

其中[x,y]为贝塞尔曲线上点的位置,t为贝塞尔曲线参数,且在0-1之间取值P0,P1,P2,P3为贝塞尔曲线上的四个控制点。

进一步的,所述步骤103)的动画插值方式包括三角变化、平滑变化、淡出变化和淡入变化,具体处理分别为如下公式(2)、公式(3)、公式(4)和公式(5),

R=(r<=0.5)?r=2.0*r:2.0*(1.0-r) 公式(2)

该公式(2)是条件表达式,表示如果r<=0.5成立,则r=2.0*r,如果r<=0.5不成立,则r=2.0*(1.0-r);

R=(1-r)*(1-r) 公式(4)

R=r*r 公式(5)

其中r为某一文字位置相对于整行文字宽度的比例,R为处理得到的系数;abs为一个浮点数取绝对值的函数。

本发明相比现有技术优点在于:

1.本发明的字幕文件,效果多样(包括逐字动画、整体文字运动、三维变换、文字模糊等)。只需改变配置文件的相关属性,理论上有无限的动画形式。

2.用户在手机端可以选择不同的动画模板,自由编辑文字内容,生成相应的动画字幕。

3.每个动画只需一个配置文件,无需打包很多图片文件,体积小,在手机上性能良好。

附图说明

图1为本发明一种效果百变的动画字幕绘制方法的流程图。

具体实施方式

下面结合附图和具体实施方式对本发明进一步说明。

如图1所示,一种效果百变的动画字幕绘制方法,具体包括如下步骤:

101)绘制文字步骤:将文字绘制在另一个空白画面上,并传入OpenGL,所述OpenGL为定义了一个跨编程语言、跨平台的编程接口规格的专业的图形程序接口。所述绘制的每个文字进行测量计算文字在空白画面上所在的区域信息。这就使得,每个动画只需一个配置文件,无需打包很多图片文件,其每个文字可以互相进行不同的搭配顺序选择,使得存储的动画文字体积小,存储量小,能在手机上性能良好的进行运行。

102)获取文字步骤:解析字幕配置文件,得到文字的属性,构造三次贝塞尔曲线,得到文字的路径及位置信息。所述文字的属性包括曲线点坐标、动画属性、时间点和动画插值方式。所述动画属性包括位移,缩放,旋转,模糊等。所述获得文字的路径及位置信息采用如下公式(1):

[x,y]=(1-t)3P0+3(1-t)2tP1+3(1-t)2P2+t3P3 公式(1)

其中[x,y]为贝塞尔曲线上点的位置,t为贝塞尔曲线参数,且在0-1之间取值P0,P1,P2,P3为贝塞尔曲线上的四个控制点。

103)文字效果步骤:根据插值方式及动画属性计算出文字的动画矩阵,所述插入方式根据步骤102)获得的文字路径和位置信息,确定文字的位置矩阵,在每个文字的位置矩阵上叠加上动画矩阵,以达到动画效果。所述的动画插值方式包括三角变化、平滑变化、淡出变化和淡入变化,具体处理分别为如下公式(2)、公式(3)、公式(4)和公式(5),

R=(r<=0.5)?r=2.0*r:2.0*(1.0-r) 公式(2)

该公式(2)是条件表达式,表示如果r<=0.5成立,则r=2.0*r,如果r<=0.5不成立,则r=2.0*(1.0-r);

R=(1-r)*(1-r) 公式(4)

R=r*r 公式(5)

其中r为某一文字位置相对于整行文字宽度的比例,R为处理得到的系数;abs为一个浮点数取绝对值的函数。

104)渲染文字步骤:将步骤101)绘制得到的纹理传入OpenGL,由Shader即着色器进行渲染处理,可以改变每个文字的颜色,透明度,模糊程度等,并且shader也有无限拓展性。根据步骤103)得到的矩阵将文字纹理放到相应位置上,使其与背景视频或图片合成,最终达到预期的动画字幕效果。

综上所述,在手机视频app中,选择影片后,再添加预设置下载的步骤101)的动画配置文件,用户可自行选择想要的效果或系统推荐的效果,去生成相应的动画,进行字幕的文字渲染。系统就可以通过上述的处理方法,在屏幕中,生成可见的动画字幕。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明构思的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1