Batch PDF with multiple sheet sizes


An easier way is to make this python code:

import clr
from Autodesk.DesignScript.Geometry import *

import RevitServices
from RevitServices.Persistence import DocumentManager

doc = > DocumentManager.Instance.CurrentDBDocument

#The inputs to this node will be stored as a list in the IN variables.
dataEnteringNode = IN

ids = doc.GetPrintSettingIds()

#Assign your output to the OUT variable.
OUT = ids

This will get all printsettings from your project.

you can also do it like this: but that is not the point. how do you determine which printsetting must be used on which sheet?


First u get the printsettings from project:

Get the sheets from project u want to print (i use DataShapes in this case to print only 2 sheets):

Get Titleblocks and check if they match with the sheets u want to print (type name of the sheet must match with printsetting name).

Hope u can work it out (hard to explain).

I quess both our methods work.

1 Like

Hello Tim and thanks for your reply.

I have now split them into two graphs and have isolated the issue with my graph. On the “Rename PDF’s Node” I seem to get an error message saying.

Traceback (most recent call last):
File “”, line 27, in
WindowsError: [Errno 17] [Errno 183] Cannot create a file when that file already exists.

I saw another post here Printing and renaming PDF from Dynamo saying I can replace that node with another one. But ideally I would like to continue using thus Archi-lab node, as I understand it’s workings a lot more.

Thank you for reading, Jack.

renaming sheets.dyn (16.5 KB)

The Archilab rename node never worked for me either, I use the one by DanEDU.


any chance you could share the successful graph.

1 Like

Hi Everybody, does this result in one pdf with multiple pages? Or one pdf per sheet?
Can anyone clarify?


It’s one pdf per sheet.

Thank you, this is what I was thinking after reading through the posts…
I am looking for a solution which allows for mulitipage pdfs so detail, section and level marks link to the relevant page in the pdf. Is there anything like this already out there?

Can you please share your last iteration for the graph?

Hi @Pedro_Gordinho,

I revised the “Print PDF” node to work with a list of PDF names and various sizes of paper.
I also added in the package “GeniusLoci” a node to merge a list of pdfs.

You can watch this subject :


Thanks to all posts online and especially in this forum i’ve got my batchplot up and running.
But… it only runs when i manually select the printsetting for each different papersize.
The goal is to build this so my co-workers do not need to set this up each time they intend to plot to pdf.
How can i set the value of the Print Settings to a static value. So he will scan the revitfile for present papersizes and print only them ofcourse. Somehow i need to get the id of the printsetting in the Print PDF node…
Can anybody help solve this?
SWBE_Batchprint_03.dyn (155.6 KB)

Hi @raf.mordantX9DQ7,

First, are you aware that original “Print PDF” node from archilab doesn’t accept a list of printsettings ?
You can use the node from the package Genius Loci instead.

I think you can automate more your workflow without append each printsetting.
The workflow that I use needs same names for printsettings and titleblocks so there is a little constraint. It’s probably also possible to use a keyword to match titleblocks/sheets and printsettings.
I use one possible method with nodes to determine equality but it will also work with “IndexOf” and GetItemAtIndex.

Hi All

Apologies for not replying sooner. I’ve uploaded the dynamo file that I’ve done for our office (with @timhevel help).

The graph searches for the first three characters of the titleblock name and assigns them a print setting i.e if our sheet is a3 landscape our titleblock name starts with A3L. You then manually assign the print settings to that titleblock.

Hopefully this will help you out.
Automated PDF & Renaming (Multiple Sheet Sizes - TitleBlock - Resi)-Trial.dyn (77.1 KB)



1 Like

Hello to everybody!

@jksmith1992 I’ve tried to run your dynamo script and I’ve run one some problems. I have followed your instructions. You have used custom node for print settings? I don’t know if you have created your own or used from online package, so I’ve replaced it with print settings node from archi-lab package and it didn’t work as expected. Is there something different in your node from archilab node? Archilab node list printer settings but it doesn’t list sheets in view set (see picture).


Can you help me with this?




Hi @d.svigir

The Print settings node within mine is a custom node (based on advice from others) to get the first three characters of the titleblock name to compare them with my print settings names. Hopefully that makes sense. Below is a screenshot of the node.



Hi @jksmith1992

thanks a lot for the script. We are trying to use it in our environment and the only thing we are stuck with is that the PRINT TO PDF (CUSTOM NODE) has a warning:

Thank you in advance

try also to see these nodes made for printing…

including the latest updates for printing

Hi @jksmith1992

I know this is an old topic, but I have an error at the “PRINT TO PDF (CUSTOM NODE)”
Can you help me to solve this error?