bilibili高级弹幕代码初阶教程
行走弹幕的制作方法

行走弹幕的制作方法1<span style="font-family:宋体;mso-ascii-font-family:Calibri;mso-ascii-theme-font:minor-lat in;mso-fareast-font-family:宋体;mso-fareast-theme-font:minor-fareast;mso-hansi-font-family: Calibri;mso-hansi-theme-font:minor-latin">、打开微信,依次点击“发现—<span style="font-family:宋体;mso-ascii-font-family:Calibri;mso-ascii-theme-font:minor-lat in;mso-fareast-font-family:宋体;mso-fareast-theme-font:minor-fareast;mso-hansi-font-family: Calibri;mso-hansi-theme-font:minor-latin">小程序”,输入“手持弹幕”,搜索到“手持弹幕”后,打开它,弹出“手持弹幕”操作界面。
2<span style="font-family:宋体;mso-ascii-font-family:Calibri;mso-ascii-theme-font:minor-latin; mso-fareast-font-family:宋体;mso-fareast-theme-font:minor-fareast;mso-hansi-font-family: Calibri;mso-hansi-theme-font:minor-latin">、在“手持弹幕”操作界面上点击“请输入”,弹出操作键盘,输入文字,如“大家好”,输完后,点击“完成”,大家好三个字即出现在“手持弹幕”界面上。
视频网站经典案例B站(哔哩哔哩)弹幕网运营模式分析

在推荐机制上尽量去中心化,可 以按照“投稿时间”进行排序。 粉丝量不那么大的up主,只要 利用好B站的创作者活动专区, 并且打磨视频质量,是不愁涨粉 的。
对up主在推荐上友好
与其他内容分享平台不同,B 站独有的弹幕文化使得up主 和自己的粉丝之间情感维系 更为强烈。Up主容易获得成 就感,普通用户容易获得身 份认同感。
2
运营模式
内容运营机制
B站的内容主要分为三大类:由up主创作投稿的UGC内容(这也是贡献最多文化狂欢现象的 主力部队),由B站出品的自制内容,通过版权购买获得播放权的内容(如电影、番剧等)。
UGC内容
常见的社区流量入口如排行 榜、热门推荐等会重复分布 在多个页面。在分发逻辑层 面,B站采用的是相对公平的 流量分配机制,依托粉丝关 系、兴趣推送的分发机制, 根据用户关注话题等数据进 行定制化推荐。
创作者关系维系
每年评选百大up主 B站up主线下交流会 bilibili个人认证 粉丝勋章
活动运营
B站线下活动BilibiliWorld(简称BW)集演出、展览和互 动游戏于一体的综合性娱乐嘉年华,是每年夏天最受瞩目 的ACG展会之一。
2017年至今,BW已成功举办了5场,每场活动都能给大家 带来眼前一亮的全新体验。举办地从上海、广州、到成 都...BW不断融入着当地元素,让不同地区的动漫爱好者零 距离感受BW的魅力。不仅如此,BW还对现场进行全方位 的直播,实时为线上观众展示活动的盛况。“awsl”、 “爷青回”...直播弹幕与现场的活跃气氛相互呼应,传递着 “乐园”中年轻人的热情。
大会员
用户运营遵从二八定律,为了更好地服 务具有80%贡献值的占总数20%的用户, 平台对付费会员会给予更多特权。而在 B站中,付费会员就是“大会员”。
教程 字幕教程 ass特效

