UNPKG

@dan-uni/dan-any

Version:

A danmaku transformer lib, supporting danmaku from different platforms.

46 lines (39 loc) 1.13 kB
import type { SubtitleStyle } from './types' import { assign, formatColor, hexColorToRGB } from './util' // const builtinRules = { // COLOR: true, // TOP: true, // BOTTOM: true // } // const convertBlockRule = (rule: string) => // builtinRules[rule] ? rule : new RegExp(rule) export default (overrides = {}): SubtitleStyle => { const defaults = { fontSize: [25, 25, 36], fontName: 'SimHei', color: '#ffffff', outlineColor: undefined, backColor: undefined, outline: 2, shadow: 0, bold: false, padding: [2, 2, 2, 2], playResX: 1920, playResY: 1080, scrollTime: 8, fixTime: 4, opacity: 0.6, bottomSpace: 60, includeRaw: true, mergeIn: -1, // block: [], } const config = assign(defaults, overrides) config.color = formatColor(hexColorToRGB(config.color)) config.outlineColor = config.outlineColor && formatColor(hexColorToRGB(config.outlineColor)) config.backColor = config.backColor && formatColor(hexColorToRGB(config.backColor)) // config.block = uniqueArray(config.block).map(convertBlockRule) return config }