Add floating canvas panels, theme settings, and SVG line-spacing analysis.

Canvas Studio now uses dockable floating panels, app settings/help navigation, and improved SVG export; the backend adds an SVG line-spacing analysis API with SciPy acceleration and new design templates.
This commit is contained in:
2026-07-13 22:01:01 +08:00
parent d5d8caef2f
commit f8a907e7c5
33 changed files with 4434 additions and 455 deletions
+32
View File
@@ -100,6 +100,38 @@ class Asset(BaseModel):
created_at: datetime
class LineSpacingAnalysisRequest(BaseModel):
percentile: float = Field(default=3, ge=0, le=100)
elementWidth: float = Field(gt=0)
elementHeight: float = Field(gt=0)
sampleStep: float = Field(default=2, gt=0)
class LineSpacingClosestPoints(BaseModel):
ax: float
ay: float
bx: float
by: float
class LineSpacingAnalysisSummary(BaseModel):
percentile: float
spacingPx: float
spacingMm: float
minSpacingPx: float
minSpacingMm: float
sampleStep: float
curveCount: int
segmentCount: int
nearestCount: int
sourceWidth: float
sourceHeight: float
elementWidth: float
elementHeight: float
computedAt: str
closestPoints: LineSpacingClosestPoints | None = None
class DesignTemplate(BaseModel):
template_id: str
name: str