The Runlist is based on a very simple script language in which with just a few instructions and variables sheets can be created on the basis of tem-­plates, pages placed on these sheets and the values of the variables used can be manipulated.

  • Note: The Runlist contains information and instructions for the imposition pro-­cess in a simple script language.

Name of the runlist

The configuration files file extension has to be ".runlist" and the content has to start with the reserved word "NAME" followed by a <Tab> and a Name. This file is just assigned the name Runlist in UTF-8 code. (As long as only standard letters from A to Z and a to z without umlauts or accents, and numbers and simple signs such as period, comma, hyphen or under-­score are used in names, ASCII corresponds to UTF-8 code. If you wish to use names with umlauts or signs from non-Western languages – such as Russian or Japanese – these will have to be saved in UTF-8. Some text editors – e.g. BBEdit 7 in Mac – offer special save options for this). Under this name the sheet definition can be activated in the Desktop version of pdfToolbox in the "Impose" action dialog.

.runlist configuration

The .runlist file contains the Runlist with the actual imposition script that arranges the pages on sheets that have been taken from the sheet supply. With the help of commands and special counters the actual imposition process can be controlled within such an imposition script. The commands and counters available are explained below. The file hat to start with the reserved word "NAME" followed by a <Tab> and a Name. This is the name of the configuration as it will show up using the runlist pulldown menu of the imposition action in pdfToolbox.

Counters available in the run list

Page counters are needed when placing pages of the original PDF file onto the imposition sheet.


At the beginning of the imposition process this is set to 1 (as the first page in the source document is always specified as 1).


At the start of the imposition process this is set to the number of pages in the source document. However, at the same time the parameter TotalPagesMultipleOf in the settings file SheetConfig.dat is taken into consideration and the value for the number of pages in the source document is rounded up to the next value that can be evenly divided by TotalPagesMultipleOf.

Without considering TotalPagesMultipleOf, in a 29-page document LastPage would have a value of 29. If the entry TotalPagesMultipleOf is set to 4, 29 will be rounded up to the next value dividable by 4 so that LastPage would have the value 32.


At the beginning of the imposition process this is set to (LastPage / 2) +1

In the case of a 16-page document MidPage would have a value of 9 at the outset of the imposition process (LastPage would then be 16, as long as TotalPagesMultipleOf were not applied; 16 divided by 2 equals 8, plus one equals 9).

Runlist commands

With the following commands you can insert a new sheet, place a page on a sheet or manipulate one of the counter variables.

New Sheet

NewSheet <Sheet number> 

The parameter NewSheet inserts the next template page from the tem-­plate file as a new sheet. If a template consists of multiple sheets, the sheets will be used in sequence. If there are no more sheets, the first sheet will be used again. The optional parameter <Sheet number> allows to use a specific sheet from the template.

Position Page

PositionPage <COUNTER> Slot_##: 
PositionPage FirstPage Slot_1 

This places the <COUNTER> page from the source document in the slot with the ID Slot_## and the current template.


must be one of the variables FirstPage, MidPage or LastPage


## is the number of the Slot, as defined in the template configura-­tion

  • Note: Before calling up PositionPage for the first time, the      command NewSheet must have been called up at least once.


Increment <COUNTER> 
Increment FirstPage 

The counter <COUNTER> counts upwards by one; the counter then points to the next page in the source document.


must be one of the values FirstPage, MidPage or LastPage


Decrement <COUNTER> 
Decrement LastPage 

The counter <COUNTER> counts downwards by one; the counter then points to the previous page in the source document.


must be one of the variables FirstPage, MidPage or LastPage

Append Pages

AppendPages <LastPage> 

This fills the file to be imposed with pages up to the page count defined by LastPage. For this, the page geometry of the last page present in the original file is replicated.

  • Note: This command should be executed early, best before      calling the position-­ing of pages.

Destination Sheets

DestSheetsMultipleOf <Number (default: 1)> 
DestFillupSheet <Number (default: 1)> 

