KBScripts函数说明:
(适应KBuilder 3.x版本)
--------------------------------------------------------------------------------
把RGB合成为颜色值:
<color-integer> := RGB(r, g, b);
例如: karaoke.TransparentColor := RGB(0, 255, 0);
// green
注意: r,g,b的取值范围是0~255
--------------------------------------------------------------------------------
创建卡拉OK对象:
<object-integer> := CreateKaraokeObject;
例如: karaoke := CreateKaraokeObject;
注意: 在将来的版本中,创建卡拉OK字幕对象将被TitleObject.Create代替;
--------------------------------------------------------------------------------
设置变色边框颜色:
<object-integer>.AnimateBorderColor := <color-integer>;
例如: karaoke.AnimateBorderColor := RGB(255, 255, 255);
// white
--------------------------------------------------------------------------------
设置变色边框厚度:
<object-integer>.AnimateBorderThickness := <integer>;
例如: karaoke.AnimateBorderThickness := 1;
--------------------------------------------------------------------------------
设置变色的颜色值:
<object-integer>.AnimateColor := <color-integer>;
例如: karaoke.AnimateColor := RGB(0, 0, 255);
// blue
--------------------------------------------------------------------------------
设置相应的音频文件:
<object-integer>.AudioFileName := <string>;
例如: karaoke.AudioFileName := '*.wav';
// *表示与歌词脚本同名的文件
--------------------------------------------------------------------------------
设置颜色深度
<object-integer>.ColorDepth := <integer>;
例如: karaoke.ColorDepth := 24;
注意:颜色深度取值范围: 16,24,32,在插件中该设置无效
--------------------------------------------------------------------------------
设置当前位置(内部使用):
<object-integer>.Position := <integer>;
// 单位:毫秒
<object-integer>.Position := <string>;
// 格式:'mm:ss.mss'
例如: karaoke.Position := 35000;
// 将指针移到35秒处
例如: karaoke.Position := '35:00.000';
// 将指针移到35秒处
--------------------------------------------------------------------------------
设置播放的时间范围:
<object-integer>.StartPos := <integer>;
// 单位:毫秒
<object-integer>.EndPos := <integer>;
// 同上
例如: karaoke.StartPos := 24000;
例如: karaoke.StartPos := '24:00.000';
--------------------------------------------------------------------------------
第一行(上)对齐方式:
<object-integer>.FirstAlignment := <integer>;
// 0, 1, 2:左右中对齐
例如: karaoke.FirstAlignment := 2;
// 第一行歌词右对齐
缩进像素:
<object-integer>.FirstIndent := <integer>;
例如: karaoke.FirstIndent := 25;
// 与右边界保持25像素点距离< BR> 注意: 在单行模式中,只有第一行的设置有效,单行也就是第一行
--------------------------------------------------------------------------------
第二行(下)对齐方式:
<object-integer>.NextAlignment := <integer>;
// 0, 1, 2:左中右对齐
缩进像素:
<object-integer>.NextIndent := <integer>;
--------------------------------------------------------------------------------
字体设置:
<object-integer>.Font(<string>);
// 字型, 如'楷体_GB2312', '宋体'
<ojbect-integer>.Font(<string>, <integer>);
// 字型, 大小
<object-integer>.Font(<string>, <integer>, <boolean>);
// 字型, 大小, 是否加粗
例如: 设置为“楷体”字, 大小为20, 字体加粗
karaoke.Font('楷体_GB2312', 20, true);
--------------------------------------------------------------------------------
设置每秒帧数:
<object-integer>.FramesPerSec := <integer>;
例如: karaoke.FramesPerSec := 25;
注意: 设置帧率将影响字幕的平滑程度,一般情况下无需设置
--------------------------------------------------------------------------------
图象高度:
<object-integer>.Height := <integer>;
例如: karaoke.Height := 72;
注意: 当autosize设置为true时,图象高度是自动设置的
--------------------------------------------------------------------------------
设置是否以正常速度播放:
<object-integer>.KaraokeMode;
例如: karaoke.KaraokeMode := true;
注意: 内部使用,并且在输出视频时无效
--------------------------------------------------------------------------------
上下两行之间的像素数:
<object-integer>.LineSpace := <integer>;
例如: karaoke.LineSpace := 4;
--------------------------------------------------------------------------------
设置常规边框颜色:
<object-integer>.NormalBorderColor := <color-integer>;
例如: karaoke.NormalBorderColor := RGB(0, 0, 0);
// black
--------------------------------------------------------------------------------
设置常规边框厚度:
<object-integer>.NormalBorderThickness := <integer>;
例如: karaoke.NormalBorderThickness := 1;
--------------------------------------------------------------------------------
设置常规颜色:
<object-integer>.NormalColor;
例如: karaoke.NormalColor := RGB(255, 255, 255);
// white
--------------------------------------------------------------------------------
设置播放行数(1-2):
<object-integer>.Rows := <integer>;
例如: karaoke.Rows := 2;
--------------------------------------------------------------------------------
设置顶部边界值:
<object-integer>.TopMargin := <integer>;
例如: karaoke.TopMargin := 3;
--------------------------------------------------------------------------------
读取歌曲的时间长(内部使用):
<object-integer>.Duration;
例如: len := karaoke.Duration;
--------------------------------------------------------------------------------
设置透明颜色:
<object-integer>.TransparentColor := <color-integer>;
例如: karaoke.TransparentColor := RGB(0, 255, 0);
注意: 插件中无效
--------------------------------------------------------------------------------
设置图象宽度:
<object-integer>.Width := <integer>;
例如: karaoke.Width := 352;
--------------------------------------------------------------------------------
设置提示字颜色(特别适合对唱等场合):
<object-integer>.SetColor(<string>, <integer>);
例如,将女声歌词颜色设置为红色:
karaoke.SetColor('女', RGB(255,0,0));
在歌词中有"(女
"标记的后面的所有歌词颜色都设置为红色,直到下一个提示字改变
--------------------------------------------------------------------------------
增加歌词行:
<object-integer>.Add(<string>, <string>, <string>, <string>);
参数说明:
1-开始时间, 格式是'mm:ss.mss';
2-结束时间, 同上
3-纯歌词文字
4-时值序列
--------------------------------------------------------------------------------
清除所有歌词描述(也就是Add增加的歌词行):
<object-integer>.Clear;
--------------------------------------------------------------------------------
设置歌词行变色前停留显示的时间(变色前该行提前显示的时间):
<object-integer>.TimeBeforeAnimate := <integer>;
例如: karaoke.TimeBeforeAnimate := 4000;
--------------------------------------------------------------------------------
设置歌词行变色完成后保持显示的时间(变色后该行保持显示的时间):
<object-integer>.TimeAfterAnimate := <integer>;
例如: karaoke.TimeAfterAnimate := 4000;
--------------------------------------------------------------------------------
设置时间偏移(把整个时间往前或后移动):
<object-integer>.TimeOffset := <integer>;
// 负数往前, 正数往后,单位:毫秒
例如: karaoke.TimeOffset := -3000;
// 把字幕出现的时间提前3秒