Instant Printing From a JavaScript PopUpMenu

The following JavaScript code can be added to a button, bookmark or even link. When the user activates the button/bookmark/link a popup menu will be displayed on screen listing the page numbers (in page blocks of 20). If the user selects a page number that page will be silently printed to the default printer, no dialog boxes will be displayed.

  • Download JavaScript (1.9 K)


// Create an Array to store the Popup menu items
var popupArray = new Array();

// How many pages are in the PDF file.
var numPDFPages = this.numPages;

// ArrayIndex is used to count the number of items in the array
var arrayIndex = 0;
var pageLoop;
var pageLoop2;

// Fill the array with Menu Headers:
// (['Page 1- 20','Page 1','Page 2....'],['Page 21 - 40','Page
21','Page 22...'],)
for (pageLoop = 1; pageLoop < numPDFPages; pageLoop += 20)
{

popupArray[arrayIndex] = '['Page ' + pageLoop + ' - ' +
(pageLoop + 19);

for (j = pageLoop; j < pageLoop + 20; j++)
{
popupArray[arrayIndex] += '','' + j;
}

popupArray[arrayIndex] += ''],';
arrayIndex = arrayIndex + 1;
}

var completeString = '';
// Create one long string with all of the array elements
for (pageLoop = 0; pageLoop < arrayIndex; pageLoop++)
{
completeString += popupArray[pageLoop];
}

// Capture the selected item
var returnValue = eval('app.popUpMenu(' + completeString +
''Print Window')');

// Process the return value
if (returnValue == 'Print Window')
{
// Show Print Dialog Only
this.print(true,1,1,false);
}
else if (returnValue == null)
{
//You either selected nothing, or your using Acrobat 4.0
}
else
{

You May Also Like

About the Author: Dave Wraight

Leave a Reply