本发明属于计算机,具体涉及一种视频中文字图层版式批量更新方法、装置、设备及介质。
背景技术:
1、随着社会的发展,人们对于审美的需求越来越高,文字通过自身字形字体的符号属性可以更加直观的表现画面美感,不同的字体有着不同的气质和表现力,而在文字图层内容丰富的工程中,更改其中一个图层版式后,其余文字图层版式设计需要与其进行统一,目前的传统解决方法是逐个合成选中文字图层进行更改,容易造成漏选、选错,且效率低下。
2、鉴于以上,需要一种简易且高效的处理方法。
技术实现思路
1、本发明的目的在于提供一种视频中文字图层版式批量更新方法、装置、设备及介质。
2、第一方面,本发明提供一种视频中文字图层版式批量更新方法,包括以下步骤:
3、s1、打开包含文字图层的aftereffects项目;
4、s2、选中合成窗口中的一个文字图层并将其调整为指定的文字样式;
5、s3、响应于用户的复制操作,将当前选定的文字图层的文字样式复制到一个变量中,以便于后续对其进行存储和复用;
6、s4、响应于用户的粘贴操作,遍历当前项目中的所有合成项,筛选出所有的文字图层;
7、s5、基于所复制的文字样式,对当前项目中所有文字图层的文字样式执行批量更新。
8、进一步地,所述s3和s4中,用户基于一个名为“批量更改文字”的窗口进行交互操作,所述窗口内具有"复制文字属性"和"粘贴文字属性"两个功能按钮,所述“批量更改文字”的窗口的创建方法如下:
9、创建一个窗口对象作为批量更改文字的操作界面,并设定其标题、位置及尺寸信息;
10、添加一个用于触发复制文字属性功能的按钮对象,定义其按钮名字"复制文字属性"以及按钮的位置和像素大小;
11、再次添加一个用于触发粘贴文字属性功能的按钮对象,定义其按钮名字"粘贴文字属性"以及按钮的位置和像素大小;
12、调用show()方法使窗口对象在屏幕上可见,供用户与之交互。
13、进一步地,所述s3中,系统调用function函数定义点击事件处理函数,当用户触发复制功能时,执行以下方法:
14、s31、用if循环检查当前选择的图层数量是否大于1;如是,则表示选中了多个图层,无法继续执行后续操作,直接返回;如否,则表示只有一个图层被选中,继续执行s32;
15、s32、用var函数将选中的图层赋值给变量originallayer;
16、s33、用if循环判断所述变量originallayer是否为空或者文字图层,如判断为空,则表示未选中文字图层,直接返回,不继续执行后续操作;如判断为文字图层,则继续执行s34;
17、s34、用var函数获取文字图层originallayer的属性值,并将其赋值给originaltextdoc变量;其中,调用property"方法获得文字图层的属性集合adbe textproperties及其子属性adbe text document,所述属性集合adbe text properties包含控制文本外观和动画的各种属性,如字体、大小、对齐方式、描边等;所述子属性adbetextdocument用于表示文字图层的文本内容。
18、s35、将originaltextdoc赋值给originalstyles变量,表示将选定文字图层的文字属性保存在originalstyles变量中。
19、进一步地,所述s4中,系统调用function函数定义点击事件处理函数,当用户触发粘贴功能时,遍历当前项目中的所有合成项,筛选出所有文字图层,具体包括以下步骤:
20、s41、通过if循环检查所述originalstyles变量是否为空,以确定是否有可用的样式信息;如为空,则返回,不执行后续的操作,如不为空,则执行s42;
21、s42、用for循环定义一个初始值m=1,循环条件是m<=app.project.numitems,即循环变量m小于等于项目中的总项数,每循环一次循环变量m自增1。在每次循环迭代中,通过app.project.item(m)获取项目中的第m个项,并将其赋值给变量curitem;
22、s43、基于for循环中所嵌套的if循环语句块,来检查变量curitem是否属于compitem类型,即判断当前项是否是一个合成项;
23、如果是合成项,在if语句块内部通过另一个循环变量n遍历当前合成项中的图层,初始值为1,循环条件是n<=curitem.numlayers,即循环变量n小于等于当前合成项中的图层数。每循环一次循环变量n自增1。在每次循环迭代中,通过curitem.layer(n)获取当前合成项中的第n个图层,并使用instanceof运算符判断该图层是否属于textlayer类型,即判断当前图层是否是文字图层,直至筛选出所有的文字图层。
24、进一步地,所述s5中,调用updatetextstyles 函数对筛选出的当前项目的所有文字图层的文字进行样式更新,即:将s2指定的文字样式设置为当前项目中所有文字图层的文字样式,具体步骤如下:
25、s51、用变量 curtext代表s2选中的文字图层,用property 方法访问curtext变量,以获取s2选中的文字图层的字体、字号、是否应用填充、颜色、描边、字距、对齐方式等文字属性,并将所述文字属性赋值存储在变量textdoc中;
26、s52、通过设置textdoc.font=originalstyles.font,将s51中textdoc变量所存储的文字属性设置为s35中originalstyles变量所存储的文字属性,也即将当前项目中所有文字图层的字体样式更改为当前选定文字图层的字体样式;
27、s53、通过property 对象属性访问源文本source text属性(这个属性可以控制文本的字体、颜色、大小、对齐方式等),调用setvalue函数将更新后的 textdoc 文字图层属性应用到文字图层的源文本source text 属性上,从而实现动态批量更改文字图层样式的效果。
28、进一步地,所述s52中,对当前项目中所有文字图层的字体样式的更改过程包括:
29、调用变量originalstyles中的originalstyles.font属性(用于存储字体样式信息,比如字体名称、字体大小、字体颜色等),将变量originalstyles存储的字体样式应用到一个名为textdoc的文本对象上,从而将当前指定文字图层的字体属性应用在项目所有文字图层的文字样式上;
30、调用变量originalstyles中的originalstyles.fontsize属性,将变量originalstyles存储的字号值应用到一个名为textdoc的文本对象上,从而将当前指定文字图层的字号值应用在项目所有文字图层的文字样式上;
31、调用变量originalstyles 的 originalstyles.applyfill属性,将变量originalstyles存储的填充值应用到一个名为textdoc的文本对象上,从而将当前指定文字图层的填充值应用在项目所有文字图层的文字样式上;
32、调用变量originalstyles的originalstyles.tracking属性,将变量originalstyles存储的字距应用到一个名为textdoc的文本对象上,从而将当前指定文字图层的字距应用在项目所有文字图层的文字样式上;
33、调用变量originalstyles的originalstyles.justification属性,将justification属性的值赋给textdoc文本对象的justification属性,从而将当前指定文字图层的对齐方式应用在项目所有文字图层的文字样式上。
34、第二方面,本发明提供一种视频中文字图层版式批量更新装置,包括以下功能模块:
35、初始化模块,用以打开包含文字图层的aftereffects项目;
36、选择模块,用以选中合成窗口中的一个文字图层并将其调整为指定的文字样式;
37、复制模块,用以响应于用户的复制操作,将当前选定的文字图层的文字样式复制到一个变量中,以便于后续对其进行存储和复用;
38、粘贴模块,用以响应于用户的粘贴操作,遍历当前项目中的所有合成项,筛选出所有的文字图层;
39、更新模块,用以基于所复制的文字样式,对当前项目中所有文字图层的文字样式执行批量更新。
40、第三方面,本技术公开了一种电子设备,包括:存储器,用于保存计算机程序;处理器,用于执行所述计算机程序,以实现前述的视频中文字图层版式批量更新方法。
41、第四方面,本技术公开了一种计算机可读存储介质,用于存储计算机程序;其中计算机程序被处理器执行时实现前述的视频中文字图层版式批量更新方法。
42、与现有技术相比,使用本发明批量更换字体样式的方法可以高效处理日常工作,具体包含以下方面:
43、1.效率提升:使用插件批量更换字体可以极大地提高工作效率。对于包含大量文字图层的项目,手动更换每一个图层的字体非常耗时。插件可以在几秒钟内完成这一任务,节省大量的时间和劳力。
44、2.统一风格:在制作动画或视频项目时,统一的视觉风格是非常重要的。批量更换字体样式的插件能够保证项目中所有文本元素的字体风格一致,有助于维护整体的美观和专业度。
45、3.易于修改和调整:在设计和后期制作过程中,客户或设计师可能需要更改字体风格来适应不同的视觉需求或品牌标准。有了批量更换字体的插件,这种修改可以迅速而轻松地完成,大大提高了项目的可调整性。
46、4.错误减少:手动更换字体可能会引入错误,如选错字体或不一致的应用。使用插件可以减少这些错误,因为所有的更换都是自动和一致的,从而提高最终产出的质量。
47、5.兼容性和灵活性:可以方便更换多种文本的字体,使设计师能够灵活地应对不同的设计需求和挑战。
1.一种视频中文字图层版式批量更新方法,其特征在于,包括以下步骤:
2.如权利要求1所述的一种视频中文字图层版式批量更新方法,其特征在于,所述s3和s4中,用户基于一个名为“批量更改文字”的窗口进行交互操作,所述窗口内具有"复制文字属性"和"粘贴文字属性"两个功能按钮,所述“批量更改文字”的窗口的创建方法如下:
3.如权利要求2所述的一种视频中文字图层版式批量更新方法,其特征在于,所述s3中,系统调用function函数定义点击事件处理函数,当用户触发复制功能时,执行以下方法:
4.如权利要求3所述的一种视频中文字图层版式批量更新方法,其特征在于,所述s4中,系统调用function函数定义点击事件处理函数,当用户触发粘贴功能时,遍历当前项目中的所有合成项,筛选出所有文字图层,具体包括以下步骤:
5.如权利要求4所述的一种视频中文字图层版式批量更新方法,其特征在于,所述s5中,调用updatetextstyles 函数对筛选出的当前项目的所有文字图层的文字进行样式更新,即:将s2指定的文字样式设置为当前项目中所有文字图层的文字样式,具体步骤如下:
6.如权利要求5所述的一种视频中文字图层版式批量更新方法,其特征在于,所述s52中,对当前项目中所有文字图层的字体样式的更改过程包括:
7.一种视频中文字图层版式批量更新装置,用以实施权利要求1至6任一项所述的一种视频中文字图层版式批量更新方法,其特征在于,包括:
8.一种电子设备,其特征在于,包括:存储器,用于保存计算机程序;处理器,用于执行所述计算机程序,以实现如权利要求1至6任一项所述的一种视频中文字图层版式批量更新方法。
9.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中计算机程序被处理器执行时实现如权利要求1至6任一项所述的一种视频中文字图层版式批量更新方法。