一、字幕制作过程简介字幕制作的过程通常可分为片源提供、文稿翻译、时间轴、特效、校对、压制几个步骤.时间轴是指利用PopSub或其他时间轴工具制作出和视频内容相对应的基本字幕内容,保存的格式通常为ass或ssa。
ass和ssa除了个别地方,基本没什么太大的区别,后文主要介绍ass。
特效是指手动调整ass字幕的字体,颜色,位置和运动效果等.ass字幕功能很强大,合理的运用各种特效代码,能达到各种绚丽的效果。
不过这就属于高级字幕特效范畴了,本篇只介绍字幕特效的入门。
压制就是把做好的字幕嵌到无字视频里面,合成一个尺寸,大小和画质都合适的档.二、安装字幕软件PopSub不仅仅是时间轴编辑工具,同时它还能制作简单的特效。
另外类似的字幕制作编辑软件还有SubCreator和SubStationAlpha等.因为我用的是PopSub,所以后面的讲述将以PopSub为例。
【下载1:http:///file/ef1orrnu# PopSub_Version0。
74.rar】首先准备一个avi格式的视频(称之为片源)和可以用的ass格式的字幕,把ass字幕改为和视频相同的文件名,并保存在同一文件夹下。
打开PopSub,按“文件",“打开动画”,播放视频,如果显示字幕,同时桌面右下角出现如图所示的绿色箭头,就说明可以开始字幕制作了.如果没有显示,就需要安装一个插件Vobsub。
【下载2:http: ///file/c4semcsp# VobSub(VSFilter)_V2。
39_汉化修正版.rar】【图1】要正确显示字幕还需要Vobsub,它是一个辅助工具。
另外它的安装有点特殊.下载VobSub软件后,解压,双击安装,然后在“开始—〉运行" 对话框中输入“ regsvr32 vsfilter。
dll”,按确定后,如果出现下面右边的对话框则说明安装成功了,于是可以开始字幕制作了;但是,如果解压后发现只有 unrar。
B站自动刷弹幕

B站⾃动刷弹幕B站⾃动填弹幕(附带createEvent消息机制)昨晚看的⽐赛真的要⽓死我。
RNG 居然⼜输了。
为了LPL。
我写了⼀个为LPL加油的脚本。
希望⼤家能和我⼀起为LPL加油!脚本代码如下:var event = document.createEvent('Event');event.initEvent('input', true, true);function fun123(){$('.chat-input.border-box').val("前⽅⾼能!!");$('.chat-input.border-box')[0].dispatchEvent(event);$('.bl-button.live-skin-highlight-button-bg.bl-button--primary.bl-button--small').click();}setInterval("fun123()","100");第⼀步打开浏览器并登录B站按F12将控制台打开将代码粘贴进去然后按回车请⼤家观赏效果往下就是其他原理了,⾮技术⼈员请离开经过我多次调试,发现B站的textarea需要触发⼀个keydown事件之后才能发送。
所以我查阅了w3c⽂档,总结如下:createEvent使⽤的许多⽅法, 如 initCustomEvent, 都被废弃了. 请使⽤ event constructors 来替代.创建⼀个指定类型的事件。
其返回的对象必须先初始化并可以被传递给 element.dispatchEvent。
语法var event = document.createEvent(type);event 就是被创建的 Event 对象.type 是⼀个字符串,表⽰要创建的事件类型。
ass字幕特效代码大全

ass字幕特效代码大全ASS字幕特效代码学好SSA主要从两个方面着手:一个是SSA文件的组成结构;一个是SSA代码。
一.SSA文件的组成结构SSA文件主要由三大部分组成:[Script Info]部分,[v4 Styles]部分和[Events]部分。
1.[Script Info]部分PlayResX: 384PlayResY: 288384×288是标准的4:3画面分辨率之一。
ssa字幕里的坐标(字幕的位置)即根据这2个数值的范围来定义。
16:9宽银幕的片子略做调整即可。
这里主要介绍文件本身和制的信息,这里面最重要的两项是PlayResX和PlayResY,它实际上是按给定的PlayResX和PlayResY数值将屏幕按比例化分,屏幕的左上角坐标为(0,0),右下角坐标为(PlayResX数值,PlayResY数值).这两个值最好是和视频文件的长宽相同,这样在下面[Events]部分文本位置坐标的设定很方便而且准确. 当然这两个值也可能和原视频文件的长宽不同,比如视频文件尺寸为640x360,而PlayResX:384,PlayResY: 288,如同前面所说的,它是将屏幕长宽按384:288来化分的.一旦这样划定,下面的各种坐标设定都要以384和288为根据.特别要注意的是:对于一个已经存在并且文本坐标都设置好的SSA文件,如果它的PlayResX和PlayResY数值和视频文件的长宽尺寸不符(包括成比例的情况,比如视频文件尺寸为640x360,而 PlayResX:320,PlayResY: 180),我们不要简单的把PlayResX和PlayResY数值改成屏幕尺寸,这样将导致字幕失真,是因为文本部分的尺寸并没有改,仍按照原来的PlayResX和PlayResY数值设定.如果有较多的坐标设定,就不要改原来的PlayResX和PlayResY数值,在原基础上编辑.2.[V4 Styles]部分这是个存放[Events]部分里所用到的各种字体信息的地方.可以存在多种字体,每种字体有多种特征.当[Events]部分的Name项引用到这里的某种字体时,则意味这该字体的各种特征也被引用.字体的特征还可以在文本行中修改,这将在[Events]部分讨论.常见的字体属性有Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour,TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding我们可以再定义一个Style,并命名为mine,如Style: mine,华文新魏,18,&HFF0000,&HFF80FF0,&Hffffff,&Hffffff,0,0,1,2,1,2,20,20,20,0,134即可以这样:[V4 Styles]Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle,Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, EncodingStyle: Default,华文彩云,18,&Hff0000,&Hff8080,&Hffffff,&Hffffff,0,0,1,2,1,2,20,20,20,0,134Style: mine,华文新魏,18,&HFF0000,&HFF80FF0,&Hffffff,&Hffffff,0,0,1,2,1,2,20,20,20,0,134有了具体经验后,一般可以不作调整,需要改动的可以是“Fontname”,如改成黑体,“Fontsize”,做字幕字号24比较合适。
bilibili高级弹幕代码初阶教程

