diff --git a/processor.py b/processor.py index 155f34c..427eff0 100644 --- a/processor.py +++ b/processor.py @@ -261,7 +261,15 @@ async def process_favorite_item( try: if not await aexists(fav_item.subtitle_path): await ass.make_ass_file_danmakus_protobuf( - v, 0, str(fav_item.subtitle_path.resolve()) + v, + 0, + str(fav_item.subtitle_path.resolve()), + credential=credential, + font_name=settings.subtitle.font_name, + font_size=settings.subtitle.font_size, + alpha=settings.subtitle.alpha, + fly_time=settings.subtitle.fly_time, + static_time=settings.subtitle.static_time, ) else: logger.info( diff --git a/settings.py b/settings.py index ad62ff9..715a8a0 100644 --- a/settings.py +++ b/settings.py @@ -7,6 +7,17 @@ from dataclasses_json import DataClassJsonMixin, Undefined from constants import DEFAULT_CONFIG_PATH +@dataclass +class SubtitleConfig(DataClassJsonMixin): + dataclass_json_config = {"undefined": Undefined.EXCLUDE} + + font_name: str = "微软雅黑,黑体" # 字体 + font_size: float = 40 # 字号 + alpha: float = 0.8 # 透明度 + fly_time: float = 5 # 滚动弹幕持续时间 + static_time: float = 10 # 静态弹幕持续时间 + + @dataclass class Config(DataClassJsonMixin): dataclass_json_config = {"undefined": Undefined.EXCLUDE} @@ -18,6 +29,7 @@ class Config(DataClassJsonMixin): ac_time_value: str = "" interval: int = 20 path_mapper: dict[int, str] = field(default_factory=dict) + subtitle: SubtitleConfig = field(default_factory=SubtitleConfig) def validate(self) -> Self: """所有值必须被设置"""