Hi,
i do removing many pages in indesign with
- use documentPreferences.pagesPerDocument (faster)
- use while or for loop
- close doc without saving, and open again. (in some case)
here is test code, run with old Macbook Air + CS5 + OSX10.7
var pp = function (args) { $.writeln(args);}
var remove_all_pages_use_pref = function (doc) { pp("start deleting (use preferences)"); $.hiresTimer; doc.documentPreferences.pagesPerDocument = 1; pp("end deleting"); pp($.hiresTimer);}
var remove_all_pages_use_loop = function (doc) { var i = doc.pages.length; pp("start deleting (while --)"); $.hiresTimer; while (i--) { if (i==1) {break;} doc.pages[i].remove(); } pp("end deleting"); pp($.hiresTimer);}
function main() { var doc = app.documents.add(); $.hiresTimer; doc.documentPreferences.pagesPerDocument = 5500; pp('# create 5500 pages'); pp($.hiresTimer); var indd = new File("~/Desktop/5500.indd"); doc.save(indd); pp("------------"); remove_all_pages_use_pref(doc); doc.close(SaveOptions.NO); pp("------------"); pp("# try another way"); var doc2 = app.open(indd); remove_all_pages_use_loop(doc2); doc2.close(SaveOptions.NO);}
main();
result
# create 5500 pages 30395026 ------------ start deleting (use preferences) end deleting 28215999 ------------ # try another way start deleting (while --) end deleting 268641063
thanks
mg