cancel
Showing results for 
Search instead for 
Did you mean: 

Collate copies in Adobe Form.

former_member622551
Participant
0 Kudos

Hello,

i'm disigning an Adobe Form. Everything but one requirement is done.

The requirement is about the way of printing.

I think that with an example is better to explain.

Example 1. Only need one copy of formular . The result will be the next.

Page1  Page2  Page3 .....

Example 2. Whe need 2 copies of the formular. The result would be the next.

Page1 Page1 Page2 Page2 Page3 Page3 ......

Example 3. We need N copies of the formular. The result would be the next.

Page1 Page1 Page1(N times)  Page2 Page2 Page2(N times)  Page3 Page3 Page3(N times) ........

Is this possible to manage in the formular?

Thank you very much for your help.

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hello Javier,

I know this has been some time, but I was wondering if you found a solution for this.

If you did, can you please give some pointers?

I have been trying for a week, but no luck.

I am not using interactive forms.

Trying to use for a delivery output. So, Adobe print forms only.

With best regards,

-Ramesh

Former Member
0 Kudos

Hi Javier,

Here is a folder-level function that will print 'iCopies' copies of a document, collated. This can also run from a document-level script, but as you know document-level printing can't be silent so I made it folder-level. Basically it just loops through the document and prints each page, in order, iCopies times. That way the output from the printer is exactly the same as if it were collated.

CollateAndPrint = app.trustedFunction( function(oDoc)

{

var iCopies = 3;

var iPages = oDoc.numPages;

app.beginPriv();

var pp = oDoc.getPrintParams();

pp.NumCopies = iCopies;

pp.interactive = pp.constants.interactionLevel.silent;

for ( var i = 0; i < iPages; i++ )

{

pp.firstPage = i;

pp.lastPage = i;

oDoc.print(pp);

}

app.endPriv();

});

Then from your print button, you simply have to call:

CollateAndPrint(this);

or if it an XFA form, call:

CollateAndPrint(event.target);

Regards,

Ashvin