Skip to main content
scotts55494258
Participant
March 10, 2016
Question

JS to Extract Multiple Pages and Name as Page Label

  • March 10, 2016
  • 2 replies
  • 10320 views

Good Morning! We have a group of employees that often taken a PDF that contains multiple pages (in the range of 200-500 pages) and extract them out into separate PDF's to load into a system. Often times, these large PDF's that they begin with hold page labels for each and every page, but when extracting, they lose these page labels and the individual files are named differently. What we're aiming to do is have a javascript that they can run to extract all pages out of a multi-paged PDF and in that process, it name the individual PDF files the same name as their page label.

I believe the two functions that we're dealing with are Doc.getPageLabel() and Doc.extractPages() but we're unsure as to how to tie this into a javascript that will do what we need it to do. Unfortunately, none of us have any experience with JS. I appreciate any and every ones help! Thank you!

2 replies

JR Boulay
Community Expert
Community Expert
April 1, 2025

[MOVED TO THE ACROBAT DISCUSSIONS]

Acrobate du PDF, InDesigner et Photoshopographe
try67
Community Expert
Community Expert
March 10, 2016

From what context do you want to use this script? From a menu item? An Action? The JS Console?

Basically you have it right. The only thing missing is a loop that iterates over all the pages, extracting each one using its label.

The basic code would be something like this:

for (var p=0; p<this.numPages; p++) {

    this.extractPages(p, p, this.path.replace(this.documentFileName, this.getPageLabel(p) + ".pdf"));

}

Known Participant
May 20, 2024

Wow, that is what i was looking for.

Can you write it in this way please:
filename.pdf to become filename___pagelabel.pdf

Thank you so much.

Inspiring
April 10, 2025

No, quite different things. But if the bookmarks always have the same name and point to the same pages, then why do you need to use them anyway? Or is that not the case? If not, this will require a more complex script, especially since they are not top-level bookmarks.


Okay, thanks. Bad luck, so be it.
In that case I need to manually go thru close to 400 pdfs - select all pages (52) - deselect page 4 and 5 - delete - save
Thanks again.