cleanup: 删除Canvas预览代码,简化PreviewVideoPanel #1402

Merged
auto-approve-bot merged 1 commits from cleanup/remove-canvas-preview into develop 2026-08-17 14:16:06 +08:00
Owner

背景

Canvas预览与后端FFmpeg渲染是两套独立逻辑,导致预览和实际效果不一致。删除Canvas预览,统一由后端渲染标题。

删除的文件

文件 行数
TitlePreviewCanvas.tsx 209
drawTitleOnCanvas.ts 175
小计 384

修改的文件

文件 变化
PreviewVideoPanel.tsx 删除所有Canvas叠加逻辑(drawVideoTitle/字体检测/ResizeObserver/canvas元素),从308行→146行
GeneratePage.tsx 删除sourceVideoUrl/useQuery/videoAssets/无用import,删除传给PreviewVideoPanel的4个废弃props

清理项

  • 删除 TitlePreviewCanvas 所有引用
  • 删除 drawTitleOnCanvas / calculateVideoDimensions / wrapText 所有引用
  • 删除 sourceVideoUrl 及其 useQuery 依赖
  • 删除 AssetItem / getAssetsByKind / useQuery 无用 import

验证

  • tsc
  • prettier
  • eslint
  • 无遗留引用

净删除

~595 行(4 files changed, 121 insertions, 716 deletions)

## 背景 Canvas预览与后端FFmpeg渲染是两套独立逻辑,导致预览和实际效果不一致。删除Canvas预览,统一由后端渲染标题。 ## 删除的文件 | 文件 | 行数 | |------|------| | `TitlePreviewCanvas.tsx` | 209 | | `drawTitleOnCanvas.ts` | 175 | | **小计** | **384** | ## 修改的文件 | 文件 | 变化 | |------|------| | `PreviewVideoPanel.tsx` | 删除所有Canvas叠加逻辑(drawVideoTitle/字体检测/ResizeObserver/canvas元素),从308行→146行 | | `GeneratePage.tsx` | 删除sourceVideoUrl/useQuery/videoAssets/无用import,删除传给PreviewVideoPanel的4个废弃props | ## 清理项 - ✅ 删除 `TitlePreviewCanvas` 所有引用 - ✅ 删除 `drawTitleOnCanvas` / `calculateVideoDimensions` / `wrapText` 所有引用 - ✅ 删除 `sourceVideoUrl` 及其 `useQuery` 依赖 - ✅ 删除 `AssetItem` / `getAssetsByKind` / `useQuery` 无用 import ## 验证 - tsc ✅ - prettier ✅ - eslint ✅ - 无遗留引用 ## 净删除 **~595 行**(4 files changed, 121 insertions, 716 deletions)
xiaoxia added the bugfrontend labels 2026-08-17 14:06:34 +08:00
xiaoxia added 1 commit 2026-08-17 14:06:34 +08:00
cleanup: 删除Canvas预览代码,简化PreviewVideoPanel
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
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
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 44s
CI/CD Pipeline / Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / PR Build API Image (pull_request) Has been skipped
CI/CD Pipeline / PR Build Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 1m44s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 1m43s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 1m46s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Successful in 1m8s
AI Code Review / AI Code Review (pull_request) Successful in 2m29s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 2m29s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 2m6s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m0s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 2m29s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 5m34s
CI/CD Pipeline / Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production API 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
CI/CD Pipeline / CI Gate (pull_request) Successful in 5s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 53s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 54s
3802394df4
- 删除 TitlePreviewCanvas.tsx (209行): Canvas实时预览组件
- 删除 drawTitleOnCanvas.ts (175行): Canvas绘制共享函数+calculateVideoDimensions+wrapText
- 简化 PreviewVideoPanel.tsx: 删除所有Canvas叠加逻辑(drawVideoTitle/字体检测/ResizeObserver/canvas元素)
- 清理 GeneratePage.tsx: 删除sourceVideoUrl/useQuery/videoAssets/无用import
- 净删除 ~595 行代码

Canvas预览与后端FFmpeg渲染是两套独立逻辑,已统一由后端渲染标题
Collaborator

代码审查结果 - PR #1402

⚠️ 问题(0个需要修改)

💡 建议(0个可选)


格式检查通过 | 逻辑审查通过 | 性能优化良好


🤖 由 AI 代码审查机器人自动生成 | 2026-08-17 06:09:01 | 模型:

## 代码审查结果 - PR #1402 ### ⚠️ 问题(0个需要修改) 无 ### 💡 建议(0个可选) 无 --- ✅ 格式检查通过 | ✅ 逻辑审查通过 | ✅ 性能优化良好 --- <sub>🤖 由 AI 代码审查机器人自动生成 | 2026-08-17 06:09:01 | 模型: </sub> <!-- AI_CODE_REVIEW_AUTO_COMMENT -->

🚀 预览环境已部署

项目 详情
PR号 #1402
预览链接 https://pr-1402.preview.xiaoxiajianji.com
API环境 staging

💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。

🔄 每次提交新代码后预览环境会自动更新。

🗑️ PR 关闭或合并后,预览环境会自动清理。

🚀 **预览环境已部署** | 项目 | 详情 | |------|------| | PR号 | #1402 | | 预览链接 | [https://pr-1402.preview.xiaoxiajianji.com](https://pr-1402.preview.xiaoxiajianji.com) | | API环境 | staging | > 💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。 > > 🔄 每次提交新代码后预览环境会自动更新。 > > 🗑️ PR 关闭或合并后,预览环境会自动清理。
auto-approve-bot approved these changes 2026-08-17 14:09:34 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
auto-approve-bot approved these changes 2026-08-17 14:09:34 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
auto-approve-bot merged commit e186cb2253 into develop 2026-08-17 14:16:06 +08:00
auto-approve-bot deleted branch cleanup/remove-canvas-preview 2026-08-17 14:16:07 +08:00

🗑️ 预览环境已清理

PR #1402 已关闭或合并,对应的预览环境已被清理。

如有需要,可以重新打开 PR 来重新生成预览环境。

🗑️ **预览环境已清理** PR #1402 已关闭或合并,对应的预览环境已被清理。 > 如有需要,可以重新打开 PR 来重新生成预览环境。
Sign in to join this conversation.