Delete pages or Extract pages from an Indesign document
I need to delete pages from a 40 page Indesign document (i.e. pages 2-13, 15-26, 28-39)
I'm not sure if it can be done but would like to know for sure.
If it's easier to extract the pages required into a new document I'm happy with that option too.
I've used this script but it only does 1 range (2-13) as far as I can see.
Any help would be greatly appreciated.
if (app.documents.length == 0){
alert("There is no document open to delete pages.");
exit();
}
var remove_pages = menu();
if (remove_pages.show()) {
number_pages = pages.editContents;
try {
remove_override();
pages_remove();
} catch (e) {}
}
//functions
//--------------------------------------------------------------------
function menu(){
var dialoog_venster = app.dialogs.add({name:"Delete pages", canCancel:true} );
with (dialoog_venster){
with (dialogColumns.add() ){
with (dialogRows.add() ){
with (dialogRows.add() ){
staticTexts.add({staticLabel:"Pagerange you want to delete: "} );
}
}
with (dialogRows.add() ){
with (dialogColumns.add() ){
with (dialogRows.add() ){
pages = textEditboxes.add({editContents:"", minWidth:225} ); }
}
}
}
}
return dialoog_venster;
}
function pages_remove() {
range_test = number_pages.indexOf("-");
if (range_test != -1) {
split_range = number_pages.split("-");
start = split_range[0];
end = split_range[1];
number = parseInt(end) - parseInt(start) + 1;
for (i=0; i<number; i++) {
page = parseInt(end) - i;
page = page + "";
app.activeDocument.pages.item(page).remove();
}
} else {
app.activeDocument.pages.item(number_pages).remove();
}
}
function remove_override() {
total_number_pages = app.activeDocument.pages.length;
for (i=1; i<total_number_pages; i++) {
page_items = app.activeDocument.pages.item(i).pageItems;
for (j=page_items.length-1; j>-1; j--) {
if (page_items
if (page_items
page_items
}
}
}
}
}
