InDesign: Copy an entire layer from one file to another

Contents
InDesign copy an entire layer

Free eBook: We made a free eBook with tips for optimizing your InDesign files for translation for printing and offline viewing. Download it here.

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

Copy Indesign Layer - Layers

If, like me, you wanted to achieve something like this without using a script, you might have followed these steps:

  1. Open the two InDesign documents.
  2. Make sure that the layers of both documents were clean.
  3. Create a layer in the main document with the same name of the layer you want to paste.
  4. Check the Paste Remembers Layers function in the layer window.
Copy Indesign Layer - Paste in Remembers Layers
  1. Copy and paste each page from one document to the other.

This process is highly time-consuming, but luckily, it can be automated.

{{banner-component}}

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:

  1. Download the script using the form above.
  2. Open Adobe InDesign.
  3. Choose Window > Utilities > Scripts.
Copy Indesign Layer - activate script panel
  1. In the Scripts panel, right click on User and choose Reveal in Finder (Mac) or Reveal in Explorer (PC).
Copy Indesign Layer - Reveal Script folder in Finder
  1. If necessary, decompress the zip folder (the script extension should be either .jsx or .jsxbin).
  2. 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:

  1. In InDesign: open the source and destination files.

Make sure that the two documents have the same number of pages.

  1. 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

  1. Click on layer-cloner.jsx in the Script Panel in InDesign.
  1. Select the layer you want to copy.
Copy Indesign Layer - Select Layer
  1. Select the file you want to copy it into.
Copy Indesign Layer - Select the destination file
  1. Wait for the script to complete the copy (it will take a few seconds).
Copy Indesign Layer - Layer copied

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!

More scripts?

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:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

30 practical tips for InDesign users
Download guide
No email required
Read by more than 10k people

The easiest way to translate your documents. Free for 14 days.