目录第一章初步了解高级弹幕1.1 变量1.2创建文本弹幕对象1.3 弹幕对象运动的设置1.4 绘图弹幕对象创建以与设置颜色样式设置.1 beginFill 指定一种颜色进行填充.2 lineGradientStyle beginGradientFill 指定一种线条样式,填充样式的渐变.3 lineStyle 指定线条样式图形的绘制.1 绘制一条直线.2 绘制一条二次贝塞尔曲线.3 绘制一个圆.4 绘制一个椭圆.5 绘制一个矩形.5 绘制一个圆角矩形第二章使用其他工具2.1Utils 工具库hue将0-360的值映射到色相环rgb将RGB值映射到色彩值上formatTimes格式化播放时间timer 延迟执行函数interval 定时重复执行函数distance 计算坐标距离rand 返回一个前闭后开的整数2.2 Function 函数的创建与使用2.3 播放器控制视频时间跳转至跳转到指定av号指定页视频第一章初步了解高级弹幕1.1 第一节变量废话不多说.我们先来看一句最基本的弹幕.首先一次个关键字是”var”.该关键字的意思就是声明一个变量.变量说的简单点就是在后面的过程中可以给“a”重新赋值.然后就是变量名”a”了,这玩意理解成名字就行了.至于关于变量名的规则有些关键字与保留字是不允许创建的.保留字,关键字第三个是运算符”=”,首先等于号并不是数学中的等于意思.而是给声明的变量a赋值.将等号右边的值赋予给左边.第四个”1”就是一个值了.结尾的分号表示该语句结束.看到这里相信大家已经对这句弹幕有了基础的了解.这句话的意思就是:声明变量”a”并且初始化其值为数字1.写高级弹幕的时候请严格注意大小写.1.2 第二节创建文本弹幕对象.首先要知道bili的播放器的大小.像素为单位.正常模式:宽541 高384宽屏模式:宽950 搞528全屏模式与网页全屏模式根据显示器分辨率来确定.在高级弹幕中在实际弹幕时间会在发布时间轴填写的时间基础上减去约0.2秒.所以请注意时间轴的问题高级弹幕中创建新的文本弹幕对象要用到createComment("",{})这个语句.请看实例var a = $.createComment("text ",{x:100});该弹幕的意思就是创建一个变量a并创建一个新弹幕对象赋于a.我们可以这么理解createComment.他的括号有2个参数.”text”是弹幕容.{x:100}是该弹幕参数x轴上的位置是100.当然括号的不可能只有x这一个参数.我们可以用到的有.x —新创建元件的X轴座标y —新创建元件的Y轴座标z —新创建元件的Z轴座标lifeTime—元件的生存时间(以秒为单位)注:一旦设置不可更改alpha —元件的透明度color —文字类元件的色彩fontsize—文字类元件的大小parent —元件的父元件(进阶应用)motion —元件移动策略scale —缩放那么我们来定义一个稍微复杂点的高级弹幕.例:(注:参数之间以英文逗号区分,最后一个参数结尾无逗号)大家可以预览一下这条弹幕.就是在x轴100,y轴100的位置创建一个容是text的弹幕.该弹幕生存时间为10秒.字体大小为20号.十六进制颜色为灰色.透明度0.8.那么.到了这里大家应该已经知道怎么去在一个点创建弹幕并设置该弹幕各项参数.接下来就来说一下在创建后各项属性的更改与设置.现在.声明变量c并创建了一个弹幕容为"测试"的弹幕.它的x轴为50,y轴为100.例:那么如果我们现在需要让他的位置x轴不变y轴变更到50.那么我们这个时候就需要直接更改弹幕的某一个参数.只需要在弹幕后面加上.c.y = 50;(注:更改颜色的语句不是c.color而是c.textColor.注意大小写)此外还有比较常用的就是旋转3个轴的设置.c.rotationX,rotationY,rotationZ.例:另还有些参数也可以设置.详细参考训练题:1.声明变量c并创建一条弹幕对象.其容为空.其属性为X轴为270.Y轴为190.生存时间5秒.字体颜色为0xff0000,透明度为0.5.字体大小为15号.2.更改c的x轴位置为200.透明度更改为1.颜色为0xfff000.1.3 弹幕对象运动的设置在上一个章节中学习了如何创建文本对象和设置文本对象的参数.这次就讲如何让创建的弹幕对象运动起来.这里我们要用到motion.下面请看一个例子.让我们来分析这条弹幕.首先上已经了解过了createComment的用法.那么我直接来看到多出来的这个属性motion. motion:{x:{fromValue:100,toValue:250,lifeTime:3}}在这里面其中x为需要移动的参数.x中的fromValue是x的起始位置toValue是结束位置.lifeTime是这个运动过程所花费的时间.(注:如果在motion里面x.y有起始值并且在motion 外也设置x.y的值,那么将显示motion里面的设置位置)此外motion支持多属性同时运动.例:这次除了移动x轴还添加了一个透明度从0到1的变化.下面我们说一下在motion中有哪些是可以做变化的.x:移动x轴位置.y:移动y轴位置.alpha:透明度变换(有效值0-1).fontsize:字体大小变换(不推荐使用.字号的变换较明显.rotationX, rotationY, rotationX:旋转x轴,旋转Y轴,旋转Z轴.其中的属性值有:必填fromValu e起始移动属性值可选toValue 结束移动属性值如留空则不移动可选lifeTime以秒为单位的移动生存时间如留空则与整体生存时间一致可选startDelay以毫秒为单位的起始移动延时时间(毫秒为单位)可选easing 详细请看补间效果可选repeat 效果重复次数下面我们来看一个相对复杂的例子在这个例子里面我们用到了startDelay这个属性.我们把这个代码拆开分了3段来看.首先x轴的是从100移动到250.移动时间3秒.然后起始移动时间是500毫秒.也就是说x轴是在500毫秒后开始移动的.然后是y轴从50移动到250移动时间3秒.最后是透明度从0到1变化时间为0.5秒.重复执行6次.把这三个参数整合在一起就变成了.移动测试从x:100,y:50的位置开始移动,并且透明度最开始是0.由于x有一个起始移动时间.但是y轴跟透明度变化已经开始.所以首先"移动测试"会先渐入的向下移动.500毫秒后x开始移动这个时候y轴的移动还没有停第一次的透明度改变已经结束.所以x,y轴这个时候是同时移动的.最后结果回是往右下移动并且透明度会重复的从0到1..虽然可以使用repeat这个属性执行重复的操作.但是这个是远远不能满足复杂的移动效果的.然而去创建很多motion也是很麻烦的.这里我就需要用到motionGroup了.motionGroup能执行多个motion连续运动.我们来看一个实例.以上弹幕就是使用一个组将两个移动连接在了一起→↓.需要注意的是motionGroup的冒号后面的是英文中括号.并且每一次移动包括透明度都最好加上lifeTime并且每一个motion中的lifeTime的时间必须一致..每一次motion之间用英文逗号相隔.最后一个结尾无符号.1.4 绘图弹幕对象创建以与设置使用命令:createShape例子:等方法同creatComment).绘图需要使用到的:curveTo使用当前线条样式绘制一条二次贝塞尔曲线drawCircle绘制一个圆.drawEllipse绘制一个椭圆drawRect绘制一个矩形drawRoundRect绘制一个圆角矩形lineTo绘制一条直线beginFill指定一种颜色进行填充lineStyle指定线条样式lineGradientStyle指定一种线条样式的渐变beginGradientFill指定一种填充样式的渐变我们来一个个的来了解.首先要了解的并不是怎么去绘制而是设定绘制的样式颜色样式设置.1beginFill 指定一种颜色进行填充这里用到:beginFill指定一种颜色进行填充在beginFill里面有2个参数.第一个是十六进制的颜色,第二个是填充的透明度(可选).实例:这里用的一长串就是设置g的填充颜色以与透明度.两个都是有效的.graphics则是是提供绘图的API.以后使用的时候都会用到这个.后面小括号就是参数了. 注:graphics前面的g必须是创建图形对象的名字.1.4.1.2 lineGradientStylebeginGradientFill指定一种线条样式,填充样式的渐变这里需要用到:lineGradientStyle指定一种线条样式的渐变beginGradientFill指定一种填充样式的渐变详细请看:type上例参数"linear"用于指定要使用哪种渐变类型的GradientType 类的值:GradientType.LINEAR 或GradientType.RADIAL。
bilibili高级弹幕代码初阶教程

