Hi Ben!
Welcome to the forum!
You could set up a rectangle curve (with maybe print width set to “noprint”) as container for your elements to print and then launch a script that takes your rectangle as input (boundingbox?) to set correct sizes to a layout.
You can set up setting by calling -_LayoutProperties …
See this: Printer Settings issues
Some scripting needed.
Feel free to ask for help.
I rarely print…