Skip to content
Advertisement

How to delete pages based on phrases in PDF using Adobe XI Pro?

This is my first time using Actions in Adobe Pro. I would like to..

  1. Remove all pages in a PDF that contain any of the following strings (Total, Word Document, Excel Spreadsheet) for a PDF in Adobe Pro.
  2. Remove common strings (CSI, Export, Import) from all pages throughout the PDF.

The following code was found online and addresses #1 but extracts pages based on 1 string, I was not able to get it to work and I would also prefer to run through multiple strings and delete the pages.

// Iterates over all pages and find a given string and extracts all

// pages on which that string is found to a new file.



var pageArray = [];



var stringToSearchFor = "Total";



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

// iterate over all words

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

if (this.getPageNthWord(p, n) == stringToSearchFor) {

pageArray.push(p);

break;

}

}

}



if (pageArray.length > 0) {

// extract all pages that contain the string into a new document

var d = app.newDoc(); // this will add a blank page - we need to remove that once we are done

for (var n = 0; n < pageArray.length; n++) {

d.insertPages( {

nPage: d.numPages-1,

cPath: this.path,

nStart: pageArray[n],

nEnd: pageArray[n],

} );

}



  // remove the first page

  d.deletePages(0);



}

Advertisement

Answer

  1. One word and two word phrase options.

one-word:

for (var p=this.numPages-1; p>=0; p--) {  
    if (this.numPages==1) break;  
    for (var n=0; n<this.getPageNumWords(p)-1; n++) {  
        if (this.getPageNthWord(p, n) == "one-word") {  
            this.deletePages(p);  
            break;  
        }  
    }  
}  

two-word:

for (var p=this.numPages-1; p>=0; p--) {  
    if (this.numPages==1) break;  
    for (var n=0; n<this.getPageNumWords(p)-1; n++) {  
        if (this.getPageNthWord(p, n) == "1st-word" && this.getPageNthWord(p, n+1) == "2nd-word") {  
            this.deletePages(p);  
            break;  
        }  
    }  
}  
  1. Within Adobe XI Pro, Tools–> Protection–>Search & Remove Text
User contributions licensed under: CC BY-SA
1 People found this is helpful
Advertisement