fix: 预览标题坐标系与后端 ASS 烧录 1:1 对齐 #1502

Closed
xiaoxia wants to merge 1 commits from fix/preview-coord-system into develop

1 Commits

Author SHA1 Message Date
xiaoxia 1fc62c9476 fix: 预览标题坐标系与后端 ASS 烧录 1:1 对齐
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 21s
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 1m16s
CI/CD Pipeline / Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 2m12s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 2m41s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Successful in 54s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m45s
CI/CD Pipeline / PR Build API Image (pull_request) Has been skipped
AI Code Review / AI Code Review (pull_request) Failing after 3m36s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 1m30s
CI/CD Pipeline / PR Build Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m40s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 1m59s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 32s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 9m24s
CI/CD Pipeline / Integration Tests (pull_request) Has been skipped
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 36s
CI/CD Pipeline / CI Gate (pull_request) Successful in 10s
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
问题:CSS 预览层硬编码 1280x720 坐标系,后端竖屏实际输出 1080x1920,
导致标题位置、字号、边距与最终渲染视频不一致,视觉上出现"标题重叠"。

修复(PreviewVideoPanel.tsx + FrontendPreviewPlayer.tsx):
- 根据 videoRatio 动态选择后端实际分辨率:
  · 9:16 → 1080x1920
  · 16:9 → 1920x1080
  · 1:1 → 1080x1080
- 字号缩放分母从 720 改为实际 PlayResY,不设 96 上限
- 水平边距百分比分母从 1280 改为实际 PlayResX
- 垂直边距(top/bottom)按实际 PlayResY 计算百分比
- 描边宽度、阴影模糊/偏移按容器缩放比例同步放大
- FrontendPreviewPlayer 标题叠加层同时支持半角/和全角/换行
- 移除 paddingLeft/paddingRight hack,改用 left/right 边距(与 ASS MarginL/R 一致)
2026-08-25 21:17:25 +08:00