BackgroundRender
Defined in: packages/core/src/bg-render/index.ts:18
Fileoverview
Section titled “Fileoverview”一个播放歌词的组件
Author
Section titled “Author”SteveXMH
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
Renderer extends BaseRenderer |
Implements
Section titled “Implements”Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new BackgroundRender<Renderer>(renderer, canvas): BackgroundRender<Renderer>;Defined in: packages/core/src/bg-render/index.ts:23
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
renderer |
Renderer |
canvas |
HTMLCanvasElement |
Returns
Section titled “Returns”BackgroundRender<Renderer>
Methods
Section titled “Methods”dispose()
Section titled “dispose()”dispose(): void;Defined in: packages/core/src/bg-render/index.ts:83
销毁实现了该接口的对象实例,释放占用的资源
一般情况下,调用本函数后就不可以再调用对象的任何函数了
Returns
Section titled “Returns”void
Implementation of
Section titled “Implementation of”getElement()
Section titled “getElement()”getElement(): HTMLCanvasElement;Defined in: packages/core/src/bg-render/index.ts:80
获取这个类所对应的 HTML 元素实例
Returns
Section titled “Returns”HTMLCanvasElement
Implementation of
Section titled “Implementation of”AbstractBaseRenderer.getElement
getRenderer()
Section titled “getRenderer()”getRenderer(): Renderer;Defined in: packages/core/src/bg-render/index.ts:38
获取被包装的渲染器实例。
各个渲染器有自己特有的可调项(例如 IsolationRenderer.setOptions),
这些项没法通过统一的 AbstractBaseRenderer 接口下发,需要拿到实例本体。
Returns
Section titled “Returns”Renderer
pause()
Section titled “pause()”pause(): void;Defined in: packages/core/src/bg-render/index.ts:62
暂停背景动画,画面即便是更新了图片也不会发生变化
Returns
Section titled “Returns”void
Implementation of
Section titled “Implementation of”resume()
Section titled “resume()”resume(): void;Defined in: packages/core/src/bg-render/index.ts:65
恢复播放背景动画
Returns
Section titled “Returns”void
Implementation of
Section titled “Implementation of”setAlbum()
Section titled “setAlbum()”setAlbum(albumSource, isVideo?): Promise<void>;Defined in: packages/core/src/bg-render/index.ts:74
设置背景专辑资源,纹理加载并设置完成后会返回
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
albumSource |
string | HTMLImageElement | HTMLVideoElement |
专辑的资源链接,可以是图片或视频链接,抑或是任意 img/video 元素,如果提供字符串链接且为视频则需要指定第二个参数 |
isVideo? |
boolean |
- |
Returns
Section titled “Returns”Promise<void>
Implementation of
Section titled “Implementation of”setFlowSpeed()
Section titled “setFlowSpeed()”setFlowSpeed(speed): void;Defined in: packages/core/src/bg-render/index.ts:53
修改背景的流动速度,数字越大越快,默认为 8
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
speed |
number |
背景的流动速度,默认为 8 |
Returns
Section titled “Returns”void
Implementation of
Section titled “Implementation of”AbstractBaseRenderer.setFlowSpeed
setFPS()
Section titled “setFPS()”setFPS(fps): void;Defined in: packages/core/src/bg-render/index.ts:59
修改背景动画帧率,默认是 30 FPS
如果设置成 0 则会停止动画
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
fps |
number |
目标帧率,默认 30 FPS |
Returns
Section titled “Returns”void
Implementation of
Section titled “Implementation of”setHasLyric()
Section titled “setHasLyric()”setHasLyric(hasLyric): void;Defined in: packages/core/src/bg-render/index.ts:71
设置背景是否根据“是否有歌词”这个特征调整自身效果,例如有歌词时会变得更加活跃
部分渲染器会根据这个特征调整自身效果
如果不确定是否需要赋值或无法知晓是否包含歌词,请传入 true 或不做任何处理(默认值为 true)
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
hasLyric |
boolean |
是否有歌词,如不确定是否需要赋值,请传入 true 或不做任何处理(默认值为 true) |
Returns
Section titled “Returns”void
Implementation of
Section titled “Implementation of”AbstractBaseRenderer.setHasLyric
setLowFreqVolume()
Section titled “setLowFreqVolume()”setLowFreqVolume(volume): void;Defined in: packages/core/src/bg-render/index.ts:68
设置低频的音量大小,范围在 80hz-120hz 之间为宜,取值范围在 [0.0-1.0] 之间
部分渲染器会根据音量大小调整背景效果(例如根据鼓点跳动)
如果无法获取到类似的数据,请传入 1.0 作为默认值,或不做任何处理(默认值即 1.0)
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
volume |
number |
低频的音量大小,范围在 50hz-120hz 之间为宜,取值范围在 [0.0-1.0] 之间 |
Returns
Section titled “Returns”void
Implementation of
Section titled “Implementation of”AbstractBaseRenderer.setLowFreqVolume
setRenderScale()
Section titled “setRenderScale()”setRenderScale(scale): void;Defined in: packages/core/src/bg-render/index.ts:49
修改背景的渲染比例,默认是 0.5
一般情况下这个程度既没有明显瑕疵也不会特别吃性能
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
scale |
number |
背景的渲染比例 |
Returns
Section titled “Returns”void
Implementation of
Section titled “Implementation of”AbstractBaseRenderer.setRenderScale
setStaticMode()
Section titled “setStaticMode()”setStaticMode(enable): void;Defined in: packages/core/src/bg-render/index.ts:56
是否启用静态模式,即图片在更换后就会保持静止状态并禁用更新,以节省性能
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
enable |
boolean |
是否启用静态模式 |
Returns
Section titled “Returns”void
Implementation of
Section titled “Implementation of”AbstractBaseRenderer.setStaticMode
static new<Renderer>(type): BackgroundRender<Renderer>;Defined in: packages/core/src/bg-render/index.ts:42
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
Renderer extends BaseRenderer |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
type |
(canvas) => Renderer |
Returns
Section titled “Returns”BackgroundRender<Renderer>