diff --git a/d2graph/d2graph.go b/d2graph/d2graph.go index 7bc38cfa7..7bd59ec6a 100644 --- a/d2graph/d2graph.go +++ b/d2graph/d2graph.go @@ -805,7 +805,9 @@ func (obj *Object) GetDefaultSize(mtexts []*d2target.MText, ruler *textmeasure.R // The rows get padded a little due to header font being larger than row font dims.Height = labelDims.Height * (len(obj.SQLTable.Columns) + 1) - dims.Width = d2target.NamePadding + maxNameWidth + d2target.TypePadding + maxTypeWidth + d2target.TypePadding + constraintWidth + headerWidth := d2target.HeaderPadding + labelDims.Width + d2target.HeaderPadding + rowsWidth := d2target.NamePadding + maxNameWidth + d2target.TypePadding + maxTypeWidth + d2target.TypePadding + constraintWidth + dims.Width = go2.Max(headerWidth, rowsWidth) } return &dims, nil diff --git a/d2renderers/d2svg/table.go b/d2renderers/d2svg/table.go index 9ec48e0a9..46bdef37c 100644 --- a/d2renderers/d2svg/table.go +++ b/d2renderers/d2svg/table.go @@ -19,8 +19,8 @@ func tableHeader(shape d2target.Shape, box *geo.Box, text string, textWidth, tex if text != "" { tl := label.InsideMiddleLeft.GetPointOnBox( box, - 20, - textWidth, + float64(d2target.HeaderPadding), + float64(shape.Width), textHeight, ) diff --git a/d2target/sqltable.go b/d2target/sqltable.go index f19f2a94b..8332a34c8 100644 --- a/d2target/sqltable.go +++ b/d2target/sqltable.go @@ -3,8 +3,9 @@ package d2target import "oss.terrastruct.com/d2/d2renderers/d2fonts" const ( - NamePadding = 10 - TypePadding = 20 + NamePadding = 10 + TypePadding = 20 + HeaderPadding = 20 ) type SQLTable struct {