Print Layouts from gh?

I have seen some posts on this, but not a lot of solutions. I am generating some layouts with Document User Text that I need to print from Grasshopper. Is there no “out of the box” solution for this? Ideally, it would:

  • allow file path & filename input (instead of standard print window)
  • allow multiple layouts to be exported at once, perhaps as a single PDF, but multiple is fine.
  • MUST be rasterized, since my layout uses some images.

Thanks in advance for any replies - I’m up against a deadline on this one.


Hi @declan,

For starters, the Print command is scriptable. How far does this get you?

– Dale

i have made some components to help with this. I’ve never needed rasterized output but i’m sure that’s not too hard to add

I’ve consolidated some updates here which are an improvement. it’s still needlessly complex, but hope it helps you. I’ve been using this system to procedurally create a series of data derived drawings to aid engineers designing infrastructure. The python components have tooltip help so please refer to that.

So far this can:

  • create layouts and update them
  • add details to layouts
  • print layouts
  • list existing layouts
  • delete list of layouts (if you make a mistake it’s a pain to manually delete more than several layouts!)

There are a bunch of settings for details scale, and display mode and raster vs vector, which will sometimes not work. Views are currently only possible create plan (no perspective views etc) (33.4 KB)


This is great - thanks @dharman !

1 Like

Hi @dharman , thanks for sharing this. What is your recommended suggestion to set a dpi of the printed layouts? I want to include an option to switch between high and lowres pdfs (in Raster mode)

PS: notice a small bug. If you have 2 pages and want to save one page as ‘vector’ and the other as ‘raster’, it saves the same file twice, once with both pages as vector and the overwrites the file with pages in ‘raster’ mode.

I’m glad you’ve found some use for this, however Im not going to have a chance to revisit it for some time. I’d suggest having a look at the python code in the nodes by double clicking on the middle of the node. There will be something called dpi or resolution somewhere. I can’t remember how it works. You can create a new input on the node to expose the value. I believe it is hardcoded somewhere.

As for mixing vector and raster in the same output I’ve never needed this functionality so I’d consider it a feature request rather than a bug. It will need some additional code to allow a list of inputs

Thx, found it, easy adjustment.

I’ll see if I can resolve that minor vector/raster issue, and post the solution here in case someone might find it useful