Script - Custom layout
Sample custom layout. This script can put many short pages onto one long paper.
local doc=window.GetDocument();
local count=doc.numpages;
local i;
for(i=0;i<count;i++)
{
local page=doc.GetPage(i);
local r= page.AutoCrop();
if(r)
page.SetCrop(r);
}
layout.Clear();
local paper;
local rest=0.0;
local y=0;
local delta=0.5;
for(i=0;i<count;i++)
{
local page=doc.GetPage(i);
local p1 = page.GetAreaSize();
p1.y+=delta;
if(p1.y>rest){
paper=layout.NewSheet();
y=0;
rest=paper.GetArea().Height();
//print("New Sheet:"+rest+"\n");
}
rest-=p1.y;
//print("Page:"+p1.y+" ,remaining:" +rest+"\n");
paper.InsertPage(page);
paper.SetPagePos(page,Point(0,y));
paper.SetPageScale(page,1.0);
y+=p1.y;
}
See Results:

