Skip to main content
Participant
Oct 29, 2020 12:04 PM UTC
Answered

pageHandling fit to page size

I am creating a print button to automatically print a document with mixed pages sizes.

The printer has both Letter and Legal size paper available in different trays.

How can use javascript to fit a page that is 7" x 12" to Legal size paper but a page that is 6 1/2" x 8" to Letter size paper?

 

This topic is closed to new replies. Start a new post to keep the conversation going.
try67
try67Correct answer
Community Expert
Oct 29, 2020 2:27 PM UTC

If I understand the API reference correctly, the setPageSize flag tells Acrobat to select the paper based on the page size. That's not exactly what I need to do.

I need to go page by page and choose what to do based on the actual size in the pdf file...

So page 1 is 8 1/2" x 11" setPageSize flag and print it to Letter.

Page 2 is 6 1/2" x 8" use PageHandling.fit to scale it to Letter.

Page 3 is 8 1/2" x 14" setPageSize flag and print it to Legal.

Page 4 is 10" x 16" - ??? I want this to fit to Legal but I don't know how. If I use PageHandling.fit it scales to Letter


A script can't choose the paper size to print to, unless you have different printers for each size, and then you could specify the printer name in each print command. What you're describing will require a much more complicated script, though.

9 replies

try67
Community Expert
Community Expert
Oct 29, 2020 12:26 PM UTC

Use this code:

var pp = this.getPrintParams();
pp.pageHandling = pp.constants.handling.fit;
this.print(pp);

Translate
Brian5D2CAuthor
Participant
Oct 29, 2020 1:44 PM UTC

Unfortunately, this fits only to the paper in tray 1 of the printer (which is Letter).

I need to fit page by page to the next larger size.

Translate
try67
Community Expert
Community Expert
Oct 29, 2020 2:00 PM UTC

Do you mean that you want to select the printer based on the page size? If so, try this:

 

var pp = this.getPrintParams();
fv = pp.constants.flagValues;
pp.flags = pp.flags | fv.setPageSize;
this.print(pp);

Translate