Skip to main content
rob day
Community Expert
October 5, 2020
Answered

InDesign layers to Photoshop JS Version

  • October 5, 2020
  • 7 replies
  • 5802 views

If anyone is interested in a Javascipt version of my InDesign to Photoshop Layers AppleScript, I’ve converted it to JS via BridgeTalk and the current version is here:

 

https://www.dropbox.com/scl/fo/fgl2b67v7iuyu701twgc9/h?rlkey=gygixac74tr4mp9l87oa2l1a9&dl=0

 

 

Click the Download link, save to your InDesign Scripts folder, where you can run it from the Scripts panel. I also included a layered test ID file.

 

I have tested on OSX High Sierra with CC2020, and it seems to work fine, but would welcome feedback if there are any problems.

 

The original forum thread from 2015:

 

https://community.adobe.com/t5/indesign/how-to-export-indesign-layers-to-photoshop-layers-same-structure/m-p/1983283?page=2#M2790

 

https://shared-assets.adobe.com/link/5aa6cfc2-d1bf-47e1-6b6b-70aec58f38b5

https://shared-assets.adobe.com/link/5aa6cfc2-d1bf-47e1-6b6b-70aec58f38b5

 

 

Correct answer rob day

Hi Uwe, The JS vesion is storing the exported layers in the OS’s temp folder. I can see that it is working on OSX, but don’t have a Windows machine to test on. If you get a chance could you try it on Windows. Thanks.

7 replies

New Participant
January 11, 2022

Thank you so much for the script Rob!  I downloaded this version "ExportLayersToPSv4" and it works geat on my PC with InDesign 2022.  I tried few other scripts before I found yours, non of them work.

rob day
rob dayAuthor
Community Expert
January 31, 2022
Participating Frequently
March 29, 2024
quote

 

 

https://shared-assets.adobe.com/link/11873033-f682-4425-68bd-239afeda1e0f

 


By @rob day

 

Error 404: Asset not found
This asset isn’t available. Try checking the URL or visit a different page

 

is there a newer/working version that will work w/ id2022, 17.4.1 on sonoma 14.4.1 mac os intel  please ?

i can't believe indesign does not have this export layers built in to scripts or capabilities!

 

Community Expert
October 9, 2020

Hi Rob,

just did a quick test with your version 3 script, ExportLayersToPSv3.jsx, that I executed from the User folder of my Scripts panel in my German InDesign 2020 on Windows 10. Did not change the default values the script's UI offered.

 

All was working as expected:

 

PhotoShop started.

Four files were written to the temp folder with suffix ai.

Four named layers plus a background layer were created in a new PhotoShop file.

The suggested name of the not saved PhotoShop file is exactly the one from the InDesign document without suffix.

The names of the four layers are exactly the names of the layers of the InDesign document.

The stacking order of the layers is the same in both documents.

All the named layers in PhotoShop contain one smart object each.

The size of the PhotoShop file corresponds with the one of the InDesign page: 612 x 792 Pt.

 

Will test with my own stuff later…

 

Thanks,
Uwe Laubender

( ACP )

rob day
rob dayAuthor
Community Expert
October 9, 2020

Thanks Uwe, I think it was the way I had set up the dialog results—seems to be better now.

 

rob day
rob dayAuthor
Community Expert
October 8, 2020

Latest is ExportLayersToPSv3.jsx

rob day
rob dayAuthor
Community Expert
October 8, 2020

Hi Uwe, thanks for testing. I did discover a bug this morning that might be related. I was trying to store the dialog results in an object, which threw an error when I cancelled.

 

I posted an update in the same folder. The new code moves the rgbProf variable into the function with Bridgetalk, so it might help with the error you were getting.

 

https://shared-assets.adobe.com/link/5aa6cfc2-d1bf-47e1-6b6b-70aec58f38b5

 

Also, the .ai extension is intentional. When the PS layers are smart objects, double clicking to edit will open the layer in Illustrator.

 

 

schroef
Inspiring
January 23, 2024

Thats pretty clever storing the PDF as a AI while its actually a PDF with ai editablity

Community Expert
October 6, 2020

Hi Rob,

will test and debug your code the next days. A first try, just running your script on your provided INDD document, failed.

This is the core error message where I translated the German parts:

 

/*
JavaScript Error!
Error number: 2
Error message: rgbProf is undefined
Line: 189
*/

 

 

An "Adobe Illustrator" file, I know it's a PDF with ai suffix, was showing up in a temp folder in my user folder under:

 

Did not look much into the code, so I have no clue what exactly went wrong.Your test document was left in the following state after I answered the error message:

 

 

First hint:

 

var rgbProf = doc.rgbProfile; // returns "sRGB IEC61966-2.1"

 

 

So that should work. But obviously bt.body in line 189 does not work as expected. Hm. Maybe it's the target declaration two lines before? I cannot see that PhotoShop is starting up. Maybe the string "photoshop" is not enough. Have to run BridgeTalk Diagnostics to get a reliable string first.

 

Will be back tomorrow.

 

Regards,
Uwe Laubender

( ACP )

Community Expert
October 6, 2020

Thank you very much, Rob!

 

Regards,
Uwe Laubender

( ACP )

rob day
rob dayAuthorCorrect answer
Community Expert
October 6, 2020

Hi Uwe, The JS vesion is storing the exported layers in the OS’s temp folder. I can see that it is working on OSX, but don’t have a Windows machine to test on. If you get a chance could you try it on Windows. Thanks.

Dave Creamer of IDEAS
Community Expert
October 5, 2020

Thanks, Rob!

David Creamer: Community Expert (ACI and ACE 1995-2023)