2、1、3formatTimes格式化播放时间
2、1、4timer延迟执行函数
2、1、5interval定时重复执行函数
2、1、6distance计算坐标距离
2、1、7rand返回一个前闭后开得整数
2、2 Function函数得创建与使用
2、3播放器控制
2、3、1视频时间跳转至
2.更改c得x轴位置为200、透明度更改为1、颜色为0xfff000、
1、3弹幕对象运动得设置
在上一个章节中学习了如何创建文本对象与设置文本对象得参数、这次就讲如何让创建得弹幕对象运动起来、这里我们要用到motion、下面请瞧一个例子、
var c = $、createment("移动测试",{
motion:{
那么我们来定义一个稍微复杂点得高级弹幕、
例:
var c = $、createment("text",{
x:100,y:100,
lifeTime:10,
fontsize:20,
color:0x666666,
alpha:0、8
});
(注:参数之间以英文逗号区分,最后一个参数结尾无逗号)
大家可以预览一下这条弹幕、就就是在x轴100,y轴100得位置创建一个内容就是text得弹幕、该弹幕生存时间为10秒、字体大小为20号、十六进制颜色为灰色、透明度0、8、
x:{fromValue:100,toValue:250,lifeTime:3}
},
lifeTime:3
});
让我们来分析这条弹幕、
首先上已经了解过了createment得用法、那么我直接来瞧到多出来得这个属性motion、
danmakuflamemaster基础用法

