diff --git a/d2renderers/d2svg/d2svg.go b/d2renderers/d2svg/d2svg.go index 8643768b7..9d2cb1bd1 100644 --- a/d2renderers/d2svg/d2svg.go +++ b/d2renderers/d2svg/d2svg.go @@ -511,10 +511,10 @@ func defineShadowFilter(writer io.Writer) { func render3dRect(targetShape d2target.Shape) string { moveTo := func(p d2target.Point) string { - return fmt.Sprintf("M%d,%d ", p.X+targetShape.Pos.X, p.Y+targetShape.Pos.Y) + return fmt.Sprintf("M%d,%d", p.X+targetShape.Pos.X, p.Y+targetShape.Pos.Y) } lineTo := func(p d2target.Point) string { - return fmt.Sprintf("L%d,%d ", p.X+targetShape.Pos.X, p.Y+targetShape.Pos.Y) + return fmt.Sprintf("L%d,%d", p.X+targetShape.Pos.X, p.Y+targetShape.Pos.Y) } // draw border all in one path to prevent overlapping sections @@ -545,7 +545,7 @@ func render3dRect(targetShape d2target.Shape) string { border.Fill = "none" borderStyle := shapeStyle(border) renderedBorder := fmt.Sprintf(``, - strings.Join(borderSegments, ""), borderStyle) + strings.Join(borderSegments, " "), borderStyle) // create mask from border stroke, to cut away from the shape fills maskID := fmt.Sprintf("border-mask-%v", escapeText(targetShape.ID)) diff --git a/e2etests/testdata/stable/square_3d/dagre/sketch.exp.svg b/e2etests/testdata/stable/square_3d/dagre/sketch.exp.svg index 550462a61..bdec94d45 100644 --- a/e2etests/testdata/stable/square_3d/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/square_3d/dagre/sketch.exp.svg @@ -16,9 +16,9 @@ width="371" height="580" viewBox="-100 -100 371 580"> -rectangle +rectangle -square -rectangle +rectangle -square -cube -cube