Files
video-flow/docs/07-user/USER-002-贴纸库数据源与授权.md
2026-01-09 14:09:16 +08:00

52 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## 目标
为编辑器内置一个**适合抖音场景**的贴纸库PNG/SVG并保证
- **可商用/可分发**(许可清晰)
- **可本地托管**(不依赖外部 CDN
- **所见即所得**:预览与导出一致(贴纸叠加到成片)
## 推荐贴纸库(抖音场景友好)
### 方案 AMicrosoft Fluent UI Emoji更“抖音感”
- **风格**:高饱和、现代、偏 3D/大图标,适合“强调/氛围/卖点”
- **形态**PNG/SVG仓库提供多种风格/尺寸)
- **适用**:火/赞/心/星星/箭头/提示/表情等常用贴纸
- **风险**:请在引入前再次核对仓库 LICENSE不同仓库/分支可能不同)
### 方案 BTwemoji稳定、覆盖全、但更像“emoji”
- **风格**:标准 emoji
- **形态**PNG/SVG
- **适用**:作为“基础补全库”非常合适
- **风险**通常需要署名CC-BY 类);引入前核对 LICENSE
### 不推荐(默认)
### OpenMoji
- **优点**开源清晰、SVG 质量高
- **缺点**:常见为 CC BY-SA“同协议分享”约束强对商业产品和二次分发不友好
## 贴纸库落地方式(本项目)
本项目支持两类贴纸:
- **内置贴纸**:放在 `assets/stickers_builtin/`,通过 `assets/stickers_builtin/index.json` 声明分类/标签/授权信息。
- **自定义贴纸**:用户上传到 `assets/stickers_custom/`,可直接在 UI 里使用。
后端接口:
- `GET /api/assets/stickers`:返回贴纸列表(合并 builtin + custom
- `POST /api/assets/stickers/upload`:上传 PNG/SVG/WEBP
前端能力:
- 左侧 **“贴纸”** Tab搜索/分类/缩略图;**拖拽到时间轴**生成贴纸片段
- 时间轴新增 **“贴纸”轨道**:贴纸片段可移动/裁剪时长
- 右侧属性:贴纸 **大小/旋转/X/Y**
导出WYSIWYG
- FFmpeg 叠加贴纸:`overlay_multiple_images`
- SVG 会在导出侧被转换为 PNG优先使用 `rsvg-convert`Dockerfile 已加入 `librsvg2-bin`
## 下一步:把“推荐贴纸库”真正导入到 assets需要一次性下载
由于贴纸库体积很大(数千~上万文件),建议用脚本把需要的子集同步到 `assets/stickers_builtin/`
- 先挑“抖音高频类目”:点赞/关注/箭头/爆款/促销/emoji 表情/弹幕气泡
- 再逐步扩展
我建议你确认最终选用的库Fluent vs Twemoji我可以给你一个“按清单下载 + 生成 index.json”的脚本可在服务器执行