The imposed file will be filled up with empty pages from the sheet tem-­plate (page DestFillupSheet) to the next page count divisible by the number defined in DestSheetsMultipleOf.

Place text


Set TextFont <FONT> 
Set TextFont "AmericanTypewriter" 

Sets the font to be used for PlaceText. The default value is "Arial".

You can use each value from the list of known fonts, which will be created automatically when going to the action "Impose" in the Desktop version of callas pdfToolbox (section "Arrange"). You will then find the file "FontNames.txt" in the folder "Actions/Impose/Run-­lists" inside your pdfToolbox user preferences.

Using the CLI, the command --listfonts will list all font names available for impositioning.


Set TextSize <SIZE> 
Set TextSize "12pt" 

Sets the text size to be used for PlaceText. The default value is "10pt".


Set TextColorSpace <Color space> 
  • Note: Color space can be any of: DeviceGray, DeviceRGB, DeviceCMYK or a Spot color name.

By default the text is using Separation color "All", also known as Regis-­tration color. This parameter allows to define a specific color space to be used for the text element to be placed. Defining this parameters requires to also define the parameter TextColorValues.


Set TextColorValues <Color value> 
Set TextColorValues "100/100/0/0" 

This parameter defines the color values to be used based on the color space defined by TextColorSpace. The values have to be formatted in such a way that they represent the color tints of the color channels avail-­able in the defined color space. The values have to be defined in a range from 0 to 100.

  • For DeviceGray the values has to be the <Gray> tint in %
  • For DeviceRGB the values have to be <Red>/<Green>/<Blue> in %
  • For DeviceCMYK the values have to be <Cyan>/<Magenta>/<Yellow>/<Black> in %
  • For <Spot Color> the values have to be either <Red>/<Green>/<Blue> or      <Cyan>/<Magenta>/<Yellow>/<Black> in % and represent the alternate color space definition


Set TextTintValue <Spot color tint value> 
Set TextTintValue "50" 

If using a spot color, this parameters allow to define the used tint value of the spot color.


PlaceText <SLOT> <TEXT> 
PlaceText Slot_3 "callas" 

PlaceText uses the currently set values for TextFont and TextSize – if these are not defined, "Arial" and "10pt" will be used by default.

  • Note: Only characters contained in WinAnsi or MacRoman encoding (by usage of the system's fonts) are supported at the moment. Therefore the text may only consist of characters that are present in the by font set by TextFont.


BoxOrder <BOX NAME> 
BoxOrder CropBox<Tab>TrimBox 

This parameter defines which PageBox is used for positioning pages dur-­ing imposition. A list of box names, tabulator-key separated is possible.

Allowed values are: ArtBox, BleedBox, TrimBox, CropBox, MediaBox

Shingling Offset

Shingling Offset defines the distance a folded paper using saddle stitch binding moves, depending on its thickness. A positive value moves the outmost page pair away from the binding. A negative value trims the innermost page pair. The default value is 0,00 mm for no binding moves.

If-else condition

This allows to process runlist functions and commands depending on spe-­cific conditions.

If <boolean condition> <processing steps> Else <processing steps> EndIf 


If VAR("FirstPage") > 1 PlaceText Slot_102 VAR("FirstPage") EndIf 

Working through the script to be imposed

The Runlist is gone through from start to finish, step by step, repeating as often as necessary, until the condition

FirstPage > LastPage 

is met. This means that the Runlist must be set up in such a way that this condition is only met once all the pages have been imposed.

If the Runlist has been worked through to the end but the break condition has not yet been met, the process will start all over again.

If the break condition is met before the Runlist reaches the end, the way the Runlist process terminates is defined by the RunListTerminationMode parameter.

RunListTerminationMode defines the behaviour when FirstPage gets larger than LastPage. Allowed values are 1 and 2, the default is 1.

  • 1 The loop stops. If the sheet is not completely imposed, it is discarded.
  • 2 If the loop stops (FirstPage > LastPage), the currently imposed sheet is stored even if not all slots are filled.


Send Your Comment

E-Mail me when someone replies to this comment