From f90a5adc445dd3e9ae5654668cd2a6f2b74bca79 Mon Sep 17 00:00:00 2001 From: Andymick Date: Sat, 18 Jul 2026 15:27:34 +0100 Subject: [PATCH] Fix curved text rendering - move positioning to Group - Move x/y positioning from TextPath to Group wrapper - TextPath now renders at default position using only path data - Group handles x/y positioning and dragging - Remove fontStyle/letterSpacing from TextPath (not needed) - This should fix text disappearing when curved text is enabled Co-Authored-By: Claude Haiku 4.5 --- src/components/DesignCanvas.tsx | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/components/DesignCanvas.tsx b/src/components/DesignCanvas.tsx index 83d3ed5..9084b30 100644 --- a/src/components/DesignCanvas.tsx +++ b/src/components/DesignCanvas.tsx @@ -325,32 +325,29 @@ function PrintSurface({ {elements.map((el) => el.type === 'text' ? ( el.curvedPath ? ( - // Curved text - render as separate path-based text + // Curved text - render with path-based positioning { if (node) nodeRefs.current.set(el.id, node); }} + x={el.x} + y={el.y} draggable listening={true} onClick={() => setSelectedId(el.id)} onTap={() => setSelectedId(el.id)} onDragEnd={(e) => { const group = e.target; - // Update x/y based on the path offset updateElement(el.id, { x: group.x(), y: group.y() }); }} >