feat: 新增双图合并模式,支持横排/竖排将两张图合并为一张图

- 后端新增 POST /api/combine 接口(chart1/chart2 + direction/gap/pixelRatio/background)
- 前端新增 🖼️ 双图合并模式:两张图独立配置数据/标题/类型/主题
- 横排(左右等高三张图)或竖排(上下等宽),一键切换实时预览
- 修复 @napi-rs/canvas echarts 渲染需先 toBuffer 再 dispose 的关键问题
- 更新 README/API 文档
This commit is contained in:
2026-08-19 12:15:31 +08:00
parent 3107d56764
commit e62aac539b
6 changed files with 610 additions and 9 deletions
+47
View File
@@ -428,6 +428,53 @@ body {
color: white;
}
/* ===== 双图合并 ===== */
.combine-direction {
display: flex;
gap: 16px;
flex-wrap: wrap;
}
.dir-option {
display: flex;
align-items: center;
gap: 6px;
padding: 8px 12px;
border: 1px solid var(--border);
border-radius: 8px;
background: #f8fafc;
cursor: pointer;
font-size: 0.9rem;
transition: all 0.2s;
}
.dir-option:hover {
border-color: var(--primary);
}
.dir-option:has(input:checked) {
border-color: var(--primary);
background: #eef2ff;
color: var(--primary);
font-weight: 500;
}
.combine-chart-card {
border: 1px solid var(--border);
border-radius: 10px;
padding: 14px;
margin-bottom: 14px;
background: #f8fafc;
}
.combine-chart-card h3 {
font-size: 0.95rem;
margin-bottom: 12px;
padding-bottom: 8px;
border-bottom: 1px dashed var(--border);
color: var(--text);
}
/* ===== 表格预览 ===== */
.table-preview {
width: 100%;