Skip to main content
Known Participant
November 19, 2020
Question

Empty layer

  • November 19, 2020
  • 3 replies
  • 533 views

Hello.

 

Is there a way to delete all empty layers on adobe animate?

 

Thanks

    This topic is closed to new replies. Start a new post to keep the conversation going.

    3 replies

    JoãoCésar17023019
    Community Expert
    Community Expert
    November 19, 2020

    Hi.

     

    This script should be able to remove all layers in a document.

     

    WARNING:

    Please save your document first and also make a backup of it in case of an unwanted result or errors.

     

     

     

    var dom, libray, items, layersCount, deleted;
    var symbols = ["button", "graphic", "movie clip"];
    
    function main()
    {
    	dom = fl.getDocumentDOM();
    	
    	if (!dom)
    	{
    		alert("Please open up a document first.");
    		return;
    	}
    	
    	var i, total;
    	
    	library = dom.library;
    	items = library.items;
    	layersCount = 0;
    	deleted = 0;
    	searchLibrary();
    	
    	for (i = 0, total = dom.timelines.length; i < total; i++)
    		searchTimeline(dom.timelines[i]);
    	
    	alert(deleted + " layers of " + layersCount + " have been deleted");
    }
    
    function searchLibrary()
    {
    	var i, total, item;
    	
    	for (i = 0, total = items.length; i < total; i++)
    	{
    		item = items[i];
    		
    		if (symbols.indexOf(item.itemType) > -1)
    			searchTimeline(item.timeline);
    	}
    }
    
    function searchTimeline(timeline)
    {
    	var layers = timeline.layers.reverse();
    	var count = 0;
    	var i, total, layer;
    	
    	for (i = 0, total = layers.length; i < total; i++)
    	{
    		layer = layers[i];
    		layersCount++;
    		count++;
    		
    		if (layer.layerType !== "folder")
    		{		
    			var isEmpty = layer.frames.every(function(frame)
    			{
    				return frame.isEmpty;
    			});
    			
    			if (isEmpty)
    			{
    				timeline.deleteLayer(total - count);
    				deleted++;
    			}			
    		}
    	}
    }
    
    main();

     

     

     

     

    Usage:

    1 - Just copy and paste it in a text editor and save it with a .jsfl extension or just grab it from the link below.

    2 - Double-click the JSFL file or drag and drop it over Animate or go to Commands... > Run Command...

     

    File / source / JSFl download:

    https://bit.ly/2IQaYIw

     

    I hope it helps.

     

    Regards,

    JC

    Known Participant
    November 20, 2020

    Thanks!

    JoãoCésar17023019
    Community Expert
    Community Expert
    November 20, 2020

    You're welcome!