krpano之字幕添加

字幕是指介绍语音的字幕,字幕随着语音的播放而滚动,随语音暂停而暂停。字幕添加的前提是用之前的方法添加过介绍语音。

原理:

字幕层在溢出隐藏的父元素中向右滑动,当点击声音控制按钮时,字幕位置被固定,再次点击时继续右滑。

效果截图:

步骤及原理:

1.在皮肤.xml文件中添加父元素layer

<!--字幕功能增加-父元素-->
<layer name="skin_subtitles" type="container" visible="true"  zorder="100"
       css="" maskchildren="true"
       style=" " align="top" edge="bottom" x="5" y="-5" rotate="0.0" width="70%" height="30px" scale="1.0"
       altscale="1.0" alpha="1.0" bgcolor="0xcccccc" bgalpha="1.0" onclick="" ondown="" onup="" onloaded="" >
</layer>

2.为每一个场景添加字幕。

  在每一个场景标签<scene>中添加字幕标签,模板为:

<!--字幕-->
<layer name="subtitles_text" url="%SWFPATH%/plugins/textfield.swf" align="right" edge="left" x="-150" y="0" parent="skin_subtitles"
       html="虚拟现实教学中心通过五大区域形成了课程讲解、沉浸式体验、一键式课程操作、角色扮演互动、课堂效果智能评估等完善的功能框架。"
       style=""
       widthss="1400"
       timess="30"
       zorder="101" enabled="false" background="false" border="false"
       visible="true" />

  其中自定义的属性及含义为:

    parent="skin_subtitles" 定义父元素,将字幕放入第一步定义好的父元素位置。

    html=“”   字幕内容,将需要显示的字幕输入,不可以换行。

    widthss=“1400”  字幕块的宽,也是字幕停止时,左端点的相对位置。需要手动输入,可通过F12查询字幕快的值。

    timess=“30” 介绍音频的长度。需手动输入,就是音频播放时间。用来控制字幕滚动时间。

3.介绍语音控制按钮(暂停/播放按钮)的属性修改

  3.1增加属性

    tfaaa=“true” 标识字幕显示动态。

  3.2 onclick方法中调用字幕控制方法。

    原介绍语音控制按钮:

<plugin name="snd"  style="skin_base|skin_glow" crop="0|768|64|64" align="righttop" x="15" y="17" scale="0.5" alpha="1"
        onloaded="if(ismobile,set(scale,1));"
        onclick="pausesoundtoggle(bggsnd1); switch(crop, 0|768|64|64, 64|768|64|64);"
        />

    修改后控制按钮:

<plugin name="snd"  style="skin_base|skin_glow" crop="0|768|64|64" align="righttop" x="15" y="17" scale="0.5" alpha="1"
        onloaded="if(ismobile,set(scale,1));" tfaaa="true"
        onclick="pausesoundtoggle(bggsnd1); switch(crop, 0|768|64|64, 64|768|64|64);subtitles_controller()"
        />

    字幕控制方法代码:(字幕控制方法代码插入至全局事件下方即可)

<!--字幕控制函数-->
    <action name="subtitles_controller">
        if(tfaaa,
        tween(layer[subtitles_text].x,get(layer[subtitles_text].x),0);set(tfaaa,false),
        mul(mh,layer[subtitles_text].timess,get(layer[subtitles_text].x));
        div(mh,get(mh),layer[subtitles_text].widthss);
        sub(mh,layer[subtitles_text].timess,get(mh));
        mod(md,get(mh),1);
        sub(mh,get(mh),get(md));
        tween(layer[subtitles_text].x,get(layer[subtitles_text].widthss),get(mh));
        set(tfaaa,true);
        );
    </action>

4.在tour.xml中添加全局事件

<events onremovepano="tween(layer[subtitles_text].x,-150,0.1);"
        onnewpano="tween(layer[subtitles_text].x,get(layer[subtitles_text].widthss),get(layer[subtitles_text].timess));" />

在切换场景时,上一个场景关闭,将字幕条放在父元素右边固定位置。下一个场景打开时字幕自动向右移。其移动结束位置,和移动时间设置为之前手动输入的数值。

但是场景中全局事件只能有一个,所以需要把这个整合到介绍语音的全局事件内。否则介绍语音不播放。

 <events onremovepano="stopsounds();tween(layer[subtitles_text].x,-150,0.1);"
         onnewpano="automusic();tween(layer[subtitles_text].x,get(layer[subtitles_text].widthss),get(layer[subtitles_text].timess));" />

原创:转载请标明出处

时间: 2024-09-30 07:56:50

krpano之字幕添加的相关文章

陈松松:四步教你轻松添加视频字幕,省时间

每个视频,都是你的金牌业务员 这是我写的第15篇视频营销原创文章 字幕,视频的必杀技! 现在大多数视频都在1-8分钟左右,好像太长的视频很少能看到了. 尤其是原创视频尤为明显! 先解释一下,这里所说的字幕可不是水印,很多朋友经常搞混,字幕是字幕,水印是水印. 你像电视剧,电影,包括你看到的视频栏目,往往演员或主讲人说的什么话,都在视频下方把原话以汉字或者英文等其他语言展现出来,这个就是我们所说的字幕! 有过视频剪辑经验的朋友,都清楚,添加字幕绝对是个细活,很花费时间,我之前并没有重视过这个字幕,

