structurizr-python icon indicating copy to clipboard operation
structurizr-python copied to clipboard

Autolayout doesn't support resizePaper and margin

Open WLun001 opened this issue 3 years ago • 1 comments

Checklist

Is your feature related to a problem? Please describe it.

Currently auto layout can be set with the following code:

workspace.views.automatic_layout = AutomaticLayout(
            rank_direction=RankDIrection.TopBottom,
            rank_separation=300,
            edge_separation=10,
            node_separation=300,
            vertices=False
        )

but it only support the following parameters

rank_direction
rank_separation
node_separation
edge_separation
vertices

https://github.com/Midnighter/structurizr-python/blob/ab5adc94c188c8e4bbd05d064fce4603a22e8255/src/structurizr/view/automatic_layout.py#L32-L36

But structurizr.com supports more than that. For example resize paper

https://graphviz.structurizr.com/?view=id&resizePaper=true&rankDirection=TB&rankSeparation=300&nodeSeparation=300&margin=400

Describe the solution you would like.

To add resizePaper and margin params support to AutomaticLayout class

Describe alternatives you considered

Manually auto layout on structurizr.com

Additional context

WLun001 avatar Dec 28 '21 07:12 WLun001

Hi @WLun001,

Thanks for the report. That seems a fairly easy addition but I'm currently wrapped up in other work. Would you be able to add these parameters?

Midnighter avatar Jan 08 '22 13:01 Midnighter