danmakuflamemaster基础用法danmakuflamemaster是一种流行的弹幕发射器,其基础用法旨在让用户能够轻松创建弹幕效果。
本文将详细介绍danmakuflamemaster的基础用法,帮助读者了解如何使用这个弹幕发射器来创建自己的弹幕效果。
什么是danmakuflamemaster?danmakuflamemaster是一款弹幕发射器,用于在视频或直播中显示用户发送的弹幕。
它具有强大的功能和用户友好的界面,是许多弹幕视频爱好者和直播平台用户的首选。
danmakuflamemaster的基本安装和配置首先,我们需要从官方网站或其他可靠的来源下载并安装danmakuflamemaster。
安装完成后,打开程序并按照提示完成初始配置。
配置界面通常会要求输入一些基础信息,如用户名、密码和服务器地址。
填写完成后,点击“确认”并等待程序加载。
danmakuflamemaster的主要界面danmakuflamemaster的主要界面分为三个区域:视频播放区、弹幕输入区和弹幕列表区。
- 视频播放区:用于显示正在播放的视频。
在这个区域,用户可以控制视频的播放、暂停以及快进等操作。
- 弹幕输入区:用户可以在这个区域中输入要发送的弹幕内容。
用户可以选择弹幕的颜色、字体和大小,并设置发送的位置和显示时间等。
- 弹幕列表区:这个区域用于显示已发送的弹幕。
用户可以在这里看到其他用户发送的弹幕,并选择是否显示或屏蔽特定的弹幕。
创建和发送弹幕要创建和发送弹幕,用户需要做以下几个步骤:1. 在弹幕输入区选择要使用的字体、颜色和大小。
danmakuflamemaster 通常会提供一些默认选项供用户选择,也可以通过导入自定义字体来实现个性化效果。
2. 输入弹幕的内容。
用户可以在输入框中键入文本,也可以复制粘贴已有的文本。
在这一步中,用户可以使用简单的标记语言来设置文字样式,如设置为粗体、斜体或下划线。
3. 设置弹幕的显示位置和时间。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例子:
var g = $.createShape({x:50,y:50,lifeTime:3,alpha:0.5});
首先创建一个新的图形对象.里面可以设置的内容同文本对象(位置,生存时间,透明度,运动设置等方法同creatComment).
绘图需要使用到的:
curveTo使用当前线条样式绘制一条二次贝塞尔曲线
x—新创建元件的X轴座标
y—新创建元件的Y轴座标
z—新创建元件的Z轴座标
lifeTime—元件的生存时间(以秒为单位)注:一旦设置不可更改
alpha—元件的透明度
color—文字类元件的色彩
fontsize—文字类元件的大小
parent—元件的父元件(进阶应用)
motion—元件移动策略
scale—缩放
type上例参数"linear"用于指定要使用哪种渐变类型的GradientType类的值:GradientType.LINEAR或GradientType.RADIAL。
可选lifeTime以秒为单位的移动生存时间如留空则与整体生存时间一致
可选startDelay以毫秒为单位的起始移动延时时间(毫秒为单位)
可选easing详细请看补间效果
可选repeat效果重复次数
下面我们来看一个相对复杂的例子
var c = $.createComment("移动测试",{
motion:{
虽然可以使用repeat这个属性执行重复的操作.但是这个是远远不能满足复杂的移动效果的.然而去创建很多motion也是很麻烦的.这里我就需要用到motionGroup了.motionGroup能执行多个motion连续运动.
我们来看一个实例.
var c = $.createComment("弹幕测试",{
我们来一个个的来了解.首先要了解的并不是怎么去绘制而是设定绘制的样式
1.4.1颜色样式设置
1.4.1.1beginFill指定一种颜色进行填充
这里用到:
beginFill指定一种颜色进行填充
在beginFill里面有2个参数.第一个是十六进制的颜色,第二个是填充的透明度(可选).
实例:
var g = $.createShape({x:50,y:50,lifeTime:3,alpha:0.5});
第一章初步了解高级弹幕
1.1变量
1.2创建文本弹幕对象
1.3弹幕对象运动的设置
1.4绘图弹幕对象创建以及设置
1.4.1颜色样式设置
1.4.1.1 beginFill指定一种颜色进行填充
1.4.1.2 lineGradientStyle beginGradientFill指定一种线条样式,填充样式的渐变
x:移动x轴位置.
y:移动y轴位置.
alpha:透明度变换(有效值0-1).
fontsize:字体大小变换(不推荐使用.字号的变换较明显.
rotationX, rotationY, rotationX:旋转x轴,旋转Y轴,旋转Z轴.
其中的属性值有:
必填fromValue起始移动属性值
可选toValue结束移动属性值如留空则不移动
第三个是运算符”=”,首先等于号并不是数学中的等于意思.而是给声明的变量a赋值.将等号右边的值赋予给左边.
第四个”1”就是一个值了.结尾的分号表示该语句结束.
看到这里相信大家已经对这句弹幕有了基础的了解.这句话的意思就是:
声明变量”a”并且初始化其值为数字1.
写高级弹幕的时候请严格注意大小写.
var 变量名 = 表达式;
drawCircle绘制一个圆.
drawEllipse绘制一个椭圆
drawRect绘制一个矩形
drawRoundRect绘制一个圆角矩形
lineTo绘制一条直线
beginFill指定一种颜色进行填充
lineStyle指定线条样式
lineGradientStyle指定一种线条样式的渐变
beginGradientFill指定一种填充样式的渐变
lifeTime:3
});
在这个例子里面我们用到了startDelay这个属性.我们把这个代码拆开分了3段来看.
首先x轴的是从100移动到250.移动时间3秒.然后起始移动时间是500毫秒.也就是说x轴是在500毫秒后开始移动的.
然后是y轴从50移动到250移动时间3秒.
最后是透明度从0到1变化时间为0.5秒.重复执行6次.
1.2第二节创建文本弹幕对象.
首先要知道bili的播放器的大小.像素为单位.
正常模式:宽541高384
宽屏模式:宽950搞528
全屏模式与网页全屏模式根据显示器分辨率来确定.
在高级弹幕中在实际弹幕时间会在发布时间轴填写的时间基础上减去约0.2秒.所以请注意时间轴的问题
高级弹幕中创建新的文本弹幕对象要用到createComment("",{})这个语句.请看实例
g.graphics.beginFill(0xff0000,0.5);
g.graphics.beginFill(0xff0000);
这里用的一长串就是设置g的填充颜色以及透明度.两个都是有效的.
graphics则是是提供绘图的API.以后使用的时候都会用到这个.后面小括号内就是参数了.
注:graphics前面的g必须是创建图形对象的名字.
1.4.1.2lineGradientStylebeginGradientFill指定一种线条样式,填充样式的渐变
这里需要用到:
lineGradientStyle指定一种线条样式的渐变
beginGradientFill指定一种填充样式的渐变
详细请看:链接
g.graphics.beginGradientFill("linear", [0xFF0000, 0x00FF00,0x0000FF],[1,1,1],[0x00,0x7f,0xff] , $.createGradientBox(20, 20, 0, 0, 0),"reflect","rgb",0);
那么我们来定义一个稍微复杂点的高级弹幕.
例:
varc= $.createComment("text",{
x:100,y:100,
lifeTime:10,
fontsize:20,
color:0x666666,
alpha:0.8
});
(注:参数之间以英文逗号区分,最后一个参数结尾无逗号)
大家可以预览一下这条弹幕.就是在x轴100,y轴100的位置创建一个内容是text的弹幕.该弹幕生存时间为10秒.字体大小为20号.十六进制颜色为灰色.透明度0.8.
]
});)
以上弹幕就是使用一个组将两个移动连接在了一起→↓.需要注意的是motionGroup的冒号后面的是英文中括号.并且每一次移动包括透明度都最好加上lifeTime并且每一个motion中的lifeTime的时间必须一致..每一次motion之间用英文逗号相隔.最后一个结尾无符号.
1.4绘图弹幕对象创建以及设置
x:{fromValue:100,toValue:250,lifeTime:3,startDelay:500},
y:{fromValue:50,toValue:250,lifteTime:3},
alpha:{fromValue:0,toValue:1,lifeTime:0.5,repeat:6}
},
c.y = 50;
(注:更改颜色的语句不是c.color而是c.textColor.注意大小写)
此外还有比较常用的就是旋转3个轴的设置.
c.rotationX,rotationY,rotationZ.
例:
c.rotationX=90;
另还有些参数也可以设置.详细参考
训练题:
1.声明变量c并创建一条弹幕对象.其内容为空.其属性为X轴为270.Y轴为190.生存时间5秒.字体颜色为0xff0000,透明度为0.5.字体大小为15号.
x:100,y:50,
motionGroup:[
{x:{fromValue:100,toValue:200,lifeTime:1},alpha:{fromValue:0,toValue:1,lifeTime:1}},
{y:{fromValue:50,toValue:150,lifeTime:1},alpha:{fromValue:1,toValue:0,lifeTime:1}}
1.4.1.3 lineStyle指定线条样式
1.4.2图形的绘制
1.4.2.1绘制一条直线
1.4.2.2绘制一条二次贝塞尔曲线
1.4.2.3绘制一个圆
1.4.2.4绘制一个椭圆
1.4.2.5绘制一个矩形
1.4.2.5绘制一个圆角矩形
第二章使用其他工具
2.1Utils工具库
2.1.1 hue将0-360的值映射到色相环
var a = $.createComment("text",{x:100});
该弹幕的意思就是创建一个变量a并创建一个新弹幕对象赋于a.
我们可以这么理解createComment.他的括号内有2个参数.”text”是弹幕内容.{x:100}是该弹幕参数x轴上的位置是100.
当然括号内的不可能只有x这一个参数.我们可以用到的有.
在这里面其中x为需要移动的参数.x中的fromValue是x的起始位置toValue是结束位置.lifeTime是这个运动过程所花费的时间.(注:如果在motion里面x.y有起始值并且在motion外也设置x.y的值,那么将显示motion里面的设置位置)