Copy link to clipboard
Copied
hi
i have a document that is well over 400 pages and everytime i delete a page; some empty frames appear in the middle of the page.
instead of removing them one by one, ive tried a couple of scripts ive found via google, however they are working too well and removing everything- including coloured frames that i need.
i have no clue how to write scripts so if someone could give me one that would be amazing.
thankyou in advance!
Copy link to clipboard
Copied
Hi @con1499,
What is your definition of an empty frame? And by frame do you mean textframes or retangles, ovals as well?
-Manna
Copy link to clipboard
Copied
Copy link to clipboard
Copied
Try the following code
var pis = app.documents[0].pageItems.everyItem().getElements()
for(var i = 0; i <pis.length; i++){
var pi = pis[i]
if(pi.hasOwnProperty("contents"))
{ if(pi.contents == "" && pi.fillColor.name == "None")
pi.remove()
}
else if(pi.pageItems.length == 0 && pi.fillColor.name == "None")
pi.remove()
}
-Manan
Copy link to clipboard
Copied
Copy link to clipboard
Copied
I am not sure what it is untill I see the document myself. Can you share a sample document? Another question is why do you want to delete these frames, looking at there state it does not seem they would be visibile in a pdf or print output.
-Manan
Copy link to clipboard
Copied
Those are, most likely, either XML markers or easycatalog's some custom tags / markers.
Copy link to clipboard
Copied
Copy link to clipboard
Copied
Copy link to clipboard
Copied
If you work on a PC, you could use my ID-Tasker tool. It's not free, but you can create a Task, that will get a list of objects with properties you need - kind of "preflight" - and then you can have another Task that will remove those objects.
Two separate Tasks, just in case, so you can be sure that you won't remove something important - you can visually inspect pre-selected objects for deletion.
The main advantage of my tool - you don't have to ask anyone to update initial script - you can modify Task(s) at any time, any way you want.
Free version can still be helpful - you can still get list of objects, do this preflight, but you won't be able to remove them in bulk automatically.
And you can do a lot more than this - ID-Tasker can replicate pretty much every mundane click that you can make manually - and not only in InDesign.