If you have ever worked with InDesign documents that needed to be produced in other languages, you are likely to have encountered the need to copy an entire layer from one InDesign document to another.
The reasons might be many. Printing needs, organization, ease of future updates of the document, etc.
Unfortunately, InDesign does not have a functionality that copies an entire layer from one document to another. Having worked on countless InDesign documents that needed the following structure made the process very time consuming:
- Layer 4 - Target language 2
- Layer 3 - Target language 1
- Layer 2 - Base language
- Layer 1 - Graphic
The “handmade” way
If, like me, you wanted to achieve something like this without using a script, you might have followed these steps:
- Open the two InDesign documents.
- Make sure that the layers of both documents were clean.
- Create a layer in the main document with the same name of the layer you want to paste.
- Check the Paste Remembers Layers function in the layer window.
- Copy and paste each page from one document to the other.
This process is highly time-consuming, but luckily, it can be automated.
The automated way (using a script)
We wrote a quick script that copies an entire layer from every page of one InDesign file to another.
To install the script:
- Download the script using the form above.
- Open Adobe InDesign.
- Choose Window > Utilities > Scripts.
- In the Scripts panel, right click on User and choose Reveal in Finder (Mac) or Reveal in Explorer (PC).
- If necessary, decompress the zip folder (the script extension should be either .jsx or .jsxbin).
- Copy the script files (e.g., “layer-cloner.jsx” and“libs.jsx”) inside the Scripts Panel folder.
The script is now available in the Scripts panel inside InDesign. To execute it, just double click on the script name.
To run the script:
- In InDesign: open the source and destination files.
Make sure that the two documents have the same number of pages.
- Before launching the script, make sure that the source document is the one visible.
Please, make sure that none of the layers in the hosting document has the same name of the layer you are importing
- Click on layer-cloner.jsx in the Script Panel in InDesign.
- Select the layer you want to copy.
- Select the file you want to copy it into.
- Wait for the script to complete the copy (it will take a few seconds).
Please be aware that the script doesn't copy the items in the master spread.
If you have suggestions for improving the script or anything else, please feel free to drop me a line in the comments.
Also, be sure to subscribe to our newsletter to keep up with future posts or major updates of this script. If you liked the post, I'd really appreciate you sharing it!
For more scripts, visit also: 200+ Must-Have InDesign scripts (Free and paid)
The best articles from the blog
Here is a list of the most read articles on our blog:
- 48 InDesign tutorials and InDesign courses to dramatically improve your skills
- 45+ Essential InDesign plugins
- How to create Bullet lists and Numbered Lists in InDesign
- 20 Most Common InDesign mistakes
- InDesign shortcuts (Printable cheat sheet)
- Data Merge InDesign: Quick Tutorial (Updated CC 2020)
- 75 Versatile InDesign templates
- See our blog for more