cancel
Showing results for 
Search instead for 
Did you mean: 
ajdxb
New Member
New Member

"Copy n of m" on banner/header pages

I have a requirement to print multiple copies of a large document. I want to put a banner page at the start of each copy, this is easy enough, however, I would really like to print the copy number on each banner page, so "Copy 1 of 35" etc..

I thought of using Insert Job Pages to build up the set and then maybe Page Number with an interval of the number of pages in the file, but it seems I can't use a varaible as the page interval.

Could someone point me in the right direction as to how I might achieve this?

Thanks

0 Kudos
2 Replies
DavidU54339-XRX
FreeFlow Production Workflow Moderator
FreeFlow Production Workflow Moderator

Re: "Copy n of m" on banner/header pages

The ideal solution would be to pass the FFCore variables to the DFE for marking on the banner page -- unfortunately that is not possible.

A (admittedly onerous solution) solution follows:

  1. add a blank page (for the banner) via the Insert node
  2. Duplicate the number of copies required via the Split node
  3. Use the Watermark node and the text content of : Copy $FFwfDoc.documentSequenceNumber$ of
    $FFwfJob.documentGroupCount$
  4. Add a print node to the end of each branch with number of leading banner pages = 1

Unfortunately this leads to many small jobs (not one big job). It is also possible that the jobs would print out of order as one cannot guarantee that the top branch hits the DFE first, the 2nd branch 2nd, etc.

see below:

d1.pngd2.pngd3.png

0 Kudos
StefanT-Xerox
FreeFlow User

Re: "Copy n of m" on banner/header pages

You could try the attached script in an External Process to see if it does what you require. You need Python installed along with reportlab and pikepdf (from cmd as admin run pip install reportlab and pip install pikepdf).

Upload both scripts to the FreeFlow Core scripts folder. Then setup the External Process like this:

Capture.PNG

The script will create a blank page before the first page in the pdf and repeat based on the print quantity. The blank page will print Copy x of n (where x is the copy number and n is the print quantity) using Courier 36 pts at position (200,400) - 1 point =1/72 inch - and its size will be taken from the cropbox of the first page of the submitted pdf. You may want to tweak the settings for this by changing the lines in the Python script:

can.setPageSize((page.cropbox[2],page.cropbox[3]))
can.setFont("Courier", 36)
can.drawString(200, 400, "Copy " + str(i+1) + " of " + sys.argv[3])

Since the pages are repeated based on the print quantity, the script sets the print quantity to 1.

You may also need to change the paths in the batch file to both Python and the FreeFlow Core scripts folder. It also assumes there is a C:\Temp\ folder.

Stefan

0 Kudos