[C#]为微软ASP.NET官方教学视频增加字幕

前言 Microsoft Virtual Academy提供了学习ASP.NET的大量视频材料.(注1) 由于视频服务器位于海外,国内浏览速度并不理想,幸好官方提供了视频的下载地址以及英文字幕文件. 然而其提供下载的字幕文件仅为不带时间戳的文本文档,而页面上提供的带时间戳的字幕文件并非标准格式字幕文件,因此用C#制作了一个简单字幕制作程序. 需求 1.在提供的文本中提取字幕开始与结束时间戳.由于官方字幕文档只有开始时间,需要截取下一条字幕开始时间作为结束时间并进行微调: 2.将提取的时间戳扩展为

怎么用视频编辑软件制作字幕末屏停留

我们经常看到的新闻或者电影结束后,演员表等字幕上滚,但最后一行字却会在滚动到屏幕中间时停留好久然后滚走或消失,这样的效果使如何使用EDIUS非线性编辑软件制作的呢?下面,小编就来给大家讲解EDIUS字幕末屏停留的详细制作方法. 1.如果游走或上滚字幕的最后一屏需要在屏幕上停留一段时间,将时间线标尺拖曳到字幕的最后部分,鼠标右击该字幕,选择“字幕详细设置”: 2.在弹出的“字幕详细设置”对话框中,将“结束”设置为“位置”,后面的像素是可以调整最后一屏字幕停留的位置的:在出点中设置最后一屏停留的帧数

团队项目推荐:手机社交照片管理软件——by Zhaofan

我们来到微软亚洲研究院做实习已经超过一个半月的时间,逐渐熟悉了这里的环境和氛围,也终于逐渐开始了我们在这里的课程.作为高级软件工程(ASE)的重头戏,由一个小组同学共同完成的团队项目,无疑将会是我们接下来几个月学习与工作的重心.在上周二的ASE课中,我们了解了这个课程的安排与要求,并完成了组队.经过课后的思考与初步调研,我推荐“手机社交照片管理软件”作为我们团队项目的题目. 在社交媒体爆发式发展的今天,通过社交媒体分享自己的经历已经成为许多人日常生活的一部分.在众多的社交媒体的类别中,分享照片无

视频滤镜参数

在配置编译FFmpeg时可以通过--disable-filters来禁止所有滤镜的编译.也可以配置编译脚本来输出所有包含进编译的滤镜信息.下面是当前可用的视频滤镜介绍. alphaextract 把输入视频作为灰度视频来提取透明通道,它通常和alphamerge滤镜联用. alphamerge 通过添加或者替换透明通道,让主要视频与另外一路视频混合.这里主要是使用alphaextract来让不支持透明通道的视频成为允许传输或存储帧透明的帧序列 例如:为了重建完整的帧,让一个普通的YUV编码视频和

PR视屏剪切

一款常用的视频编辑软件,由Adobe公司推出.现在常用的有CS4.CS5.CS6.CC.CC 2014及CC 2015版本.是一款编辑画面质量比较好的软件,有较好的兼容性,且可以与Adobe公司推出的其他软件相互协作.目前这款软件广泛应用于广告制作和电视节目制作中. 其最新版本为Adobe Premiere Pro CC 2015. 软件名称 adobe premiere 开发商 Adobe公司 软件平台 WIN XP ,WIN 7 ,WIN 8, WIN 10, Mac OS X 软件版本 最

关于我们:91录课

91录课,一家致力于制作专业课件的机构.课件的几个重要的阶段,从摄像机直接拍摄,再到三分屏课件制作,103寸背投大屏,4K液晶.虚拟演播室,我们都完整的经历过.10年来,我们专注于课件制作. 课件录制拍摄是一个繁琐和细致的工程,某一环节出问题,将会导致所有的努力和心血付之东流.我们认真的做好课件工作的每一个环节,完美呈现每一个细节,保证了公司和客户的课件安全.10年来,我们通过认真仔细的工作,履行着我们的职责. 91录课的主要业务有:高清录课室租赁(84寸4k液晶.索尼高清摄像机.无线麦克风.十

直播攻略:网易视频云送上OBS直播完整版教程

OBS是什么? OBS是一款直播串流软件,中文无广告,完全免费,含32位与64位版本,通吃各种电脑,支持MAC的OS X系统. 各大平台都有自己的直播软件了还需要用OBS么? 因为,当前平台直播软件存在以下两个方面问题: 1功能缺失,对采集卡,摄像头,屏幕截取,码率设置,输出分辨率以及更多高级设置都 不能很好的支持,基本上是傻瓜设置,不能做到相对更精准更有质量的调教. 2严重占用系统资源,很多主播在游戏时候会进行同步录制视频,如果用平台直播软件直播的话,很可能在高画质的设定下同步录制会导致游戏各

Premiere Pro CC 2018中文破解版 64位

Premiere Pro CC 2018中文破解版:http://www.3322.cc/soft/35722.htmlPremiere Pro CC 2018是一款知名的编辑画面质量比较好的视频编辑软件,它可以帮助用户提升自己的创作能力和创作自由度,具有易学.高效.精确的优点,可为用户提供采集.剪辑.调色.美化音频.字幕添加.输出.DVD刻录一整套的操作流程,并可和其他Adobe软件完美兼容,以此来让用户足以完成在编辑.制作.工作流上遇到的所有挑战,并可满足用户创建高质量作品的要求.PreMi