From ba8d0afa3c34fd47aaa97dc5146edf27b7af22a8 Mon Sep 17 00:00:00 2001 From: xiaoxia Date: Sat, 15 Aug 2026 17:48:43 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=A2=84=E8=A7=88=E7=94=9F=E6=88=90?= =?UTF-8?q?=E6=A0=87=E9=A2=98=E5=8F=82=E6=95=B0=E6=94=B9=E7=94=A8title=5Fc?= =?UTF-8?q?onfig=E5=AF=B9=E8=B1=A1=E5=8C=B9=E9=85=8D=E5=90=8E=E7=AB=AFSche?= =?UTF-8?q?ma?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - CreatePreviewRequest: 删除8个独立title_*字段,改为title_config对象 - useStep5Preview: generatePreview传参改为title_config嵌套结构 - 字段映射: titleSettings.size → title_config.font_size - 修复标题配置被Pydantic忽略导致预览视频/封面无标题的问题 --- apps/web/src/api/generation/types.ts | 20 +++++++++-------- .../pages/generate/hooks/useStep5Preview.ts | 22 +++++++++++-------- 2 files changed, 24 insertions(+), 18 deletions(-) diff --git a/apps/web/src/api/generation/types.ts b/apps/web/src/api/generation/types.ts index 599174ad6..b110a1f95 100755 --- a/apps/web/src/api/generation/types.ts +++ b/apps/web/src/api/generation/types.ts @@ -13,15 +13,17 @@ export interface CreatePreviewRequest { video_title?: string duration?: number video_ratio?: string - /* 标题烧录参数(可选,传入后 ASS 渲染标题到预览视频中) */ - title_text?: string - title_font?: string - title_size?: number - title_color?: string - title_position?: string - title_bold?: boolean - title_stroke?: boolean - title_shadow?: boolean + /* 标题烧录配置(可选,传入后 ASS 渲染标题到预览视频中) */ + title_config?: { + text?: string + font?: string + font_size?: number + font_color?: string + position?: string + bold?: boolean + stroke?: boolean + shadow?: boolean + } bgm_config?: { enabled: boolean preset_id?: string diff --git a/apps/web/src/pages/generate/hooks/useStep5Preview.ts b/apps/web/src/pages/generate/hooks/useStep5Preview.ts index 460e9d7b1..583e69051 100644 --- a/apps/web/src/pages/generate/hooks/useStep5Preview.ts +++ b/apps/web/src/pages/generate/hooks/useStep5Preview.ts @@ -358,15 +358,19 @@ export function useStep5Preview({ video_ratio: videoRatio, voice_ids: voiceIds && voiceIds.length > 0 ? voiceIds : undefined, voice_library_id: voiceLibraryId || undefined, - // 标题信息 - title_text: titleSettings?.title || undefined, - title_font: titleSettings?.font || undefined, - title_size: titleSettings?.size || undefined, - title_color: titleSettings?.color || undefined, - title_position: titleSettings?.position || undefined, - title_bold: titleSettings?.bold || undefined, - title_stroke: titleSettings?.stroke || undefined, - title_shadow: titleSettings?.shadow || undefined, + // 标题烧录配置 + title_config: titleSettings?.title + ? { + text: titleSettings.title, + font: titleSettings.font, + font_size: titleSettings.size, + font_color: titleSettings.color, + position: titleSettings.position, + bold: titleSettings.bold, + stroke: titleSettings.stroke, + shadow: titleSettings.shadow, + } + : undefined, }) if (startTimeRef.current === 0) return -- 2.54.0